Subtitle Overlay

Privacy Policy

A summary of what data the extension stores, what (very little) it sends, and what it never touches.

v1.7.0 Effective 2026-09-13

Subtitle Overlay is a Chrome extension that lets you overlay subtitles on any video playing in your browser. We take privacy seriously and follow the principle of collecting only what is strictly necessary to make the extension work.

01

Data stored on your device

The extension uses chrome.storage.local (Chrome's per-extension local storage) to remember:

For refresh recovery, chrome.storage.session also holds the current tab's parsed subtitles, timing adjustments, interruption state and video identity in browser memory, capped at 2 MB per snapshot. A subtitle-language correction, if you make one, is kept for that tab and video in the same memory storage. These records are removed when the tab closes and do not survive a browser restart. Turning off auto-restore disables subtitle snapshot restoration. No session subtitle text or URL identity is sent to analytics or synchronised to another device.

All of the above stays on your device. None of it is transmitted anywhere unless you explicitly perform an action that requires a network request (see below).

02

Data sent to external services

1. OpenSubtitles.com: search, suggestions and downloads

When you search, or use automatic subtitle suggestions on supported sites, the extension sends your query or the detected title, the selected filters and the extension's API key to api.opensubtitles.com. Downloading sends the selected subtitle file identifier and fetches the file that comes back. Both are subject to OpenSubtitles' own limits. See OpenSubtitles' privacy policy.

2. Anonymous usage analytics: opt out via Settings

If you leave the "Share anonymous usage data" toggle enabled (Settings → General), the extension sends anonymous product analytics to PostHog (US/EU region). This is used to understand which features matter and what to build next. We send:

Network services receive the connection IP address. PostHog can retain it and derive approximate location fields, and such fields are present in the current project. A random installation ID does not make those records fully anonymous. We do not use session replay and never upload recordings of the page.

You can disable analytics at any time in Settings. Opting out may send one opt-out event; behavioural analytics stop after that.

3. Smart Sync model: only when you install it

The voice-activity model is downloaded from fivestar1103.github.io/subtitle-overlay/models/silero_vad.onnx. The optional permissions also cover kuiperbelt.site for a planned domain redirect. Chrome asks for model-host access when setup needs it, and the downloaded bytes are checked against an expected size and SHA-256 digest.

On supported browsers an optional setup step can ask Chrome to install local speech-recognition data. Chrome manages those downloads. Recognition explicitly requires processLocally=true; if local recognition cannot run, the extension falls back to voice-activity detection. It never switches to cloud speech recognition.

When you start Smart Sync, the extension processes part of the current tab's audio in memory. Audio samples and recognised words are never uploaded and never appear in usage analytics. Normal use saves no captured audio.

4. Gumroad licence check: activation and periodic verification

Activating Pro sends the licence key and product identifier to api.gumroad.com. Chrome asks for the optional origin permission when needed. The extension stores the key, the sale identifier if one is returned, and the verification time locally. A verification is trusted for 24 hours. A network failure keeps the key but may pause Pro until a check succeeds. Names and email addresses returned by Gumroad are not stored in the licence record or sent to PostHog. Gumroad's privacy policy covers the purchase data they hold.

5. Feedback: only when you open and submit the form

The popup and the in-video side panel link to a PostHog-hosted feedback form. It sends only the answers you type. A site or player name is requested when you report an incompatibility; contact information is optional.

03

What we never send to product analytics

We never send
  • The text content of any subtitle file: neither files you upload nor files you download.
  • Full page URLs, paths, query strings or fragments. Analytics may carry the hostname and a one-way SHA-256 video hash, as described above.
  • Video content, audio, screenshots or page DOM content. Smart Sync audio exists only in memory during a sync run you started.
  • Names, email addresses or payment details. A licence key goes to Gumroad for verification; optional feedback may carry contact information you chose to give. IP data is described above.
  • Browsing history outside of subtitles you actively load.
04

Permissions

05

Your controls

06

Children

Subtitle Overlay is not directed at children under 13 and does not knowingly collect data from them.

07

Changes to this policy

If we materially change what data is collected or how it is used, this document will be updated and the effective date at the top revised. The latest version always lives at this URL.

08

Contact

Questions or concerns? Contact the maintainer through the Chrome Web Store listing's support tab.