Privacy policy

Finalist — finalist.audio

What we hold

Four sets of records. This is all of them.

1. Your account, your projects and your purchases

You can drop stems, categorise them, mix and listen without an account and without telling us anything. An account is created when you press Download, and not before.

Payment is taken by Lemon Squeezy, who are the seller of record. Your card details go to them and never reach us. We hold the order, not the card.

2. Journey events — how the site gets used

We record what people do on the way through the product, so we can see where it loses them. It is deliberately thin.

These events post to our own domain. No third-party analytics service receives them.

When you create an account, the events from that visit are attached to it, so we can see one complete path from arriving to paying. That is a one-off update over that session's rows and it is the only time these records are ever changed.

3. Categorisation samples — the training set

Finalist has to know which stem is the kick and which is the lead vocal. Today you tell it. We are building something that guesses, and this is the record that makes that possible.

Your stem filenames are stored as part of your own project, so the app can help you find your files again on another machine. They are yours, visible to you, and they are never added to the training set above.

4. The link we email you

Finalist needs a desktop machine. If you open the site on a phone we offer to email you the link, and if you ask for it we keep the address you typed, the time, and whether the message actually sent. We keep it so that we can write to you about Finalist later. Nobody but us can read it, and you can ask us to delete it — the last section says how.

Who else touches any of this

Your audio, and the rights we do not claim

We claim no rights whatsoever over your audio. Not ownership. Not a licence to use it. Not a right to play it, publish it, show it to anyone, or train anything on it. Putting a stem into Finalist changes nothing about who owns it. It is yours before, during and after.

That is an easy promise to make because of how the app is built: your audio never reaches us. Finalist mixes and masters in your browser, on your own machine. Your stems stay on your device. The finished mix is rendered on your device. We hold no copy of either and have no way to obtain one.

What does leave your machine, once you have an account, is the list in the section above: filenames and file properties, the settings you chose, the waveform outline drawn on screen, and the analysis numbers. None of it can be turned back into your recording.

Which means your mixes live only on your machine

This is the part people are surprised by, so it is here in plain words rather than buried in the terms.

Keep your original files.

Every ad platform we transmit to

Two. Naming a category instead of a platform would be a way of not answering, so here they are:

There is no advertising tag in your browser. No Meta Pixel, no Google Tag, no TikTok pixel, nothing equivalent. No third-party script runs on this site at all. When you buy something, our server tells those two platforms that a purchase happened. Your browser tells them nothing.

What we send them, and it is the whole list:

We also send two earlier signals from the same server, about the moment a visitor becomes a user: that stems were dropped, and that an export was attempted. Both carry the same match keys and nothing more.

Click identifiers. If you arrive from an advert, the link carries an identifier — fbclid from Meta, gclid from Google, ttclid from TikTok. We read it out of the address and store it against your session. Reading a parameter out of a URL does not touch your device, which is why this needs no banner. We record TikTok's identifier but we do not currently transmit anything to TikTok. If that changes, this page changes first.

Joint control with Meta. For the conversion data we send to Meta, we and Meta each decide part of what happens to it, so in law we are joint controllers and Meta's controller terms apply to that part. For everything else on this page we act alone.

The lawful basis

Under UK and EU data protection law, everything above needs a reason in law. There are three here.

Why there is no cookie banner

The rule that produces cookie banners is not really about cookies. It is about storing information on your device, or reading information already stored there — which covers local storage, IndexedDB and everything else a browser offers, not just cookies.

Finalist writes a great deal to your device: your stems and your projects live there, because that is where the mixing happens. All of that is storage you asked for by using the app, which is the exemption the rule provides for. That exemption is tied to its purpose and cannot be lent to anything else — so we did the only other thing available. The analytics writes nothing to your device at all. No cookie, no local storage, no session storage, no IndexedDB entry. There is nothing to ask your permission for, so we do not ask.

This is not a claim about intent. An automated check drives the whole anonymous journey through the product on every build and fails it if a cookie appears, if the analytics writes anything to the device, or if any request leaves our own domain. A second check runs the same test with a deliberate fault injected, to prove the first one can still catch it.

If a consent banner is ever added it will be to add something on top of this, not to unlock it, and rejecting will take exactly as few clicks as accepting.

Your rights

You can ask for a copy of what we hold about you, ask us to correct it, ask us to delete it, and object to anything above that runs on legitimate interest — including the advertising measurement. Where we rely on legitimate interest we will stop unless we have a compelling reason not to, and we will tell you which it is. The section below carries the address to write to.

Who we are, how long we keep this, and how to complain

TEXT NOT YET WRITTEN.

Not draftable from this repository, because it is facts rather than prose. Needed: the controller's registered legal name, company number and registered address; an address for data requests and for objections under the section above; the countries the data is stored in and the transfer basis for the advertising data that goes to Meta and Google; and the ICO complaint route. Everything above this section is a first draft by a non-lawyer and needs review before any of it is relied on.

The retention period is DECIDED and is not yet ENFORCED — Tim, 17 Sep 2026, and docs/METRICS-PANEL.md §5. It was the one item on the list above that this repository could answer, so it is answered here and the rest of the list stands.

Analytics without an account — kept indefinitely. The visitor hash is salted with a secret that is deleted the next day, so after twenty-four hours it cannot be linked to an address, a device or any later visit. Analytics attached to an account — the behavioural record is kept indefinitely and the link to the account is removed after 24 months, which is the same thing that happens immediately if an account is deleted.

⚠ NOT YET ENFORCED. The mechanism exists (deattribute_old()) and nothing calls it on a schedule: this project has no cron, the two Edge Functions are webhook receivers, and the admin console is a page somebody opens. Until a schedule exists, the two paragraphs above describe a decision and not a thing that happens — and a privacy notice that asserts a retention period nobody can prove ran is worse than one that says this.