Privacy Policy
Effective October 6, 2026
This policy says what Live Translator handles while you run a meeting, what stays only on your own device, and what we never see. It covers this site and the live caption socket each room opens.
Microphone audio never reaches our servers
Speech recognition runs inside your browser using the browser's own speech service. We do not capture, upload, or store microphone audio. That service is operated by your browser vendor - Chrome, for example, sends the audio it hears to Google's speech servers - so your browser's privacy notice applies while you dictate.
Caption text is sent to a translation provider
Each recognised sentence leaves the room as plain text and is sent to the DeepL API (api-free.deepl.com) once for every target language your audience selected, then broadcast back. Translating is the only purpose that text is used for: we do not train models on it or use it for advertising.
What a live room holds
A room keeps its most recent 40 caption segments so that a phone reconnecting a second later resumes in place instead of losing the sentence. That buffer is addressed only by the six-character room code, is never attached to an account, and is not used to build a searchable server-side archive of your meetings.
Meeting records stay on your device unless you turn on backup
The archive you see in the dashboard (title, duration, timestamps, source text and translations) is written to the local storage of the device that hosted the meeting, under the keys live-translator:meetings:v1 and live-translator:profile:v1. Cloud backup is off by default and nothing is uploaded until you switch it on in Settings. When it is on, each finished meeting is also stored once on our servers, linked only to the account identifier of your signed-in session (a Google account or an email account), so you can review it from another device. Transcripts are kept as ordinary data rows and used for nothing else. Turning the switch off only stops new uploads; regardless of the switch, every server copy is kept for 30 days from the moment it was uploaded and then deleted automatically, and you can delete it earlier at any time. Deleting a meeting in the dashboard removes the local copy and, if it was backed up, the server copy too. We keep at most the 200 most recent backed-up meetings for you and the list shows the latest 30.
Accounts and sign-in data
Google sign-in stores the name, email address and avatar Google returns, plus a signed session cookie. Email sign-in stores your email address, a display name, a PBKDF2-SHA256 password hash with its random salt and iteration count, counters for failed sign-in attempts, and SHA-256 digests of verification and reset links. We never store your password itself. For signed-in accounts we also store the number of live-translation minutes used in each calendar month, which is what the quota limit is enforced against. None of this data is used for advertising.
Purchases and subscriptions run through Polar
If you upgrade to Pro, payment happens on Polar's checkout page; we never see or store your card number or any other payment credential. We pass Polar only two things: your account identifier (as an external customer id, so a subscription can be matched back to your account) and the name and email address from your sign-in profile, when available, so the checkout form is pre-filled. What Polar sends back to us is the subscription status, the billing period and Polar's own customer id, and we keep those in our database to decide your monthly translation limit. You can review your subscription and invoices, or request deletion, in the customer portal run by Polar.
Cookies and tracking
This site sets three first-party cookies and loads no third-party trackers and no analytics scripts. locale records which language you picked so that a bare link opens in the same one; it is written by the language switcher and is readable by scripts. lt_session keeps you signed in and is HttpOnly. A short-lived state cookie exists only while the Google sign-in round trip is in flight, is scoped to the /api/auth path, is HttpOnly, and is deleted as soon as that round trip finishes. None of the three records your browsing behaviour.
Security
Pages and the caption WebSocket run over TLS. The session cookie is signed with HMAC-SHA256; a modified or forged cookie is rejected and you are simply treated as signed out.
How to reach us
This service is maintained by one individual developer. For questions about how your data is handled, or to ask us to act on data connected to you, write to 1079540045@qq.com. Meeting archives stay in your own browser unless you turn on cloud backup (see above); if you did, describe what happened and we can act on the copy tied to your account.
When our handling of data changes, we rewrite this page and move the effective date above. This policy describes this service only; it does not cover DeepL, Google, or your browser vendor, each of which processes the data described above under its own terms.