History
Translation history
History saves what you translated so you can search, replay TTS, mark favorites, or export later. Off by default for everyone. Two storage layers: device-local (any plan) and cloud-synced (Pro/Team only).
Four toggles, all off by default
Saving anything requires the master toggle on, plus the per-source toggle for whatever surface you want to capture. Cloud sync is a separate plan-gated switch.
Master · Save translation history
Without this, nothing is saved anywhere — local or cloud. The kill switch. Off by default for everyone.
Per-source · Save selection translation history
Captures translations from the selection popup. Independent toggle from input.
Per-source · Save input translation history
Captures translations that replaced what you typed in input fields (Alt+I). Independent toggle from selection.
Cloud · Save history to server
Pro/Team only. Off by default even on those plans. Enables backend storage with retention by tier.
What gets captured (and what doesn't)
Selection-popup translations and input-field replacements are the only sources captured. Page translation is deliberately not saved — capturing every paragraph of every translated page would saturate local storage in minutes. Subtitle cues are also not yet wired to history.
Local vs cloud
Two layers, not one merging into the other. Local is always primary; cloud is a separate optional copy.
Device-local (any plan)
Lives in browser.storage.local. Capped at 5 000 entries — oldest non-favorites trim out when the cap is hit. Persists across browser restarts but not across reinstalls. No cross-device sync.
Cloud (Pro / Team)
Lives in our Postgres. Unidirectional: extension → server, fire-and-forget on each translation. The web dashboard at /dashboard/translations reads this layer; the extension itself reads local-only. No bidirectional sync — re-installing the extension doesn't pull cloud history back.
Plan availability
Cloud sync is the gated piece. Local history is open to everyone.
The history page
Full-screen page opened from the toolbar popup. Five things you can do.
Calendar view
Click a day to filter to that date. Days with history show a small indicator dot.
Search
Plain substring match across original and translated text. No regex, no prefixes like "ru:" — just type words you remember.
Source filter & favorites
Filter by source (input / selection / all). Star icon toggles favorite — favorites get their own tab and are exempt from the 5 000-entry trim.
Replay TTS
Speaker icon next to each entry. AI-voice entries cache the generated audio in the record; replay doesn't re-bill tokens.
Delete & bulk delete
Per-entry trash icon, or "Clear all" for bulk. Clearing also wipes the matching server record if cloud sync is on.
Export to Excel / Sheets
Export the filtered view to a TSV file (UTF-16 LE with BOM, Excel-compatible). Columns: Original, From, To, Translation, Style, Intensity, Source, Date. Cells starting with =, +, -, @ are prefixed with a single quote to prevent formula injection when opened in Excel.
What survives a Pro → Free downgrade
Cloud history is deleted immediately on downgrade — the backend clears all server entries and sets the cloud toggle to off. Local history is untouched: it stays in your browser even after you lose Pro. If you upgrade back later, the cloud toggle starts off again and only newly-translated entries from that moment forward sync up.
Common issues
Most history confusion comes from the four-toggle model and the local-vs-cloud split. Each row covers a real case.
EMPTY_HISTORYHistory page is empty after using the extension
Master toggle or per-source toggle is off. Open Options → General → History section and turn on both the master switch and the source you want to capture (selection / input).
NO_CLOUD_TOGGLECloud sync toggle is greyed out
You're on Free. Cloud sync is Pro/Team only. Local history still works.
MISSING_AFTER_REINSTALLHistory gone after reinstalling the extension
Local storage clears on uninstall. If you had cloud sync on, the web dashboard at /dashboard/translations still has your server entries — but the extension does not re-download them. Local history starts empty.
WEB_DASHBOARD_LATEWeb dashboard missing entries the extension just made
Cloud sync is fire-and-forget — the request runs in the background after each translation. Refresh the dashboard a few seconds later; if entries are still missing, check that cloud sync is on and your plan is Pro/Team.
SEARCH_NO_MATCHSearch can't find an entry I remember
Search matches only the original and translated text. It does not search language codes or dates — use the calendar view for date filtering. Try a shorter or different word.
PAGE_NOT_SAVEDMy page translations aren't in history
By design — page translate is too high-volume to save (would max local storage in minutes). Only selection-popup and input-field translations are captured.
OLDEST_GONEOld entries disappeared after heavy use
Local cap is 5 000 entries. When hit, oldest non-favorites trim out. Star the ones you want to keep — favorites are exempt.
TEAM_TOGGLE_FLIPMy history toggle keeps reverting to the team setting
On first options-page open, members sync from the team owner's cloud toggle once. After that you can override locally — the sync flag prevents repeat resets.