Privacy policy
Last updated: 4 November 2026
Solutfa is designed to work without an account and without a network. This page states precisely what stays on your device, what is processed on our servers when you choose to create an account or use a remote service, and your rights.
1. Without an account: everything stays on your device
- Microphone sound is never sent anywhere. The analysis (note recognition, score following, scores) runs entirely in your browser.
- Your scores, settings (reference pitch, note names, tolerances, instrument), takes and, if you enable it, their audio recording, your practice sessions and the passages you practise in a loop are stored locally by the browser (local storage, IndexedDB). They only leave the device when you export or share them yourself (file, link, QR code).
- Without an account, a share link (or its QR code) contains the score itself and does not go through our servers: only the people you give it to receive it. With an account, a link from the app is a copy kept on our servers (Β§ 2, "Sharing" row).
- No tracking cookies, no advertising, no third-party analytics.
2. With an account (optional)
The account lets you find your scores, settings, takes and practice sessions on another device, share with other musicians and use the services that cannot run on the device (sheet-music scanning). It is created with our identity provider (Zitadel), operated by tywyt SAS on its own servers in the European Union.
| Data | Purpose | Legal basis | Retention |
|---|---|---|---|
| E-mail address, account identifier, passkey or Apple / Google identity if you use them | Identify you, sign you in again | Performance of the contract (art. 6.1.b GDPR) | Life of the account |
| Date of the "over 15 or parent" confirmation, language | Legal obligation regarding minors | Legal obligation (art. 6.1.c) | Life of the account |
| Scores of your library, settings, takes: result (scores, verdict for each note), title of the score, β , your comments β and markers βΎ and, if you keep it, the recorded take (the detail and conditions stored with each take: next row); on each synchronised row (scores, settings, takes, practice sessions, passages, accompaniments), the identifier of the device that created it, drawn by the app: without a subscription, each device only gets back what it created | Backup of your history and, with the subscription, synchronisation between your devices | Performance of the contract | As long as you keep the take; the bin π erases it at once, everywhere (from Solutfa Stats, if you gave it your consent: within 10 minutes) β a result you sent stays with the person who received it, with its recording, comment, markers, detail and conditions, until they delete it ("Sharing" row) |
| Conditions of each take made in the app and detail of your playing, stored with the take: metronome and count-in heard, accompaniment and its speed, chosen instrument, origin of the tempo (written, chosen, from an assignment, from a game), opened from an assignment link (never the text of the instructions), end (finished, stopped, cut off), tuning heard before the take, latency calibrated yes / no (never its value), delay between the count-in and your first note; for each note, the detail computed by the analysis (pitch at the start, middle and end of the note, slope, steadiness, time to settle, glides between notes, attack deviation and drift of the bar) | Keep the full history of your work, so that it is already there if you open Solutfa Stats, which only receives it with your consent; the app does not show them | Legitimate interest (art. 6.1.f): data without the sound, never shown, passed only to Solutfa Stats with your consent or with a result you share, erased with the take | That of the take |
| "My practice" sessions: start and end (date and time), practice time, pieces practised (score, title, clef, time, number of takes, best score) and course of the session (order, duration and time of each piece) | Session summary and practice time in your progress; backup and synchronisation like takes | Performance of the contract | Life of the account: a session can be corrected (βοΈ) but not deleted one by one |
| Passages practised in a loop: for each series of passes over the same section of a score, the score, the first and last bars, how the loop was set, the automatic tempo increase (β©β), the start and end (date and time) and, for each pass played to the end (200 at most per series), tempo, notes in tune, nearly in tune and missed, score, Recital mode, metronome | Keep the full history of your work, so that it is already there if you open Solutfa Stats, which only receives it with your consent; never shown in the app; backup and synchronisation like takes | Legitimate interest (art. 6.1.f): never shown or passed on without your consent | Life of the account (no bin per series) |
| Change log, for every account: for each take, practice session, series of passes or score written, changed or deleted, and each score added to or removed from your library, the account identifier, the row's identifier and the time (no content) | Let Solutfa Stats, if you give it your consent, copy what is new and what is deleted; nothing is passed to it without consent | Legitimate interest (art. 6.1.f) | 7 days |
| Accompaniments: the audio file you import for a score and the settings of each track (file name, duration, first-note marker, tempo, volume, π, instrument) | Play along with the track on your devices; backup and synchronisation like takes | Performance of the contract | As long as you keep the track; the file counts towards the recording quota |
| Sharing through the app: your @handle (and those you gave up) and the name you choose to display; the copy of a link, kept on our servers β the score, or the result of a take with its recording, detail, conditions, your comment β and your markers βΎ, and the accompaniment if you attach it β, which anyone holding the link can open, even without an account; the item delivered to the π₯ inbox of a @handle (your @handle, assignment settings and instructions, date opened); the accounts you block; the log of your sends and handle searches (daily limits) | Share a score or a result, receive what is sent to you, block someone, limit abuse | Performance of the contract; log: legitimate interest (art. 6.1.f) | Copy of a link: 7 days; item sent to a @handle: up to 30 days in the π₯ inbox, or until the recipient deletes it; what they add to their library stays with them, with your name or @handle, until they delete it; @handles and blocks: life of the account; log: 2 days, erased at your next share (otherwise with the account) |
| Sign-in session of the app and the portal: tokens kept in the browser's storage (no Solutfa cookie), language chosen on the portal; for the life of a tab, the purchase in progress and the refusal of a link made for another account; sign-in cookies of the identity provider | Keep you signed in, resume a purchase, never act for another account | Performance of the contract (strictly necessary storage) | Until β or their expiry; those of a tab: until it is closed |
| Solutfa Plus subscription: Stripe customer and subscription identifiers, status, renewal dates, payment history and invoices (card data stays with Stripe) | Manage the subscription, invoice, refund | Performance of the contract; legal obligation for invoices (art. 6.1.c) | Life of the subscription; invoices and accounting records: 10 years (French Commercial Code, art. L123-22) |
| Photo of a score sent for scanning, its fingerprint, number of scans of the day | Optical recognition; scan quota | Performance of the contract | Photo processed in memory, not kept; recognised score kept until the next day, so that the same scan is not run again; fingerprint and counters: life of the account |
| Technical server logs (IP address, date, path) | Security, rate limiting | Legitimate interest (art. 6.1.f) | Container logs, neither centralised nor archived: erased when rotated (bounded size) or when the service restarts |
With an account, every take is saved automatically, sound included, within a quota (60 minutes of stored audio on the free plan, takes, accompaniments and received sounds together); a bin next to each take lets you discard it, and nothing is sent while a take is in progress. Your recordings serve you only: we do not listen to them, do not use them to improve recognition, and do not pass them to anyone. Without an account, no sound leaves the device. The backups of our databases, on our own infrastructure, keep what was erased from them for 30 days; they only serve to restore the service after an incident.
Solutfa Stats: detailed statistics (with your consent)
Solutfa Stats shows you your detailed statistics β each note and each day over time β in the Solutfa app, Progress tab (β¦ Stats page), with no sign-in other than the app's: you see only your own data, in a dashboard served by stats.solutfa.com behind a gateway that checks your account and your consent; the app hands it only a single-use opening ticket, valid for 60 seconds, never your credentials. It is a feature of tywyt SAS (built on free and open-source dashboard software that we install and run ourselves on the same infrastructure in France, Β§ 4); your consent is given, managed and withdrawn in the account portal, where the app takes you. Consent must be given by you if you are an adult, by a parent or legal guardian if you are a minor; the portal does not check age (Β§ 3). Nothing is copied before this consent; upon consent, Solutfa Stats receives a copy of your history (takes, practice sessions, passages practised in a loop, titles of your scores), then of everything new, as long as consent is not withdrawn. It serves you only: no audience measurement, no tuning of the recognition, no transfer to anyone; it stores nothing in your Solutfa account. The change log that Solutfa keeps for every account (Β§ 2) passes nothing to it without consent.
| Data | Purpose | Legal basis | Retention |
|---|---|---|---|
| Account identifier; for each of your own takes, your games' included: date and time, game it comes from, score (title for a catalogue piece; for any other score, a reference that is not its identifier, shown under its title if it is a score of your own β next row β otherwise under a mere number) and its details (key signature, time signature, upbeat, written tempo, clef, number of notes), tempo, transposition, reference A, tolerances, scores, Recital mode, rhythm only, microphone or MIDI keyboard (and automatic gain of the microphone), version of the analysis engine, take conditions; for each note: written note and note heard, bar, beat, duration, dynamic, pitch and attack deviation, relative level (peak, mean, end, slope, steadiness, curve of the held note), velocity on a MIDI keyboard, per-note detail; practice sessions (start and end, date and time, game it comes from, practice time, order, duration and time of each piece, clef, takes and best score per piece, piece removed from the session); passages practised in a loop. Never: the sound, your comments, the markers set while listening back, the title of a score you received or of a game's score, the other texts of your scores (composer, lyricsβ¦), your e-mail address or your @handle, takes you received, nor any count of your actions in the app | Compute and show you your detailed statistics, to you alone | Your consent (art. 6.1.a, and art. 8 under 15); performance of the contract (art. 6.1.b) to provide this service | As long as consent is not withdrawn (per-note detail: 400 days, erased at the latest 431 days after the take; summaries per take, per day and per score, practice sessions and passages: as long as consent lasts); a take put in the bin π leaves it within 10 minutes; withdrawing consent or deleting the account erases the copy within 10 minutes; backups of this copy: 30 days |
| Title of your own scores: those you imported, scanned or saved from the editor and that are in your library β the title alone, as the app shows it: the one written in the score or, failing that, the name of the imported file or a name given by the app, 120 characters at most, control and invisible formatting characters removed (except those that make up an emoji or a script). Never the title of a score you received (link, QR code, @handle) or of a game's score; a copy you save from the editor, even one made from a score you received, becomes your own score, with its title | Show you the statistics of each score under its title rather than a number, to you alone | Your consent (art. 6.1.a, and art. 8 under 15) to the current version of this policy | As long as the score is in your library and consent lasts: if its title changes, the new one replaces the old one; once the score is deleted or removed from your library, its title is erased from Solutfa Stats within 10 minutes; withdrawing consent or deleting the account erases it too within 10 minutes; backups: 30 days |
| Dashboard account: account identifier, language, sign-in tokens and dates (neither your IP address nor your browser); at sign-in, the identity provider passes it your profile (name, sign-in name, language), of which it keeps only the language | Sign you in to the dashboard and keep you signed in | Performance of the contract | Tokens: until you sign out or they expire, then at most 3 days in an encrypted technical cache; identifier and language: until consent is withdrawn or the account is deleted (within 10 minutes); backups: 30 days |
| Cookies of stats.solutfa.com, all needed to open Solutfa Stats in the app: gateway session, opened by the app's ticket (account identifier, encrypted; 15 minutes, extended while the β¦ page stays open), dashboard sign-in attempts (1 minute), dashboard session (7 days without a visit, 30 days in all) and the cookies of its sign-in flow; in the browser, the Solutfa Stats page to resume (10 minutes) | Keep you signed in; check, at each ticket (at least every 10 minutes), that the dashboard is your account's and that your consent is given (withdrawn consent closes it within 15 minutes) | Performance of the contract (strictly necessary cookies: no analytics or advertising cookies) | As stated; β in the app erases them |
| Trace of a deleted account, in Solutfa Stats: its identifier and the date | Never copy a deleted account again | Legitimate interest (art. 6.1.f) | 120 days |
| Technical logs of stats.solutfa.com, like those of Solutfa; those of the gateway and of the dashboard may carry the account identifier or a fingerprint of it | Security, troubleshooting | Legitimate interest (art. 6.1.f) | Container logs, neither centralised nor archived: erased when rotated or when the service restarts |
New version of this policy: the dashboard closes until you consent to the new version, on the portal; the copy, however, continues as long as you have not withdrawn your consent, except for the titles of your scores: until you consent to the new version, no title is copied and those already copied stay, apart from that of a score renamed, deleted or removed from your library, which is erased; upon that consent, your titles are copied again. If you no longer want it to continue, withdraw your consent: the consent page lets you do so, even before accepting the new version.
Withdrawing your consent is done in the portal (catalogue, options of the Solutfa card; β βΊ Account βΊ Options in the app takes you there): "Remove" on Solutfa Stats always withdraws your consent, and the consent page also lets you withdraw it alone; either way, the copy and your dashboard account are erased within 10 minutes (nothing is erased if you give your consent again before then). The 10-minute delays in this policy apply in normal operation: in case of an outage, erasure happens as soon as the service is restored. Your scores, takes, practice sessions and passages stay in your Solutfa account. Signing out of the app (β) also closes your Solutfa Stats session. Solutfa Stats has no export of its own: its statistics are only copies and summaries of what your account's export contains (Β§ 5); for the rest (dashboard account, trace of a deleted account), write to contact@solutfa.com.
Account and billing, shared by TYWYT products
The Solutfa account is also the account of the mini-games of tywyt SAS and of Solutfa Stats: one identity, one sign-in, whichever product the account was created from. The My Solutfa account portal (compte.solutfa.com) manages it: its catalogue opens the applications and the games, and consent to each is given, managed and withdrawn on the portal, nowhere else. For these products, Solutfa also processes:
| Data | Purpose | Legal basis | Retention |
|---|---|---|---|
| Products added to the account (date added, last use β at most once a day β, removal) | Show their state in the portal's catalogue, notify each product used when the account is deleted | Performance of the contract | Life of the account (a removed product stays listed so that it is notified of the account's deletion) |
| Consent to each product's privacy section, Solutfa Stats included (date, version), its withdrawal | Collect and prove consent, ask again for each new version | Legal obligation (Art. 6.1.c, with Art. 7.1: proving consent) | Life of the account |
| Rights per product (subscription, offered access, free product) and date of the payer declaration | Open access to the product, invoice | Performance of the contract; legal obligation for invoices | Life of the account; invoices: 10 years |
| Licence handed to the product: account identifier, access yes / no, consent yes / no, end of the right β never the other products | Let the product open, offline too (a period set for each product, 90 days at most) | Performance of the contract | Signed for that period: 90 days at most |
| Verified e-mail address of the account, only for a product that states the need in its privacy section (for instance so that a teacher can invite their students) | Passed to the product by the identity provider, at sign-in | Consent to that product (art. 6.1.a) | As stated in the product's privacy section |
| What a game stores in your account: scores played and their settings, takes (result and, with the microphone, recording), practice sessions, game save | Keep them for you: you find these scores, takes and practice sessions in the Solutfa app, like your own (same recording quota); the game reads back its own takes and its save | Your consent to the game (Art. 6.1.a, and Art. 8 under 15) to store them; performance of the contract (Art. 6.1.b) to keep takes, recordings, practice sessions and scores, like those of the app | Takes, recordings, practice sessions and scores: like those of the app, kept even after you withdraw your consent to the game; the app's bin π deletes a take or a score. Game save: until you withdraw your consent to the game, which erases it at once. Everything: until the account is deleted |
| Journal of deletions and requested erasures: account identifier, product, date β whether the account is deleted or consent to a product is withdrawn | Have each product concerned erase its data | Legal obligation (Art. 17 and 19 GDPR) | 90 days |
| Trace of the deleted account: its identifier and the date | Prevent a still-open session from recreating the account | Legitimate interest (Art. 6.1.f) | 120 days (maximum length of a session, plus 30 days) |
A product may keep its own data (progress, classesβ¦) in its own database; a game built with the Solutfa kit has none: what you do in it is stored in your account (table above). Each product describes this in its privacy section, which you read before consenting; they are all gathered on the portal's Privacy page. A product receives nothing from Solutfa but the licence above, what it stored in your account itself (its takes, its game save) and, if it states the need in its privacy section, the verified e-mail address of the account (passed at sign-in by the identity provider); it never reads your library, your other takes or your other products. The one exception: Solutfa Stats, with your consent, receives the copy described above. Withdrawing your consent to a product stops it from opening and erases your progress in that product: its game save at once, and what it keeps in its own database within 30 days β within 10 minutes for Solutfa Stats β (nothing is erased there if you give your consent again before then); the takes, recordings, practice sessions and scores that it stored in your Solutfa account stay there, visible in the app and under its rules like your other takes and scores (the bin π deletes a take or a score). Removing a product while asking for erasure also withdraws your consent, with the same effect; Solutfa Stats is always removed this way. Deleting the account (app or portal) erases everything it keeps, including what your games stored in it, cancels every subscription and notifies each product used, which erases its own data within 30 days (Solutfa Stats: within 10 minutes). The Stripe customer and the invoices remain at Stripe for accounting obligations (10 years).
3. Minors
Solutfa serves adults and children alike. Many students are under 15, the age of digital consent in France: their account belongs to the parent or legal guardian. On first sign-in, the person confirms being over 15 or acting as a parent; neither age nor this link is verified. No public profile: your @handle is only shown to the people you share with. No messaging: people only send each other scores and results; the only free text that goes with them is an assignment's instructions (200 characters) and, for a result, its comment β. No advertising. For a mini-game as for Solutfa Stats, consent to its privacy section is given on the portal, with the section in front of you; it must be given by the person themselves if they are an adult, by a parent or legal guardian for a minor; a game screen never shows a price or a purchase link to a child. Solutfa Stats shows only the signed-in account's data, with no advertising and no comparison with other students.
4. Recipients and processors
Account data is processed by tywyt SAS and hosted on its own infrastructure, in France. Solutfa Stats is built on free and open-source dashboard software that tywyt SAS installs and runs itself on this infrastructure: the publisher of that software is neither a recipient nor a processor and receives no data β the application calls no outside service (no update check, no usage statistics, no font or image from another site). If you choose "Sign in with Apple" or "Google", those companies handle authentication under their own policies. If you subscribe, payment is processed by Stripe (Stripe Payments Europe Ltd, Dublin, Ireland) as payment provider: it receives your e-mail address, payment methods and billing address, under its privacy policy; we never receive your card data. No data is sold or shared for advertising.
5. Your rights
From the app settings β, when signed in: β© export all your data (JSON archive and recordings) and π delete the account, which cancels any subscription and erases your profile, library, takes and their recordings β your games' included β, your practice sessions, your passages practised in a loop, your accompaniments, your links and sent items still open on our servers (their backups: 30 days), the copy held by Solutfa Stats (within 10 minutes) as well as your identity at the identity provider. What someone added to their library from one of your shares (a score, a result and its recording, by link, QR code or @handle) stays with them, until they delete it. The My Solutfa account portal does the same (β© export of the account β including what your games stored in it β, its products, consents and rights; link to export each product's data β the one for Solutfa Stats points to the account export, since its statistics are only copies and summaries of it; π deletion), and each consent, including the one to Solutfa Stats, is withdrawn from the portal's catalogue; withdrawing your consent to Solutfa Stats erases its copy within 10 minutes. You may also exercise your rights of access, rectification, erasure, restriction, objection and portability by writing to contact@solutfa.com. You may lodge a complaint with the CNIL (cnil.fr) or your local supervisory authority.
6. Security
Passwordless sign-in (passkeys, one-time e-mail code), TLS encryption, per-user database isolation (row-level access rules), detailed statistics served to the signed-in account only (a gateway that checks the account and the consent, token checked on every request), servers in the European Union.
7. Data controller
TYWYT (tywyt SAS), 35 B rue Jacques Duclos, 91120 Palaiseau, France β contact@solutfa.com.