ScribeKey privacy policy
Speech recognition and Standard cleanup run on your phone by default. Local dictation needs no ScribeKey account. Download a speech model first to transcribe offline.
Cloud speech sends audio to a provider you configure. Separately, Cloud Enhance sends text when you choose a cloud rewrite. Model downloads, sharing and backups have their own data flows, described below.
This page describes what the app actually does. It was written from the code, and it is checked against the code before each release. If something here turns out not to match the app, that is a bug. Please report it.
About ScribeKey
ScribeKey is an Android app. It does not run a ScribeKey account service or keep a server-side user database.
What stays on your phone
All of the following is stored in ScribeKey's private app storage, which no other app can read:
- Transcripts. Capture sessions and ordinary dictations are saved locally. Your edited text is stored separately from the original transcript. Continuing an existing session or dictating an editing instruction does not create a separate history entry.
- Audio recordings. Captured dictations and retained imported recordings are saved locally for playback and re-transcription. Saving dictation audio is on by default; you can turn it off in Settings, under Capture audio.
- Your dictionary, vocabulary, rewriting prompts and voice snippets. Vocabulary can also be included in an optional cloud rewrite request, as described below.
- Which app you dictated into: the app's name and package, recorded on each entry so your history shows where the text went.
- Your statistics: words dictated, time saved and speaking speed are calculated from local history. QA builds may collect tester diagnostics as described below.
- Your settings, including any API keys, which are encrypted with a key held in the Android keystore. Speaker names you add for Capture are also stored in settings and included in an optional encrypted backup.
Android's automatic cloud backup is switched off for ScribeKey, so none of this is copied to Google's servers or transferred to a new device by the system.
What can leave your phone, and only if you turn it on
Model downloads
Speech recognition runs on a model file that has to be downloaded once. ScribeKey downloads it from huggingface.co when you choose a model during setup or later in Settings.
The download is an ordinary file request. ScribeKey sends no identifier of any kind with it: no account, no device ID, no usage information. The list of available models ships inside the app, so nothing is contacted to find out what models exist. As with any web request, Hugging Face's servers will see your IP address and the time of the request; that is a property of connecting to them, not something ScribeKey adds.
If you download a model that requires accepting its licence, you may need to sign in to Hugging Face. That is optional and only applies to those models.
Cloud transcription: off by default
ScribeKey can send audio to an OpenAI-compatible transcription service instead of transcribing on the device. This is off unless you switch it on and enter your own API key.
- You choose the endpoint. There are presets for OpenAI
(
api.openai.com), Groq and Mistral, and you can type any other compatible URL. - What is sent: the request body contains the audio being transcribed and your selected model. This includes imported audio and saved recordings you retry. ScribeKey adds no app name, device ID or history; your API key authenticates the request.
- Where it goes: directly to your configured endpoint. ScribeKey does not relay audio through its own server.
- Your API key is stored encrypted on the device and is sent only to the endpoint you configured, to authenticate that request. Clear the field to remove it.
Once you send audio to a third-party service, that service's own privacy policy governs what it does with it. We have no control over and no visibility into that.
Cloud rewriting: off by default
Cloud Enhance is an explicit rewriting action, separate from speech recognition and ordinary cross-app cleanup. Set up a provider and review cloud access before using it. A rewrite sends the text being edited, your instructions, and vocabulary supplied to the rewrite to that provider. Where app context is supplied, the app name and package can be included too. The configured provider's own policy governs that processing.
Choosing on-device speech does not make a later cloud rewrite local.
The rewriting model never receives the contents of your screen. See the next section.
Optional AI cleanup on device
AI cleanup downloads a separate model and rewrites English text locally on supported devices. Transcript text is not sent to the model host. Standard cleanup is the fallback when the local model cannot complete safely. You can remove the cleanup model in Settings.
Hosted Hugging Face transcription: hidden and off
An experimental option can send audio to Hugging Face's hosted inference API. It sits behind the app's hidden Labs settings and does nothing unless you deliberately unlock and enable it.
The accessibility service, in plain English
ScribeKey uses Android's accessibility service to type your words into supported editable fields in the app you are using. Android shows this permission with a broad warning, because the same permission can, in principle, be used to read everything on screen. Before the first handoff to Android's Accessibility settings, ScribeKey shows a prominent disclosure with Continue to Accessibility settings and Not now. ScribeKey records the disclosure version and acknowledgement time only after you continue. You can turn this access off at any time. Here is exactly what ScribeKey does with it.
What it does:
- Notices when a text field has focus, so the dictation button knows when to appear.
- Reads the focused field's text and selection, only as needed so dictated text replaces a selection or lands at the current cursor.
- Writes the transcribed text into the field.
- Looks up the name of the app that has focus, so your history can show where each dictation went.
- Checks whether a field is a password field, before anything else happens to what you said. Nothing spoken at a password field is typed, rewritten, sent to a cloud service or saved: the recording is deleted and your history shows only that a dictation was refused.
What it does not do:
- It does not read password-field contents or unrelated screen content.
- It does not save or send the focused field's text or selection. The target app name is saved locally with the session.
- It does not read your clipboard.
- It does not log keystrokes, take screenshots, or watch what you do in other apps.
- The accessibility service does not send anything anywhere. The only thing it collects is the focused app's name, and that is stored on your device. Audio can leave the device only when you choose a cloud transcription provider, including the experimental Hugging Face option above.
Crash reports and analytics
The release build excludes Firebase crash reporting, analytics and performance monitoring. Internal builds labelled ScribeKey QA include tester diagnostics. A testing invitation must identify which build it supplies and the applicable diagnostic collection.
Android tester recruitment
If you join the Android testing cohort, we collect the Google account email address you use on Google Play to send you testing invitations and closed-track installation instructions. This information is used solely for testing coordination, is never shared with third parties, and is retained only during the testing cycle. You can leave the testing group or request removal at any time.
Google Play purchases
If you buy ScribeKey Pro, Google Play handles the payment. ScribeKey receives a purchase token from Google Play and sends that token to ScribeKey's Firebase-hosted entitlement verification service. The service checks the token with Google Play and returns whether the one-time Pro entitlement is active. It does not receive transcript text, audio, API keys, device identifiers or your Google account email, and it does not store the purchase token. The app stores only the latest verified entitlement result and verification time on this device, with a seven-day grace period for temporary offline use. Google Play processes purchase information under Google's own terms and privacy policy.
Permissions and why they exist
- Microphone: to hear what you dictate. Recording only runs while a dictation is in progress, with a notification showing.
- Accessibility service: to type into other apps. Described above.
- Display over other apps: for the floating dictation button.
- Notifications: so you can stop a recording from the notification shade, and to show download progress.
- Internet: for model downloads, and for the cloud features if you turn them on. Local transcription works without a connection once its model is downloaded.
- Ignore battery optimisation: optional, so long dictations are not killed mid-sentence.
How long things are kept, and how to remove them
- Transcripts stay until you delete them. Delete one from your history, or select several and delete them together.
- Audio files are deleted when you delete the recording they belong to. Beyond that, ScribeKey sweeps once a day and deletes audio older than the retention period you have set (7 days by default). The retention period is a floor, not an alarm: Android decides when the daily sweep actually runs, so a file may survive a few hours past it. You can also clear expired audio immediately with Settings → Delete expired audio now, or turn the automatic clean-up off.
- Your API keys are removed by clearing the key field.
- Uninstalling ScribeKey removes its private app data and downloaded models. Copies you exported or shared, backups you saved elsewhere, and data already sent to a cloud provider are not removed by uninstalling the app.
There is no single "delete all my data" button in this version. You can delete sessions in the app and remove exported copies from wherever you saved them.
Exporting and backing up your data
You can export transcripts as plain text, Markdown, JSON or CSV, and you can create a passphrase-encrypted backup containing your transcripts, dictionary, prompts and, if you choose, your audio. Both go through Android's normal share sheet, so you decide where they end up. API keys are deliberately left out of backups. Keep the backup passphrase somewhere safe: ScribeKey cannot recover it for you.
Children
ScribeKey is not directed at children under 13. We do not maintain a ScribeKey account database. Local data is managed in the app; QA diagnostic collection is described above.
Changes to this policy
If the app's behaviour changes, this page changes with it, and the effective date at the top moves. Material changes will be called out in the app's release notes.
Contact
Questions, corrections, or something on this page that does not match what the app does: support@scribekey.app.