Privacy
Plain-English summary of what the engine does and doesn't do with your data. Last updated 2026-10-22.
The one-line version
Your song, your library, your IndexedDB. We don't see them. The engine runs entirely in your browser — and your Google Drive files stay in your Drive.
What stays on your device
- Songs you import. Stored in your browser's IndexedDB (the
songsstore). The audio file never leaves your device — the engine reads it locally to analyse BPM, key, and beat. - Your library (clips, images). Same: IndexedDB
assetsstore, on your device, never uploaded. - Project state. The current persona, FX, motion, palette, layer assignments, etc. Saved to IndexedDB.
- Personal Tier license (if you activate one). Saved to
localStorageon your device. Format:swr-{tier}-{code}. Not signed (MVP — see terms). - Persona usage counters + generated variants. Saved to
localStorageon your device. Used to surface personalized variants. Never uploaded.
What leaves your device (and why)
- Daily preset manifest fetch. The engine fetches
/presets/manifest.jsonon load so it can show you today's new personalities. This is a static file served from the same Vercel deployment as the engine — no logging, no third-party CDN, no analytics. - Service worker registration. The PWA registers
/sw.jsto cache the engine shell for offline use. Standard browser API, no data leaves the device. - Your account, and the projects you save to it. Signing in stores your email address and a session. When you save a project, its state (persona, FX, motion, palette, layer assignments) is stored on our server so you can open it on another device. A share link for a composition works the same way.
- Google Drive. Connecting Drive is read-only. We store the access token on your account so we can list your files, but your music and videos stay in your Google Drive — we do not copy your library to our server. The one exception: if you import a specific Drive file into a project, that single file is copied to our storage so the engine can use it.
- Publishing a project to the marketplace. If you publish, we build a
.zipof the files you name in it and store that archive, because the whole point is that other people can buy and use them. Nothing else of yours is included.
What we don't see
- The songs, clips and images in your library, unless you import one from Drive or publish it to the marketplace.
- What you make (exports happen locally; the WebM file goes straight to your Downloads folder).
- Which personas you use or which presets you apply (stored in
localStorageonly). - Your IP address, browser, or any device fingerprint beyond what Vercel's standard edge logs record (request path + status code + bytes — same as any static site).
When you order a render or Personal Tier
Two things happen outside the engine, both via Stripe:
- Render orders. You upload your assets to a private link so the service team can produce a 1080p WebM. The assets are deleted after delivery. We don't retain copies.
- Personal Tier. You receive a license key (e.g.
swr-band-A1B2C3D4) by email. The key is stored in yourlocalStorageso the engine can recognize it on subsequent visits. We don't see or store any other data.
Cookies & tracking
None. The engine doesn't set cookies, doesn't use Google Analytics, doesn't use Plausible, doesn't use anything that tracks you across sessions.
Children
The engine is not directed at children under 13. We don't knowingly collect data from anyone under 13 — by design, we don't collect data from anyone.
Changes to this policy
Edits are committed to the engine's public repository with a changelog entry. The Last updated date at the top of this page reflects the most recent revision.