Rehearsal is an app for practising a difficult workplace conversation out loud, before you have it for real. To do that it has to hear an account of something confidential — usually a named colleague and something that has gone wrong. This policy is about what happens to that.
Your audio isn't stored. What you said, as text, is — on our servers, under an anonymous ID with no name or email attached to it.
There is no sign-up. We do not sell anything, show ads, run analytics, or use your rehearsals to train any model. To have everything erased, email us and it is done within three days. The rest of this page is the detail behind those sentences.
Where your words actually go
A single turn of a rehearsal makes three hops. This is the whole of it:
If you type instead of speaking, hop 1 does not happen: nothing leaves your device as audio, and no microphone is opened.
What we collect
No account, and nothing that identifies you
Rehearsal has no sign-up screen. There is no email address, no name, no password, and no social login. When you first open the app it signs in anonymously to Firebase, which issues a random ID for your device. That ID is the only thing your rehearsals are filed under. We cannot tell who you are from it, and we have no way to contact you unless you email us first.
The honest limitation of that: because the ID lives only on your device, deleting the app loses your access to your own library. See Data retention.
What you tell the app
To build a character and run a rehearsal, we store what you give it:
- The situation you describe — in your words, including any names you use.
- The character built from it, and the turn-by-turn transcript of the conversation, including a snapshot of the character's state at each turn so a replay can rewind to a specific moment.
- The debrief, and the date you tell us the real conversation is on, if you set a reminder.
The app only ever asks for a first name, and a first name is all we would suggest you give it. It does not ask for your employer, your job title, or anybody's contact details, and it has no field to put them in.
Voice
Speaking is optional and the app works fully in text. If you do speak, the microphone is open for the length of your turn — including the pauses, deliberately, because a rehearsal where a pause ends your turn is not a rehearsal. That audio is streamed to ElevenLabs for transcription and is not retained by us. Only the resulting text reaches our servers.
Names from your situation are sent along with the audio stream as hints, so the transcript spells them correctly rather than guessing. This is why the app hears "the Ellison handoff" instead of "the Alisten hand of".
Purchases
Subscriptions are billed by the App Store or Google Play, through RevenueCat. We never see or store your card details. We receive whether a subscription is active, so the app knows to stop asking. RevenueCat identifies you by the same anonymous ID described above.
Reminders
If you tell the app when your real conversation is, it can put your notes back in front of you ten minutes before. That reminder is scheduled on your own device and never leaves it. Rehearsal has no push notification service, holds no device token, and cannot send you anything.
Keeping the service running
Our servers keep ordinary request logs — timestamps, IP address, and whether a request succeeded — for security and debugging. We also count how many rehearsals an anonymous ID has started, because the app's key is inside every copy of the app and somebody who extracted it could otherwise run up an unbounded bill. Those counts are numbers, not content: nothing you said is in them, and the alerts they trigger carry totals only.
What we deliberately do not collect
There is no analytics SDK, no crash reporting service, no advertising identifier, and no attribution tracking in this app. iOS will never show you a tracking permission prompt for Rehearsal, because there is nothing to ask for. This website sets no cookies and runs no analytics, which is why you are not being asked about any.
How we use it
- To build a character from your situation and run the conversation.
- To write your debrief, and to let you replay a specific moment.
- To show your own library back to you, and to find behaviours that recur across several rehearsals.
- To unlock the app for subscribers, and to stop asking people who already pay.
- To keep the service up, and to stop one caller spending everybody's budget.
- To answer you if you write to us.
We do not sell your information. We do not show ads. We do not use your rehearsals to train an AI model — we do not have one, and our providers process this data on our instructions rather than for themselves.
Where it is stored
Rehearsal runs on Google Cloud. Sessions are held in Firestore, and the service that talks to them runs on Cloud Run, both in the United States (us-central1). If you are outside the US, your data is processed there. It is encrypted in transit and at rest.
No app on your phone can read our database directly, including ours: every read and write goes through our service, which returns only the half of a session you are meant to see. That rule exists for a product reason — the character's hidden state lives in the same record as the transcript, and the app is not allowed to know it — but it is also what keeps the record closed.
Your phone also keeps its own copy of your library so the app works offline. Deleting the app deletes that copy.
Who else touches it
| Provider | What for | What reaches them |
|---|---|---|
| ElevenLabs | Turning your speech into text, and speaking the character's replies | Your audio while you speak, and the names from your situation as spelling hints |
| OpenAI | Writing the character's replies and your debrief | The text of your situation and the transcript of the conversation |
| Google Cloud & Firebase | Anonymous sign-in, storage, and hosting | Everything stored, as described above |
| RevenueCat | Knowing whether a subscription is active | Your anonymous ID and your subscription status. No content |
| Apple / Google | Distributing the app and taking payment | Whatever the store handles. We never see payment details |
| Cloudflare | Serving this website | Ordinary web requests to these pages. Nothing from the app |
Data retention
We keep your rehearsals until you ask us to remove them. There is currently no delete button inside the app, and we would rather say so than imply otherwise: deleting the app removes your local library and loses the anonymous ID that reaches your rehearsals, but the records stay on our servers until they are deleted properly. A self-serve delete is planned; until it exists, the section below is how it is done.
We may keep limited records for longer where the law requires it — purchase records for tax and accounting, for example — and those go once the requirement lapses. Those contain no rehearsal content: no transcripts, no situations, no debriefs.
Having your data deleted
Email thesidiklab@gmail.com with the subject “Delete my Rehearsal data”. Erased within three days, and we confirm by reply.
Why this is an email rather than a button. Rehearsal has no sign-up, so there is nothing to authenticate you against — no address, no password, nothing we could check a request came from you. The steps below are about giving us enough to find the right records:
- If you have ever subscribed, include the email on your App Store or Google Play account, or forward the store's receipt. A subscription is tied to your anonymous ID, so this identifies your records exactly.
- If you have never subscribed, tell us roughly when you used the app and the first name the character went by in one of your rehearsals. That is normally enough.
If we cannot match a request to a specific set of records with confidence, we will say so rather than guess. Deleting somebody else's rehearsals by mistake is worse than a slow request.
What goes, permanently and from our live systems: every transcript, including the situation you described in your own words; every character built from it, with the turn-by-turn snapshots that make replay work; every debrief and any date you set for a real conversation; the anonymous account itself; and the usage counts held against it. Your audio is not on that list because it was never stored.
Cancel your subscription first — deleting your data does not cancel it, and we cannot cancel it for you. Subscriptions are held by Apple or Google. Left running, you would be billed for an app whose data is gone.
- iPhone — Settings › your name › Subscriptions › Rehearsal › Cancel.
- Android — Play Store › your profile picture › Payments & subscriptions › Subscriptions › Rehearsal › Cancel.
Your choices
- Don't speak. Text mode is a full alternative and no audio is captured in it.
- Don't give a real name. The app works exactly as well with a name you made up.
- Deletion. Ask, and everything under your ID goes within three days — see Deleting your data.
- Access. Ask and we will send you what is stored under your ID.
- Reminders. Turn notifications off in your device settings; nothing else changes.
- Subscription. Cancel any time from your App Store or Google Play settings.
Depending on where you live you may have further rights over your data — to correct it, to object to its processing, or to receive it in a portable form. Write to us and we will honour them.
Children
Rehearsal is built for working adults having difficult conversations at work, and it is not directed at children. We do not knowingly collect anything from anybody under 18. If you believe a child has used the app, write to us and we will remove the data.
Changes
If this policy changes, the date at the top changes with it. If a change is material — new categories of data, a new provider seeing your content — we will say so in the app rather than only here.
Contact
Questions, requests, or anything that reads wrong on this page: thesidiklab@gmail.com.