SoundFX · Legal

Privacy Policy

What SoundFX holds about you, where it goes, how long it stays, and — just as important — the things it never collects at all. This policy describes the service as it is actually built, not as a template says a service like this usually works.

What this policy covers

SoundFX is a browser tool for generating sound effects with AI, shaping them with an effect rack, and keeping the ones you want. This policy covers the SoundFX web application and the accounts, credits and saved sounds that go with it.

  • The service is in private preview

    The site currently sits behind an access allow-list: a request from an address that is not on it is answered with a neutral placeholder page instead of the real site. To be exact rather than reassuring — the request does reach our server, which is what reads the address in order to decide; the health-check endpoint is exempt by design so uptime monitors can reach it; and the gate opens for everyone if the allow-list is ever left unset, so the preview is a matter of how the service is configured rather than something the code guarantees. SoundFX is therefore not generally available, and the data described below exists for a small number of invited accounts rather than for a public user base.

  • Who is responsible Pending

    SoundFX is responsible for the data described here. The legal entity that will formally hold that responsibility, and the privacy regimes it will be subject to, are not settled — which is why this page names no regulator and claims compliance with no specific regime. Contact details are at the foot of this page.

What SoundFX holds about you

Grouped by why it exists. Everything in this section is a table or an object store the application actually writes to; nothing is listed speculatively.

  • Your account

    Your email address, normalised to lower case so that one person cannot accidentally register the same address twice in different capitalisations, together with the date the account was created. There is also a flag recording whether the address has been verified; it is always off today, because no verification process exists yet.

  • Your password — as a hash, never as a password

    Your password is never stored. What is stored is a PBKDF2-SHA256 hash of it, with a random salt generated per account, in a credentials record keyed by sign-in method. A hash cannot be turned back into the password it came from, so anyone reading the database — including us — cannot learn what you typed.

  • Your sessions — as a fingerprint, not a key

    When you sign in, the server issues a random token and puts it in a cookie in your browser. What the database stores is the SHA-256 hash of that token, not the token itself, alongside the account it belongs to and when it expires. The distinction matters: someone who obtained a copy of the sessions table would hold nothing they could replay to sign in as you.

  • Your credits

    Your plan, your current balance, and lifetime totals of credits granted and spent — plus a ledger with one entry for every change to that balance, recording the amount, the reason, and the balance the entry produced. The ledger is append-only by design: nothing edits or removes an entry, and a reversal is recorded as a new compensating entry rather than by rewriting the original. That is what makes it a truthful account of what happened to your balance, and it is also why entries persist.

  • Your generation history — including the words you typed

    Each time a generation is performed for you, one row records the prompt text you wrote, the length and prompt-influence settings used, whether a seamless loop was asked for, whether it succeeded, whether it came from the cache, and whether a credit was charged. Read that first item plainly: your prompts are stored, and they are stored as text. What is NOT stored here is audio — this table is metadata only, and the history feature works by re-requesting the original cache entry rather than by keeping a copy of the sound.

  • The sounds you save, and their audio

    Saving a sound stores two things: a record holding the name you gave it and the complete recipe — the generation settings, the effect chain in order, and the trim and fade shaping — and the generated audio itself, as a file in object storage keyed to your account and that sound. Both exist because AI generation is not repeatable: the same prompt returns different audio every time, so a library that kept only the recipe would hand you a different sound on reload. Nothing is saved to your library unless you choose to save it.

  • Generated audio in the shared cache — and who else can reach it

    A successful generation is offered to the hosting provider’s edge cache for up to a day, so that asking for exactly the same sound again returns the existing clip instead of generating — and charging for — a new one. A day is a ceiling rather than a promise: the cache is held per location and evicts on its own schedule, so an entry may be gone well before then. Two things about that cache are worth stating plainly rather than leaving you to assume. Its key is built from the generation parameters themselves, which means the prompt text is part of the key. And the key contains no account identifier, so the cache is shared: if another user submits the same prompt with the same settings, in the same Take slot, while the entry is still live, they are served the clip that was generated for you. Read “the same” loosely, because the code does: prompts are trimmed and capped in length before the key is built, so two prompts differing only in surrounding whitespace, or only beyond the length limit, are the same prompt as far as the cache is concerned. Nothing identifies you to them — they receive audio, not your account — but the audio is not private to you. If you are generating something you would not want another person to receive by typing the same words, that is the behaviour to know about.

  • Your IP address — read, checked, not stored

    Every request carries the address it came from, and the server reads it to decide whether the request is on the preview allow-list. It is held in memory for the duration of that request and is written to no table in the database. Our hosting provider handles the connection itself and has its own visibility of it; see “Who else sees any of this” below.

What SoundFX does not do

This section is here because a privacy policy that only lists what is collected leaves the reader to assume the usual apparatus is present. It is not.

  • No tracking, no analytics, no advertising

    The application loads no third-party scripts, sets no tracking cookie, and runs no measurement or attribution product of any kind. Nothing profiles you, nothing follows you between sites, and nothing about your behaviour is sold, shared or used to target anything at you. One precise caveat, because the sentence above is narrower than it looks: most pages do load a webfont stylesheet from Google, which is a third-party request even though it is not a script. What that request discloses is set out under “Who else sees any of this”. We do not characterise what Google does with it, because that is not ours to state.

  • No payment details, because there are no payments Pending

    No payment provider is connected to this application. It cannot take a card, and it holds no billing details, no card numbers and no purchase records. Credits are currently granted rather than sold. When paid plans arrive this section will have to change, and it should not be assumed to describe that future.

  • No email is sent

    The application has no mail capability at all. It sends no verification message, no password-reset message, no notification and no marketing. Your address is used to identify your account when you sign in, and for nothing else. That also means there is nothing to unsubscribe from — and that if you forget your password, there is currently no automated way to reset it.

  • Nothing is sold or handed on

    Your account, your prompts and your saved sounds are not sold, rented, traded or given to anyone. Three third parties are involved in running the service at all, each receiving only what it needs: two infrastructure providers, and Google, whose font service most pages load a stylesheet from. All three are set out below.

  • Your audio is not used to train anything by us

    SoundFX does not train models, and does not use your prompts or your saved sounds to build or improve one. What our upstream audio provider does with the prompts it receives is governed by its own terms rather than by this policy, and is worth reading there if it matters to you.

Cookies and what your browser keeps

One cookie, and it is the sign-in itself. There is no consent banner on this site because there is nothing optional to consent to.

Who else sees any of this

Three companies. Each is listed with what actually reaches it, rather than with a general statement about service providers.

  • ElevenLabs — the audio model

    Generating a sound sends a request to ElevenLabs from our server, never from your browser, using SoundFX’s own API key. What is sent is exactly this: your prompt text, the model identifier, whether a seamless loop was requested, and — when set — the length and prompt-influence values. That is the whole request. Your account id, your email address and your session are not part of it, and the internal identifiers the application uses to group and cache your generations are deliberately stripped before the call is made. As far as ElevenLabs is concerned, the customer is SoundFX; you have no account with them and are not a party to their consumer terms.

  • Cloudflare — hosting and storage

    The application runs on Cloudflare Workers, its database is Cloudflare D1, its saved audio lives in Cloudflare R2, and generated clips are cached at Cloudflare’s edge — a shared cache, on the terms set out above. Everything described in this policy is therefore stored on Cloudflare’s infrastructure, and Cloudflare handles the network connection between you and the site.

  • Google — webfonts on most pages

    Most pages of this site — the landing page, the pricing page, most of the concept pages, the design variants and every studio variant — ask your browser to fetch a font stylesheet from Google’s font service. That request comes from your browser rather than from our server, so it discloses to Google what any web request discloses: your IP address, your browser’s user-agent string, and where the request came from. On that last point we would rather be exact than flattering: we set no referrer policy, so what gets sent is whatever your browser defaults to, which is its decision and not ours. Current browsers send only this site’s address rather than the particular page you were reading — but that is a property of the browser, not a promise we are in a position to make, and one old enough to predate that default would send the full page address. The request carries no account information and no audio, and it sets no cookie of ours. Whether it can carry a prompt turns on that same browser default, and we would rather spell that out than let the previous sentence stand as a blanket assurance. Three pages — the mixer, the soundboard and the library — deliberately put what you typed into the page address itself, so that a mix, a board or a search can be shared as a link. On a current browser only this site’s address is sent, so that text stays with us. On a browser old enough to send the full address, it would reach Google along with it. We are naming all of this because Google is a third party receiving data about you, which is worth knowing either way. The sign-in pages, your account page, two of the concept pages and every page in this /legal section do not load it at all.

  • How saved audio is served back — and how it differs from generated audio

    A request for one of your saved sounds is refused unless you are signed in as its owner, and the response is marked as private so that no shared cache — including the edge cache in front of the site — may store it and hand it to anyone else. Your own browser may keep a copy, which is what makes replaying a saved sound instant. Read that as a statement about SAVED sounds only. It is deliberately not true of freshly generated audio, which is cached in exactly the shared way described under “Generated audio in the shared cache” above. Saving a sound is what moves it into per-account storage; generating one does not.

How long any of it is kept

  • Sessions expire

    A session lasts 30 days from its last renewal and is invalid after that. Signing out deletes it immediately.

  • Account data stays until the account is deleted

    Your account, credits, generation history and saved sounds are kept for as long as the account exists. There is no automatic expiry on them today.

  • The credit ledger is append-only, on purpose

    Individual ledger entries are not edited or removed in normal operation — that is what makes the balance explicable. They are removed when the account itself is deleted, together with the rest of the database records — though not, as the next item explains, the stored audio.

  • Deleting an account — what goes, and what does not Pending

    Deletion cascades through the database: credentials, sessions, credits, the whole ledger, generation history and saved-sound records all go with the account. The audio files themselves are a different matter, and we would rather state the limitation than let you assume it away. Deleting the database records does NOT delete the stored audio, and nothing sweeps up afterwards — so audio belonging to a deleted account stays in object storage until someone removes it by hand. It is unreachable at that point, because the records that pointed at it are gone, but unreachable is not the same as deleted and we are not going to write it as though it were. If you want the audio itself removed, say so when you write to us and we will do it as part of the same request. Deleting an individual sound from your library, in the app, does remove its audio immediately — that path is complete.

  • Backups and preview data Pending

    How long deleted data may persist in infrastructure-level backups, and whether preview-period data is retained when the service opens to the public, are not yet decided. Rather than state a retention period we have not committed to, this page leaves the question visibly open.

Your choices, and how to exercise them

The honest position: some of this is a button, and some of it is an email, and this section says which is which rather than describing a self-service console that does not exist.

  • What you can do in the app today

    You can see your account and credit balance, rename or delete individual saved sounds from your library, and sign out. Signing out is not merely a matter of clearing the cookie in your browser: the session record is deleted on the server, so the token it held cannot be replayed afterwards even by someone who had copied it.

  • What currently requires an email — including deletion Pending

    There is no self-serve button to delete your account, export your data, or correct your email address. Write to legal@soundfx.app and ask, and we will do it by hand. We would rather tell you that plainly than describe a feature that is not built. Building the self-serve version is intended work, not a promise with a date.

  • Statutory rights Pending

    Depending on where you live you may have rights over your personal data that are granted by law rather than by us. This page does not attempt to enumerate them or to claim compliance with any particular regime, because that assessment has not been done. The request route above is the same either way: write to us, and say what you want.

How this is protected

Measures the application actually implements. No certification, audit or compliance standard is claimed anywhere on this page.

  • What is in place

    Concretely:

    • passwords stored only as a salted PBKDF2-SHA256 hash, never in recoverable form
    • session tokens stored only as a SHA-256 hash, so the stored value cannot be replayed
    • the session cookie marked HttpOnly, Secure and SameSite=Lax
    • traffic served over HTTPS
    • saved audio readable only by the account that owns it, and marked private so that shared caches must not keep it
    • the ElevenLabs API key held as a server-side secret that never reaches your browser
  • What that does and does not mean

    These measures make particular attacks harder; they are not a guarantee, and no one should read them as one. No system is perfectly secure. If you become aware of a vulnerability in SoundFX, the contact address below is the right place to report it.

Children

  • SoundFX is a production tool intended for adults and is not directed to children. It is not knowingly used to collect information from a child. If you believe a child has created an account, write to us and we will remove it.

Changes to this policy

  • This policy will change — most obviously when it is reviewed by a lawyer, when the private preview opens up, and when paid plans introduce a payment provider that today does not exist. The effective date at the top of this page always says which version you are reading. Where a change materially affects what is collected or where it goes, we will make that visible rather than only changing the date.

Questions about your data

If you want to know what is held about your account, want it corrected, want it exported, or want the whole account deleted, write and ask — a plain sentence describing what you want is enough. The same address is the right one for reporting a security problem, and for anything on this page that is unclear or looks wrong.

Effective .