Privacy

Where Cuebird keeps each kind of information, written from the actual code. The full, legally binding privacy policy will be published with the operator’s details before launch.

As of October 30, 2026

Summary

  • You can use Cuebird without an account. If you sign in, we receive only your email address.
  • Words, cards, recordings, practice history, card lists, your daily goal, your files and imported dictionaries are stored in this browser.
  • Only the text a feature needs goes to our server: subtitle lines to translate, the word you looked up and its sentence, and subtitle lines for word analysis.
  • Audio and frames from cards, shadowing recordings and tab audio for live subtitles are never uploaded. The one exception is when you choose server transcription for one of your files.
  • No ads, analytics or trackers. We don’t sell personal data.

Stored on your device only

The following is kept in browser storage (IndexedDB, extension storage, OPFS). It isn’t synced or sent to our server, and it’s removed when you uninstall the extension.

  • Card audio and screenshots, shadowing recordings, and shadowing and dictation history
  • Card lists, flashcard and quiz results, and adaptive levels
  • Your daily goal, cards studied per day and your streak
  • Your files (video, audio, subtitles) and subtitle files attached to videos
  • Imported StarDict and MDict dictionary files
  • Settings (speed, shortcuts, panel position and so on) and the cached transcription model

Sent to our server

Our server handles translation, dictionary lookups and word analysis. Here is what it receives.

FeatureWhat is sentWhen
Subtitle translationSubtitle lines (text), language codesOnly when platform translations, YouTube auto-translate and Chrome’s on-device translator all fail
DictionaryThe word, its base form, the sentence it came from, language codesWhen you click a word to look it up
Word analysisSubtitle lines near the playhead, language codeAutomatically while you watch (word splitting and base forms). Processed on our server, not forwarded
Remote configNothingAt startup and every 30 minutes. Returns feature switches and page selectors only, never code
Usage limitsSigned out: IP address (the server stores only a keyed hash, never the address itself). Signed in: user IDDaily usage is counted on each translation and dictionary request

When a word isn’t in the open dictionary or a line can’t be handled by a free source, the server passes only the text to an external translation or AI provider (whichever of Microsoft Azure Translator, DeepL, Google, NAVER Papago, OpenAI, Gemini and Anthropic are enabled in production). Your email, user ID and IP address are never sent to them.

So the same subtitle isn’t translated twice, the server keeps translated lines and their translations in a shared cache that isn’t linked to any user. The dictionary cache stores the word and its meaning; the sentence is kept only as a hash. Each shared-cache entry stops being used and is deleted 30 days after it was stored (server setting SHARED_CACHE_TTL_DAYS).

Sign-in and sync

You sign in with a 6-digit code sent to your email. There is no password. Login codes and session tokens are stored only as hashes. The production server never writes login codes or email addresses to its logs, and if no email delivery service is configured it refuses sign-in requests instead of creating a code.

While signed in, two things sync about once a minute:

  • Word statuses: language, base form, status, timestamps
  • Card text: sentence, translation, word, note, review schedule, and the source video’s platform, ID, title, URL and time range

Card audio and screenshots are stripped on your device before syncing, and stripped again on the server. Card lists, quiz results, your daily goal, practice history, settings, your files and imported dictionaries don’t sync.

So deletions reach your other devices, a word you delete stays on the server marked as deleted, with its language, base form and status; a deleted card keeps only its ID. Both are removed when you delete your account.

Audio, video and screen

  • Video streams are never downloaded, recorded or altered, and DRM is never touched.
  • Audio cards (Alt+Q) store a few seconds of tab audio and one frame on your device. They only leave it if you send them to Anki on your own computer (127.0.0.1:8765).
  • Live subtitles from tab audio capture audio only when you turn them on, transcribe it on your device with Whisper, and never store it.
  • Transcribing your files: the on-device engine keeps the audio on your computer. If you choose the server engine (Pro), the audio is sent to our server in pieces of up to 10 minutes and passed on to OpenAI (whisper-1). Our server doesn’t write the audio to disk; for free users it records only the seconds used.

If your browser can’t transcribe on device, the server engine may be pre-selected on the My files page. If you don’t want audio to leave your computer, check the engine before you start.

Speech recognition

Shadowing’s speech recognition and the Say it quiz use the browser’s speech recognition (Web Speech API). Chrome may send that audio to Google’s speech servers to turn it into text. This is handled by the browser under Google’s privacy policy. Cuebird never receives the audio or the result; only the recognised text and your score are stored on your device.

A one-time notice explains this just before speech recognition is first used. Choose Turn off speech recognition there, or later switch off Use browser speech recognition under Settings → Speech recognition, and speech recognition never starts. Shadowing then records only, for you to compare with the original by ear, and the Say it quiz asks you to say the sentence and mark yourself right or wrong. Speech recognition also doesn’t run unless you grant microphone access.

Services your browser connects to directly

  • Supported platforms and their subtitle servers: your browser fetches subtitles for the video you’re watching directly, using your existing sign-in. These requests don’t go through our server.
  • Hugging Face: the Whisper model is downloaded once for transcription. No audio is sent.
  • Chrome’s on-device translator: asks before downloading its model, then translates on your device.
  • Anki (127.0.0.1:8765): a program on your own computer; you’re asked for permission the first time. This is the only optional permission the extension asks for while running.

This website (cuebird.dev) uses no cookies, analytics, or third-party fonts or scripts either.

Retention

DataWhereHow long
Everything stored on your deviceYour browserUntil you delete it or uninstall
Email, plan, synced words and cardsServerUntil you delete your account
Login codes (hashed)ServerExpire after 10 minutes; codes older than a day are deleted on the next code request
Sessions (token hash)ServerExpire 90 days after last use; deleted immediately on sign-out
Daily usage (a hash of the IP address when signed out)Server35 days
Server transcription seconds (free users)ServerUntil you delete your account
Shared translation and dictionary cacheServer30 days from when each entry was stored (not linked to users)
IP address for rate limitingServer memoryBriefly, never written to disk

Managing your data

  • Export: Settings → Account → Export data downloads your server data as a JSON file.
  • Delete: Settings → Account → Delete account immediately removes your email, synced words and cards, usage and sessions, and signs out every device. Data in this browser stays until you uninstall the extension.
  • Stop syncing: sign out. Microphone and Anki access can be revoked in your browser settings.

Cuebird isn’t directed at children under 14 (under 13 in the US), and we don’t knowingly collect their data.

Not yet decided

Cuebird hasn’t launched, so the following is still open. This page will be updated, with a new date, as each is settled.

  • Operator name, privacy officer and contact address
  • Hosting provider and country (including international transfers)
  • Which translation and AI providers are enabled in production, and their retention policies
  • The email delivery service for login codes (the code currently supports Resend only) and its retention policy