The short version.
The app and this website are operated by an independent individual developer (“we”). For questions about this policy or your personal data, contact: [email protected].
The app has no sign-up, no login and no user profile. We do not collect your name, e-mail address, phone number, date of birth, photograph, contacts, calendar, location or advertising identifier. Nothing you enter identifies you to us as a person. Usage analytics is tied to a random app-instance identifier rather than to you; see section 9.
The information you optionally enter during onboarding — a target CLB level and a test date — is stored only on your device and is never sent to us.
| What | When | Why | What happens to it |
|---|---|---|---|
| Your audio recording of a Speaking answer | When you finish a Speaking task and it is scored | It cannot be scored without being heard | Held in memory and in the web server's temporary upload area only for as long as the request runs, sent to the AI scoring provider, and deleted on every exit path — including on error. It is never written into our storage, our database or our logs. |
| Your written answer to a Writing task | When you submit a Writing task for scoring | Same reason | Processed in memory, sent to the AI scoring provider, and discarded when the response is returned. It is never written to disk on our side and never appears in a log. |
| A device identifier | With every scoring request | To count your three free sessions and enforce the daily and monthly limits, and to stop one device from consuming the service without limit | Stored on our server as the key of a small counter file. In our logs only a shortened SHA-256 hash of it is stored, never the raw value. |
| Usage events — which task type you opened, whether a report came back and how long it took, which limit screen or plan you saw | While you use the app, unless you switch analytics off | To see where people stop, whether scoring stays as fast as we claim, and whether the free tier leads anywhere — none of which a scoring log can answer | Sent to Google Analytics under a random app-instance identifier. It carries no answer text, no recording and no score. Kept two months. See section 9 for the off switch. |
| Which task you attempted | With every scoring request | The model has to know which question it is scoring | A task code such as T5 and a question code. Not personal data. |
ANDROID_ID by hashing it with a private namespace on your device.
The raw system value never leaves your phone; only the hash does.Our server writes one line for each scoring request. That line contains measurements only:
No audio, no transcript, no candidate text, no feedback text and no keys are ever written to a log. Log files are kept for 14 days and then deleted automatically.
Scoring is performed by a large language model operated by Google (“Gemini”), called from our server. Your recording or your text is sent to that model to be scored and is subject to that provider's terms for the API tier we use. We do not send your device identifier or any other identifier along with it — the provider receives the answer to be scored and nothing that identifies you.
The provider is Google LLC, through the paid tier of the Gemini API. Its handling of API data is governed by the Gemini API additional terms; under the paid tier, Google states that request content is not used to improve its products.
We cannot read any of it. Deleting the app deletes all of it — and it is not recoverable, so export or screenshot a report you want to keep.
Subscriptions are sold and managed by Apple and Google. The purchase happens entirely inside their systems. We never see or receive your card number, your billing address or your store account identity. We receive from the store only the fact that a valid subscription exists, which the app uses to unlock paid practice. Cancellation and refunds are handled in your store account, under the store's policy.
We measure how the app and this website are used, with Google Analytics for Firebase in the app and Google Analytics on the website. We do it to answer questions a scoring log cannot: where people stop during a first session, whether scoring stays as fast as we say it is, and whether the free tier leads anywhere.
There is still no advertising and no cross-app tracking. The app carries no advertising SDK. We do not use the advertising identifier (IDFA), we do not fingerprint your device, and we do not combine what you do here with data from other companies in order to advertise to you. That is why the app never shows Apple's “Allow tracking” prompt. In our Google Analytics configuration, Google Signals is off, ad personalisation is off, sharing Analytics data with other Google products is off, and the project is not linked to any advertising account.
speaking, t5,
weekly. There are no free-text fields._ga cookie on the website,
device or browser model, operating system, app version, language, and an
approximate country derived from your IP address.Analytics data is retained for two months — the shortest period Google offers — and then deleted automatically. This is separate from our own 14-day scoring log described in section 4.
The app is aimed at adults preparing for an English language test and is not directed at children. We do not knowingly collect personal information from children. Because there is no account and no personal data collection, we hold nothing that would identify a child user.
Depending on where you live — for example under Canada's PIPEDA or the EU/UK GDPR — you have rights to access, correct, delete and port your personal data, and to complain to a regulator.
In practice, the only data we hold that could be connected to you is the device counter keyed by the device identifier, and the 14-day metadata log. If you want them removed, contact us at the address in section 1 and tell us roughly when you last used the app and on which platform, so we can locate and delete the matching counter and log entries. Deleting the counter also ends any free sessions still attached to that device. Log entries expire within 14 days on their own.
For analytics (section 9) the quickest remedy is in your own hands: switch Usage analytics off in Settings, or decline analytics on the website. Past analytics data is not attached to a name and expires within two months; if you want it removed sooner, write to us and we will ask Google to delete the app-instance identifier concerned.
Our server is hosted in Germany. The AI scoring provider (Google) processes requests on its own global infrastructure, which may be outside your country; Google applies appropriate safeguards, including standard contractual clauses, to such transfers. Google Analytics data (section 9) is likewise processed by Google on its own infrastructure, which may include the United States, under the same kind of safeguards.
Traffic between the app and our server is encrypted in transit. Counters and logs are stored outside the web root, so they are not reachable from the internet. API keys are held in server configuration and are never shipped in the app. Recordings are deleted on every code path, including error paths.
No system is perfectly secure; we design so that a breach would expose counters and measurements rather than anybody's voice or writing.
If we change what the app collects, we will update this page and its “last updated” date, and update the store privacy declarations to match.