Privacy Policy
Last updated: September 29, 2026
What LinguaLens sends to its servers
LinguaLens sends a short fragment of visible text when it needs context to translate a word. It does not send a record of the page or your browsing activity.
- Short visible-text fragments.The clause around the studied word, hard-capped at 200 UTF-16 code units for all other supported languages and 80 for Chinese, Japanese, and Korean. Window edges stay on complete Unicode grapheme boundaries so a visible character is never split.
- No URLs or page metadata.We don’t send the URL, domain, page title, or time-on-page.
- No full-page or private-input capture.Full HTML, DOM structure, screenshots, and form values stay in your browser.
- No browsing history.We don’t send or build a record of pages you visit.
A fragment comes from visible page text, so it may incidentally contain personal information that appears near the studied word. The sections below explain every place that context can be retained and for how long.
Who runs LinguaLens
LinguaLens (“we,” “us,” or “our”) is operated as an independent project. With LinguaLens, some words from your decks appear as translations while you browse. It leaves a word alone when it is unsure of the meaning.
This Privacy Policy applies to the LinguaLens browser extension (Chrome and Firefox), the LinguaLens web app, and the LinguaLens backend API. It covers what we collect, what we do with it, what we don’t collect, and what rights you have over it.
We don’t sell your data, and we don’t fund LinguaLens through ads. The service is funded by subscriptions.
What we collect
Account information
When you create an account, we store your email address, your display name, and the authentication provider you used (e.g., Google). This sits in our database and is what lets us identify your account, sign you in, and email you about the account.
Vocabulary and learning data
Your decks, cards, scheduling state, review history, and exposure counts (how many times a word has been replaced on pages you’ve viewed) live on our servers and sync to the extension. Deleting a card hides it from use and syncs that deletion; the stored records remain. Deleting a deck removes the deck and its card links from use, but does not erase the vocabulary. Account deletion removes account-linked data, subject to the legal, payment, security, and audit exceptions below.
Visible-text translation context
To translate the right meaning of a word, the extension needs a few words of context around it. It sends our backend the studied word, language pair, and a short visible-text fragment, typically the clause around the matched word. The fragment is hard-capped at 200 UTF-16 code units for all other supported languages and 80 for Chinese, Japanese, and Korean. Window edges stay on complete Unicode grapheme boundaries so a visible character is never split. Our backend routes the translation request to a provider and returns the result to your browser.
The fragment may incidentally contain personal information if a name, email address, or other personal detail appears in that visible text. LinguaLens does not separately extract those details, and the fragment is not accompanied by a URL, domain, page title, screenshot, form value, or browsing-history record.
Temporary translation jobs
When a translation needs asynchronous sense or grammar work, a job in our database can contain the fragment while that work runs. Successful sense-resolution jobs are normally removed after a 30-minute deduplication cooldown. Ordinary failed jobs are normally eligible for cleanup after seven days; because cleanup is best-effort, deletion can occur later. A pending job remains until it is processed.
Quality samples
We retain a bounded reservoir of translated fragments per language pair and day so we can check whether a served translation fit its context. Samples are grouped into UTC day buckets and are normally deleted after judgment. Daily cleanup removes unjudged samples and fully processed rows once their bucket is more than seven days behind the current UTC date. If a judged row’s corrective effect or aggregate metric is incomplete, it remains as a durable outbox and is retained until both steps finish.
Shared sense exemplars
To distinguish meanings such as a river bank from a financial bank, a learned sense can retain up to eight exemplar fragments, each capped at 200 characters. These exemplars are stored with a shared sense inventory, without a user ID, account ID, URL, domain, or page metadata. They remain until replaced by newer examples or until the shared sense inventory is removed. Because they are not account-linked, they cannot be located or deleted by account ID.
Signed-in example sentences
For review-card backs, the extension captures example sentences capped at around 200 characters. Our server stores up to five example sentences per vocabulary item, linked to the user’s vocabulary. Deleting a card or deck does not immediately erase its saved examples. They remain until account deletion. The extension can also hold local captured examples as described under Local extension data below.
Translation feedback
If you intentionally flag a translation, a user-feedback report containing the original word, translation, selected reasons, and optional comment is sent to our error-monitoring provider. It does not include the surrounding sentence. If you are signed in, we also store an account-linked correction containing the surrounding context so we can investigate and improve the translation. That correction remains until the account is deleted.
Exposure data
The extension counts words it replaces and whether each replacement stays on screen for at least one second. It sends daily totals for each word to our backend, without URLs, domains, or page-level data. Older installed versions also measure and send cumulative time spent on those replacements. Updated versions use a temporary timer to check the one-second threshold but do not collect cumulative duration. Previously collected duration totals may remain stored. We use the counts to show you how often you’ve seen each word, on your dashboard and on review cards. They don’t change when a word comes up for review; your ratings decide that.
Payment and subscription data
Paid subscriptions are processed by Stripe. We never see your card number, CVV, or bank account details. From Stripe we receive your subscription status, your plan, your billing period, and a customer identifier we use to gate access to paid features. That’s the entire payment record on our side.
Product analytics
We use a self-hosted analytics tool that runs on our own infrastructure. It counts anonymous page views and signup conversions. It doesn’t set cookies, doesn’t fingerprint you, doesn’t share data with third parties, and doesn’t see anything inside the extension. If we ever add deeper in-product analytics (e.g., feature-usage telemetry), it will be opt-in, with a consent prompt, and we’ll update this policy before we turn it on.
What we never send or store
The visible-text fragment is the page-derived input to translation. The following categories are not attached to that fragment and are not sent to our servers:
- URLs, domains, or page metadata.No URL, hostname, page title, visit timestamp, or time-on-page.
- Full page content.No whole article, page HTML, or DOM structure. Only the short visible-text fragment around a studied word.
- Browsing history.Nothing about which pages you’ve visited or in what order is stored or transmitted.
- Screenshots or DOM snapshots.No visual or structural capture of the page.
- Form values or third-party cookies.LinguaLens does not read or transmit values you type into forms or cookies from the sites you visit. It uses its own first-party cookies for the purposes described below.
This is different from claiming that a fragment can never contain personal information. If a name, email address, or other personal detail appears in visible text next to a studied word, it can be part of the fragment.
What we do with what we collect
- Account information.Sign you in, sync your decks across devices, send you the rare account email (e.g., a password reset).
- Vocabulary and learning data.Run spaced-repetition scheduling, sync your decks and review history across the extension and the web app, count replacements for review-card backs.
- Translation context.Choose the right sense and grammatical form, avoid duplicate provider work, measure translation quality, and improve shared sense selection within the limits described above.
- Example sentences and feedback.Show useful context on signed-in review cards and investigate translations that users intentionally report.
- Exposure data.Show you how often you’ve seen each word, on your dashboard and on review cards. Exposure data doesn’t change when a word is due; your ratings decide that.
How translation works, in detail
The extension never talks to a translation provider directly. Every request is routed through the LinguaLens backend. The provider receives the studied word, short visible-text fragment, language pair, and translation instructions needed to produce the result. It does not receive your LinguaLens account information, URL, domain, full page, browsing history, screenshot, form values, or page metadata. We have data processing agreements with our service providers.
Cookies
We use first-party cookies for keeping you logged in, remembering your theme preference, anonymized error reporting, and crediting partners who refer you to LinguaLens. No advertising cookies, no tracking cookies, no cross-site identifiers, no cookie data shared with third parties.
Chrome Web Store Limited Use compliance
LinguaLens is a Chrome extension and follows theChrome Web Store User Data Policy, including the Limited Use requirements. The four assertions Google requires every extension to publish, in their canonical form:
- LinguaLens only requests permissions necessary for the single purpose of providing vocabulary reinforcement through in-page word replacement.
- LinguaLens does not sell user data to third parties, use it for advertising, or use it for creditworthiness or lending purposes.
- LinguaLens only transfers data to third parties when necessary to provide the service (translation API calls), with user consent, for security purposes, or to comply with applicable laws.
- LinguaLens does not allow humans to read user data except with explicit consent, for security/abuse investigation, for legal compliance, or when aggregated and anonymized for internal operations.
Third-party services
Translation providers
The studied word, short visible-text fragment, language pair, and translation instructions are routed server-side to third-party translation providers under data processing agreements. The extension never contacts a translation provider directly. Providers may retain requests under their own policies.
Authentication
If you sign in with Google, LinguaLens uses Google’s OAuth 2.0. We receive your email address and your display name. We don’t request access to your contacts, calendar, drive, or any other Google data.
Error monitoring
LinguaLens uses a third-party error-monitoring service. Automatic technical reports can include an error message, stack trace, browser type, and OS version; they are designed not to include browsing content, and authentication tokens are scrubbed.
If you intentionally flag a translation, we send a separate user-feedback report to that provider containing the original word, translation, selected reasons, and any optional comment you enter. The surrounding sentence is not included in that third-party report. The provider may retain these reports under its own policy.
Payment processing
Stripe handles payments end-to-end. Card numbers and CVVs go directly from your browser to Stripe and never touch our servers. We see only your subscription status, plan, and billing period. SeeStripe’s Privacy Policy.
Where the data lives
Account data, vocabulary, temporary translation jobs, quality samples, shared sense inventories, signed-in example sentences, and account-linked corrections live in a managed database for their respective retention periods. Translation cache entries live in a short-lived server-side cache. The extension stores a local copy of your vocabulary, scheduling state, and captured examples in your browser so it works offline and the popup is fast. Connections between your browser, the LinguaLens backend, and the database are all over HTTPS/TLS.
We use reasonable technical and organizational measures to protect data, but no electronic system is fully secure and we can’t guarantee absolute security. We’ll tell you about a breach if one happens, on the timeline applicable law requires.
How long we keep data
- Account information.Kept while your account is active. Account self-deletion removes the account record and account-linked application data; records that must be retained for legal, payment, security, or audit obligations may follow their required period.
- Vocabulary and learning data.Deleting a card marks it as deleted; deleting a deck marks the deck and its card links as deleted. These actions do not immediately erase the stored vocabulary or learning records. They remain until account deletion, subject to the exceptions above.
- Translation cache.Translation results in the server-side cache are short-lived and are not keyed to your account.
- Temporary translation jobs.Kept while asynchronous work runs. Successful sense jobs normally remain for a 30-minute deduplication cooldown; ordinary failed jobs are normally eligible for cleanup after seven days, but best-effort deletion can occur later; pending jobs remain until processed.
- Quality samples.Grouped into UTC day buckets and normally deleted after judgment. Daily cleanup removes unjudged samples and fully processed rows once their bucket is more than seven days behind the current UTC date. A judged row whose corrective effect or aggregate metric is incomplete is retained until both steps finish, then deleted.
- Shared sense exemplars.A sense can keep up to eight exemplar fragments, each capped at 200 characters, until newer examples replace them or the shared inventory is removed. They are not account-linked.
- Signed-in example sentences and corrections.The server keeps up to five example sentences per vocabulary item. Card and deck deletion do not immediately erase those examples. Saved examples and account-linked translation corrections remain until account deletion, subject to the exceptions above. Local copies follow the local-extension retention below.
- Third-party translation and feedback requests.Retention is governed by the applicable provider’s policy and our data processing agreement.
- Local extension data.Stored on your device by your browser. User-scoped data is cleared when you sign out or switch accounts; you can also clear it by uninstalling the extension or clearing browser data.
Your rights over your data
These rights apply to everyone, regardless of where you live. If you’re in the EEA or the UK, they’re also guaranteed under GDPR.
- Access.Ask for a copy of the personal data we hold about you.
- Rectification.Ask us to correct inaccurate data.
- Erasure.Ask us to delete your data and your account.
- Portability.Ask for an export of your data in a machine-readable format.
- Object.Tell us to stop processing your data for specific purposes.
- Restrict processing.Ask us to limit how we process your data in certain situations.
Emailhello@lingualens.appand we’ll respond within 30 days.
Legal basis for processing (GDPR)
If you’re in the EEA or the UK, our legal bases for processing your data are:
- Contract performance.Processing needed to deliver the LinguaLens service you signed up for: account management, vocabulary sync, translations.
- Legitimate interest.Keeping LinguaLens reliable and secure through error monitoring and abuse prevention.
- Consent.For anything optional, including any future deeper analytics. Consent is opt-in and revocable.
California residents
The rights above apply to you under the CCPA and CPRA. Specifically:
- Right to know.Ask what categories of personal information LinguaLens has collected about you and how we use it. The answer is in “What we collect” above.
- Right to delete.Ask us to delete your personal information. Account self-deletion in Settings immediately removes account-linked application data. Shared sense exemplars are stored without an account identifier, so they cannot be matched to an account for self-service deletion.
- Right to correct.Ask us to correct inaccurate personal information.
- Right to opt out of sale or sharing.We don’t sell or share your personal information for cross-context behavioral advertising. There is nothing to opt out of.
- Right to non-discrimination.Exercising any of these rights won’t change what you get from LinguaLens or the price you pay for it.
Emailhello@lingualens.appto exercise any of these rights.
International data transfers
Your data may be processed outside your country of residence, including in the United States. When data crosses borders, we rely on Standard Contractual Clauses (SCCs) and equivalent safeguards, and we expect the same of our subprocessors.
Children
LinguaLens isn’t directed at children under 13 and we don’t knowingly collect data from anyone under 13. If you’re a parent or guardian and you think your child created an account, emailhello@lingualens.appand we’ll delete it. This is the LinguaLens position under the Children’s Online Privacy Protection Act (COPPA).
Changes to this policy
We’ll update this policy when something material changes: a new translation provider, a new analytics setup, a new data flow. When that happens we update the date at the top of this page and, where it’s practicable, we tell you in-app. Worth re-reading once in a while.
Contact
Questions about this policy or what LinguaLens does with a specific piece of data?
Email:hello@lingualens.app