Skip to content

QA checks 1.0 #2858

@ZuzanaOdstrcilova

Description

@ZuzanaOdstrcilova

1. Problem

Translation quality issues are a common source of bugs and user confusion in localized products. Even with Tolgee's existing features, users still struggle to catch common translation errors such as missing text, inconsistent formatting, broken placeholders, spelling mistakes, punctuation mismatches, and syntax issues. These errors require manual review or external tools, slowing down translation workflows and releases.

Without built-in quality feedback directly in Tolgee's UI, teams spend time hunting for problems that could be automatically detected. Other localization platforms already use automated QA checks to reduce manual effort and improve translation quality.

More of our customers have asked about this feature in the past. At the beginning of last year, we already tested designs with some users, and even though we moved the feature to 2026, it remains a priority on our Roadmap. This feature will make our tool more reliable and valuable for larger companies and those for whom precise, mistake-free translation matters.

The business case / metrics:
We expect that this feature can drive user adoption, customer acquisition and lower churn. It's adds additional layer of reliability above the AI translation.


2. Appetite

1 full cycle / 4 weeks
Build the core QA functionality first, then use remaining time to add as many QA checks as possible.


3.&4. Solution & UI (basic drawings)

We already have specified solution in Figma designs here:
https://www.figma.com/design/UYsyo57SCcWFpyMirhGmv4/Tasks-2025?node-id=10-14842&t=xZaJw19WPWNPChLa-1

UI Views:

  • Dashboard view - show QA issues on each language row (plus dialog with types of QA issues and CTA buttons
  • Translation view - icon QA issues, marking of the QA issue in the non-edited text (persisted issues only), live preview QA panel during editing, QA check box on the right side, solving-ignoring of the issue, dialog for quick QA solving, stale-aware loading indicators
  • Filtering of QA issues
  • Settings of QA
  • Support for AI prompt QA check — separate section in QA settings with add/edit/toggle per AI check, reuse AI playground panel for prompt editing (make it generic for both translation and QA modes)

Types of QA:

  • AI QA check: Configurable - Important, but cuttable if it becomes a rabbit hole. Basic rule-based checks are higher priority.
  • Empty translation
  • Lenght issues (out of scope for now, key length functionality is not yet prepared in Tolgee)
  • Spaces mismatch (+extra spaces)
  • Unmatches new lines
  • Character case mismatch
  • Missing numbers
  • Repeated words
  • Punctuation mismatch
  • Brackets mismatch
  • Special character mismatch
  • Different URLs
  • Inconsistent placeholders
  • Inconsistent HTML
  • ICU syntax
  • Spelling
  • Unresolved comments

5. Rabbit Holes

  • Handling the QA checks on backend and propagation to frontend...
    • Do we need to live update QA checks when editing or are we going for async operation?
    • Resolved: Both. Live preview in the QA panel during editing (stateless endpoint). Persisted checks run async on save. A qaChecksStale flag on Translation bridges the gap — set true on save (same transaction), cleared when QA issues are persisted (same transaction). Frontend shows loading state while stale. No inline highlighting during editing — panel is sufficient.
  • Handle QA checks in batch when user enables the QA check feature.
  • AI QA check - Connection to LLM providers, enabling user to specify custom prompt, enable testing like in AI playground
    • What happens when configuration changes?
    • Clarified: Separate section in QA settings under rule-based checks. Each AI check has add/edit buttons that navigate to AI playground panel (reused). Make AI playground code generic to support both translation and QA check modes. User can set custom prompt, enable/disable system prompt parts, or use advanced mode for fully custom prompt.

6. No-Goes

  • Ignoring simple QA checks in favor of complex ones
  • Automatic modification of translations
  • AI-based linguistic or stylistic evaluation (just connection with user defined AI prompt)

7. Success Criteria

Functional:

  • QA issues are visible directly in the translation workflow
  • Users can easily identify and fix common translation problems
  • Core QA functionality is stable and usable
  • A meaningful set of QA checks is implemented
  • QA checks do not slow down normal translation work
  • Users are satisfied with final translation quality

Business
[Specified in internal Fibery]

Mesurement:

  • PostHog events for each QA
  • UX Testing with core users
  • Internal UX tests

Metadata

Metadata

Labels

design-readyDesign proposal is ready, waiting for implementationpitch-donePitch prepared for bettingroadmap itemItems that are automatically added to the Roadmap

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions