Translations that find their own gaps

2026-10-16 · CallPages Team · Release, Languages, Translations, Websites

Translations that find their own gaps

CallPages translation is now self-healing: a background sweep discovers every page-and-language pair that is enabled but has no translated content, and queues the translation job automatically. Owners no longer have to open each page in the dashboard to trigger its translations.

Turning a language on used to be only half the job. Translations were generated lazily — when someone next opened the page — so pages nobody opened stayed untranslated: by the fleet’s own count, dozens of enabled page-and-language pairs had zero translations. A visitor choosing that language met a half-empty page, and the language switch had promised more than the system delivered.

The gap between ‘enabled’ and ‘translated’

A language switch is a promise: visitors who pick this language get this page, whole. Behind the switch, though, translation work used to start only when the page’s editor was opened — a lazy trigger designed for a smaller fleet. At fleet scale it quietly failed: pages that owners rarely opened kept their enabled languages empty, and nothing anywhere reported the difference between switched-on and actually-translated.

Discovery, not hope

The sweep closes the loop mechanically. It walks every page, reads which languages are enabled, checks which content actually exists in those languages — authored pages, products, collections, website sections, and the site’s own chrome — and enqueues a translation job for every gap it finds. The jobs run through the same pipeline as a manual trigger; the only difference is that nobody has to remember, notice, or click.

Its first day made the backlog visible: 76 jobs queued across the fleet within hours of the release — weeks of accumulated gaps, found in one pass. From here the sweep is routine maintenance: enable a language anywhere, and the system itself makes sure the content follows.

The completeness rule still stands

Discovery feeds the same standard the language system already enforced: a page in an enabled language must be fully in that language — content and chrome alike — checked by automated completeness tests with a small, explicit allowlist. The sweep’s job is to make sure no page is left out of that standard simply because nobody opened it.

How it works

  1. A discovery sweep runs on a schedule and compares, for every page, the languages switched on against the content actually translated — pages, products, collections, website sections, and chrome.
  2. Every gap it finds becomes a translation job in the same queue the dashboard trigger used; nothing waits for a human to notice it.
  3. On its first day live, the sweep queued 76 translation jobs across the fleet on its own — the backlog that used to wait for someone to open each page by hand.
  4. Completeness still rules: a page in an enabled language must be fully in that language, and the completeness tests keep watch over the result.

See it live: Mi Junta

Mi Junta — CallPage · Mi Junta — website

Mi Junta’s website rendered fully in Russian: navigation, call button, headings and body all in Russian

Mi Junta’s website in Russian, captured on production 2026-10-16: navigation, the call button, headings, and body — the whole page in the language, not a translated paragraph in a Spanish frame. This is the end state the sweep now works toward on every page, automatically.

Open your page settings →

Create your call page

Turn your website visitors into phone conversations — set up in under two minutes.

Create your call page →

Keep exploring

← All posts