100% free · no signup · no install

Translation QA Validator

28 deterministic checks across 101 languages. Paste text or upload DOCX. Free, no signup.

MQM-compatible export. Word suggestions as our killer feature — see what we catch below ↓

Glossary (optional)

Add a client terminology list — the validator flags segments where the source term is present but the prescribed translation is missing. For Russian/Ukrainian targets, matching is morphology-aware.

or

Anonymous limit: 1 MB per file. Sign in for unlimited uploads.

Glossary (optional)

Add a client terminology list — the validator flags segments where the source term is present but the prescribed translation is missing. For Russian/Ukrainian targets, matching is morphology-aware.

or

Anonymous limit: 4 MB per file. XLIFF/SDLXLIFF declare their language pair; for TMX you can override below.

Glossary (optional)

Add a client terminology list — the validator flags segments where the source term is present but the prescribed translation is missing. For Russian/Ukrainian targets, matching is morphology-aware.

or

What we catch — and what makes us different

28 deterministic checks across locale, structure, terminology and grammar. Honest about what's a real error, what's noise, and where we still need a human.

28 checks 101 languages MQM-compatible Free, no signup
🧬

Concatenated tokens

Catches DOCX run-join defects: `спортуВідділення`, `UkraineDénomination`. Most QA tools miss this entirely.

🔍

OCR damage flags

Source has `■■2/2025` or `^^^`? We warn that nearby digits in the translation may be LLM reconstructions.

🏷️

Mixed-script in Cyrillic

`MHA ТОВ` + `Michael Zlatkin` left unromanised — translator decides once, consistency across the doc.

📑

Doc-level rollup

Translator skipped 80% of the doc? ONE clear CRITICAL alarm instead of 35 per-segment lines.

🎯

Locale conventions

Quotes, decimal/group separators, NBSP — driven by Unicode CLDR for 101 languages.

🔢

Numbers across locales

`1,000.50` matches `1.000,50`. Postal codes, dates, IDs don't false-positive any more.

📋

Glossary with morphology

CSV/TBX/TSV. For Slavic targets, pymorphy3 matches `параметрів` / `параметрах` to glossary entry `параметри`.

🚫

Forbidden terms

Inverse glossary — client's do-not-translate / banned-spelling list (competitors, deprecated brand variants).

📅

Date & currency formats

`12/31/2025` vs `31.12.2025`; `$5.00` vs `5,00 €` (with NBSP). Per-locale rules via Babel.

🌍

Language sanity

Detects when you uploaded the wrong file — declared `uk` but text is actually `ru`. Catches a real PM bug.

📝

Word suggestions (Google-Docs-style)

Get your .docx back with our QA findings as Word comments — open in Word, review the suggestions just like Google Docs.

📊

MQM-compatible export

DQF-MQM JSON ready for Phrase LQA, memoQ LQA, ContentQuo scoring. Plus PDF & DOCX outputs.

What we don't do (yet)

We can't tell you if the translation is semantically correct — that's still the human reviewer's job. Domain-specific spelling on rare medical/legal terms is demoted to MINOR, not promised as catch-all. Browse every check →

Help us improve

Found a false positive? Missed a real error? Let us know — we read every message.