Privacy Policy
Last updated: September 2026
Focus Companion is built around a simple rule: analyze your focus context on your device and send nothing. The question it answers — "does this page match what I said I'm working on?" — is answered by a model running inside your own browser. This page explains exactly what that means.
Nothing you read leaves your device
Analysis runs on Chrome's built-in AI (Gemini Nano), inside the extension's own background worker, on your machine. There is no server, no account, and no third-party AI provider. The extension does not transmit page content, goals, activity signals, or stored data. Chrome itself downloads its built-in model after you explicitly ask it to; that browser-managed download contains none of your Focus Companion data.
Earlier alpha code could send page snapshots to a gateway we operated, which forwarded them to DeepSeek. That path has been removed from the current Chrome Web Store package.
What Focus Companion looks at
While a focus session is running, on the page you're actively viewing, Focus Companion reads:
- The page's domain and first two path segments, used only for local session context and per-site counters
- The page title, up to 240 characters
- Up to eight headings, each up to 120 characters
- The meta description, up to 400 characters — and only when its wording overlaps the page's own text, so a site-wide tagline is dropped rather than read
- An excerpt of visible page text, up to 6,000 characters. This can include signed-in/private content and visible text in rich-text or contenteditable editors
- Aggregate behavior signals: scroll activity, edit/mutation counts, media playback state, navigation frequency
The on-device model does not receive the web address. The domain is blanked before the model snapshot is assembled, and no path, query string or fragment is included in that snapshot. Separately, the extension uses the domain and first two path segments locally for session context; the full address, query string and fragment are not stored.
Focus Companion does not record raw keystrokes. Its text walker excludes
form controls such as input, textarea, select
and option, so their current values — including password, payment
and one-time-code values — are outside the snapshot. Visible DOM text is
included, including rich-text drafts, previews, labels and text that a site
mirrors outside a form control.
Local development pages served from localhost,
127.0.0.1 or ::1 are treated like other ordinary web
pages and can be analyzed during a focus session. You can exclude any of them in
the extension's settings.
Navigation bars, headers, footers, sidebars, toolbars, menus and buttons are left out of the text excerpt, so what is read is the page's content rather than its furniture.
Before this text reaches the model, an automatic filter replaces common email-address, phone-number, API-key and token patterns.
The boundary is simple
Standard form-control values and raw keystrokes are outside the snapshot. Visible DOM text is inside it, including custom editors, rendered previews and text mirrored by a site. Gemini Nano analyzes that snapshot on your device. Nothing is transmitted. Exclude a site if you do not want its visible text analyzed locally.
Questions you should not have to guess
Does it read signed-in or private pages?
Yes. Visible text on private repositories, inboxes, dashboards and other signed-in pages can be analyzed locally during a focus session.
Does it read what I am writing?
Yes. Visible text in contenteditable or rich-text editors and rendered previews is included. Raw keystrokes and the live values of standard input, textarea and select controls are excluded.
Is visible sensitive text included?
Yes. If a site renders sensitive information as visible DOM text, it is part of the local snapshot. It is analyzed on your device and is not transmitted.
How do I stop a site being read?
Add that site to Excluded sites in Settings, stop analysis on the current site, or end the focus session.
What is stored, and where
Everything — your goal text, session history, reports, preferences and the per-site counters the extension uses to learn where you usually work — lives in your browser's local storage. It is never synced anywhere. There is no server to store it on.
Those per-site counters are keyed by domain plus the first two segments of the address, so they amount to a private record of where you spent session time. They stay on the device, and clearing your data from the extension removes them.
You can export or delete this data at any time from the extension, and uninstalling the extension removes it entirely.
What we don't do
- We do not send your page content, your goal, or anything else to a server.
- We do not sell or share your data with third parties for advertising.
- We do not run any analytics, tracking, or telemetry SDK.
- We do not require or use an account, login, or identity of any kind.
Chrome Web Store Limited Use disclosure
Focus Companion's use of information received from Chrome APIs complies with the Chrome Web Store User Data Policy, including the Limited Use requirements. Data is used only to provide or improve the extension's focus-session features. It is not transferred to third parties, used for advertising, used to determine creditworthiness, or made available for humans to read.
Your controls
You can export a session's data, delete it, or clear all local state at any time from the extension popup. You can also exclude specific sites (including whole subdomains with a wildcard) from ever being analyzed; on an excluded site no page text is read at all. Uninstalling the extension removes everything Chrome stored on its behalf.
The export is a file you save yourself. It contains the session's own record and, in developer builds only, the exact text that was analysed — so treat an export the way you would treat a screenshot of your screen.
Children's privacy
Focus Companion is not directed at children and is not intended for use by anyone under 13.
Changes to this policy
If this policy changes in a material way, we'll update the date at the top of this page. Continued use of the extension after a change means you accept the update.
Contact
Questions about this policy or your data: huynhthenghia311@gmail.com.