Last updated: October 21, 2026
This Privacy Policy explains how Shuovo ("we", "us", or "our") collects, uses, and protects your personal information when you use the Shuovo applications (including the Android and iOS apps and the Shuovo Chrome extension) and related services (the "Services"). By using the Services, you agree to the practices described in this policy and our Terms of Service.
When you create an account, we collect:
This data is stored locally on your device by default. If you are signed in with an active subscription, cloud sync uploads copies of your learned words, snippets (including their expansion text), and settings to our servers so they are available across your devices. Synced data is stored in Cloudflare R2 (encrypted in transit) with version metadata in our database, is associated with your account, and is retained until you delete your account. If you join a team, any snippets or dictionary entries you share with that team are also stored on our servers so other members can use them.
We never collect, access, or transmit your raw keystrokes or your clipboard, and we do not read the contents of the fields you type into — with two exceptions: (1) if you explicitly select text and use a voice-editing feature, the text you selected — and a limited excerpt of the text immediately around it in the same field, which helps apply your edit accurately — is sent to our server and to one of our AI providers solely to perform the edit you requested (see "Third-Party Service Providers" and "Voice Transcription Data" below); and (2) if you turn on the optional dictation-accuracy setting (off by default), a small, short-lived excerpt of text you recently wrote using the keyboard may be sent with your dictation requests, used solely as a hint that helps recognize the names, terminology, and topic you are dictating about. That excerpt is processed transiently, is never stored on our servers, expires from your device within about 30 minutes, and is never collected from password or other sensitive fields or while privacy mode is on. Cloud sync uploads only your learned-word list, your saved snippets, and your settings — not a log of everything you type.
Audio and selected text (with a limited excerpt of the text around it) are collected only when you use voice typing; the device ID is also sent when you sign in.
We measure, in aggregate, how far people get through installing and signing up — for example how many visitors reached the pricing section, how many opened the extension after installing it, and how many were unable to start dictating because they had not yet started a subscription or free trial. This tells us where our sign-up process is confusing or broken. It is measurement of our own service, not advertising or profiling, and we do not use it to build a profile of you or share it with anyone.
Each of these events contains only: the name of the step reached (chosen from a fixed list defined in our code), an optional reason code (such as "an active subscription is required"), and a coarse indication of which site referred you (for example "linkedin" or "search"). The full referring web address is discarded and never stored.
To count a person once rather than once per click, each event carries a randomly generated visit identifier. It is short-lived — erased when you close the tab or browser — is not a cookie, a device identifier, or an advertising identifier, and is not used to recognise you on a later visit. We store it only in hashed form and never alongside your email address, your account, or any other record that identifies you — there is deliberately no way for us to connect these measurements back to a person.
These events contain no audio, no typed or dictated text, no email address, no account identifier, no IP address, and no page addresses. They are retained for 90 days and then deleted. Because no cookie or persistent identifier is involved, this measurement does not follow you across other websites.
If you uninstall the Chrome extension, Chrome opens a short feedback page on our website. We record that an uninstall happened and, only if you choose to select one, the single reason you pick from the list. That page collects nothing else and you are free to close it without answering.
If you contact us or choose to share a diagnostic report, we receive the information you provide. These diagnostic reports are generated on your device and are not sent to us unless you choose to share them. They may contain app and device information, request references, timestamps, and performance and audio-quality measurements, but not your audio recordings or transcription text. We use this information to respond to your request and troubleshoot the Services.
On iOS, the app uses Apple's MetricKit framework to automatically send us a crash report after the app crashes, hangs, or is terminated for excessive resource use — you do not need to take any action for this to happen. A crash report may contain the app and OS version, the type of crash, and a symbolicated stack trace (binary names, function/symbol names, and byte offsets). It never contains keystrokes, typed or dictated text, audio, or other content from the fields you use. Reports are associated with a pseudonymized (hashed) account identifier so we can gauge how many users are affected, and are used solely to identify and fix stability issues. This is on by default; there is currently no separate in-app control to disable it.
If you opt in to aggregated analytics in the app settings — it is off by default — the app sends us daily anonymized performance summaries, such as suggestion latency and crash-free session rates, associated with a pseudonymized (hashed) account identifier. These summaries contain no keystrokes, no typed or dictated text, and no audio; they are used solely to improve reliability and performance, and are kept for up to 37 days before being deleted automatically — and deleted immediately if you delete your account. The app's other analytics modes keep all statistics on your device and never transmit them.
Voice typing is included in your Shuovo subscription, which starts with a 14-day free trial (see our Terms of Service for pricing). You do not need an API key of your own, and there is no option to route your audio to a provider of your own: every dictation is transcribed by ElevenLabs on our account (see "Third-Party Service Providers").
If you connected a Groq API key on the account page before October 21, 2026 (when transcription on your own Groq account was offered), we still hold it, encrypted at rest with AES-256-GCM using a master secret that never leaves the worker, together with its last four characters and the timestamps for when it was added and last used. Since that date the key is never used for transcription; it serves only as a fallback credential for the AI text processing described under "Third-Party Service Providers". You can remove it at any time from your account page, which deletes the encrypted record from our database immediately.
Subscription payments are processed by Stripe. We do not store your credit card number or payment details. Stripe's privacy policy governs data collected during checkout.
| Data | Purpose |
|---|---|
| Email address | Authentication, account management, essential service communications |
| Audio recordings (server-side) | Transcription only; discarded from our servers immediately after processing |
| Audio recordings (on-device) | Retained locally so a recent or failed recording can be retried; removed automatically as described above |
| Selected text and nearby text (voice editing) | Performing the edit you requested and fitting it to its surroundings; processed transiently, not retained on our servers |
| Recent text excerpt (optional dictation-accuracy setting, off by default) | Improving recognition of names, terminology, and topic in your dictation; processed transiently, not retained on our servers |
| Device ID | Binding a session to the device it was issued on, and abuse prevention |
| Synced keyboard data (learned words, snippets, settings) | Cross-device sync, when you use cloud sync (a subscription feature); custom dictionary terms are also used as hints to improve your transcription accuracy |
| Usage logs | Billing reconciliation, abuse prevention, service diagnostics |
| Sign-up funnel events (anonymous) | Measuring in aggregate where people get stuck installing or signing up, so we can fix it; not linked to you |
| Support communications and diagnostic reports | Responding to support requests and troubleshooting the Services |
| Crash diagnostics (iOS) | Identifying and fixing app stability issues |
| Optional aggregated analytics (iOS/Android, off by default) | Improving app reliability and performance |
| Web error diagnostics (account page) | Detecting and fixing reliability problems on the account web page |
| Payment data (via Stripe) | Subscription management and billing |
| Groq API key connected before October 21, 2026 (encrypted) | Fallback credential for AI text processing only; never used for transcription |
We do not sell, rent, or share your personal information with third parties for marketing purposes. We do not use your data to train AI models.
We use the following third-party providers to deliver the Services. Your data is shared with these providers only as necessary to perform their specific function:
| Data | Retention |
|---|---|
| Audio recordings (server-side) | Deleted from our servers immediately after transcription |
| Research mode submissions (recording, transcript, notes, voice settings) | Until the reported problem has been analysed, or until you request deletion |
| Audio recordings (on-device) | Auto-refreshed to retain only the most recent recording |
| Selected text and nearby text (voice editing) | Processed transiently; not retained on our servers |
| Recent text excerpt (optional dictation-accuracy setting) | Processed transiently; not retained on our servers; expires on-device within about 30 minutes |
| Magic link tokens | Expire after 15 minutes; deleted on use |
| Session tokens | Access tokens expire after 7 days; refresh tokens after 1 year |
| Usage / audit logs | 90 days |
| Sign-up funnel events (anonymous) | 90 days |
| Support communications and diagnostic reports | As long as reasonably necessary to respond to your request and troubleshoot the Services, unless a longer period is required by law |
| Crash diagnostics (iOS) | Until you request deletion |
| Optional aggregated analytics (iOS/Android) | Up to 37 days; deleted immediately on account deletion |
| Web error diagnostics (account page) | 30 days |
| Account data (email, subscription status) | Until you request deletion |
| Synced keyboard data (learned words, snippets, settings) | Until you request deletion |
| Terms acceptance record | Until you request deletion |
| Groq API key connected before October 21, 2026 (encrypted) | Until you remove it from your account or delete your account |
No method of transmission over the internet is 100% secure. While we strive to protect your data, we cannot guarantee absolute security.
You have the right to:
You additionally have the right to:
To exercise any of these rights, contact privacy@shuovo.com.
We do not sell your personal information. You have the right to know what personal information we collect and to request deletion. Contact us at the email above to exercise these rights.
Your information may be processed in countries other than your country of residence, including the United States, where our infrastructure providers operate. We take steps reasonably necessary to ensure your data is treated securely and in accordance with this Privacy Policy.
The Services are not directed at children under 13 (or 16 in the EEA). We do not knowingly collect personal information from children. If you believe a child has provided us with personal data, please contact us and we will delete it promptly.
Our web application uses a single HttpOnly session cookie for authentication purposes only.
The Shuovo Chrome extension stores data locally in Chrome's extension storage: your session token, account email, device ID, extension settings, a short-lived (5-minute) cache of your custom dictionary terms, and any voice recordings that could not be transcribed (kept so you can retry them, as described in "Voice Transcription and Device Data"). This data stays in your browser profile; the session token is removed when you sign out, and all extension data is removed when you uninstall the extension. The extension does not use cookies. It also holds a short-lived random visit identifier used for the aggregate sign-up measurement described under "Product Analytics" above, which is erased when you close the browser.
Our public web pages load Cloudflare Web Analytics, a privacy-focused analytics tool that measures aggregate page traffic without using cookies, fingerprinting, or collecting personal data. It does not track you across other websites. See Cloudflare's Web Analytics for details.
Our home page and account page load the Google tag (gtag.js) for Google Ads conversion measurement. This lets us see whether a visit that originated from a Google Ads campaign resulted in a sign-up. It may set Google advertising cookies (such as the conversion-linker cookie) and share limited conversion data with Google. We use it only to measure the effectiveness of our advertising and not to build advertising profiles or sell your data. See Google's Privacy Policy and Advertising pages for details.
We may update this Privacy Policy from time to time. We will note the revision date at the top of this document and, where feasible, notify you of material changes via email or in-app notice. Continued use of the Services after changes constitutes acceptance of the updated policy.
If you have questions or concerns about this Privacy Policy, please contact us at: