Catch translation errors before they ship
i18nlint checks your translation files for common issues that slip past human review. Ensure every translation meets your quality standards before it reaches production.
Stop shipping broken translations
i18nlint checks your translation files with 25+ configurable rules — placeholders, brackets, punctuation, email addresses, URLs, duplicates and more. Get a clear report in seconds, right in your browser.
Everything i18nlint checks
i18nlint works right in your browser. Just upload one or more translation files and instantly get a report to view or download — no setup needed.
🧩
Placeholder checks
Spot missing or incorrect placeholders in translations. Supports various placeholder syntaxes, including ICU MessageFormat (with plural forms), Qt, Gettext, and XLIFF.
🔀
Duplicate detection
Flag the same source translated two ways — or one translation reused for different sources.
🔍
25+ pattern rules
Brackets, URLs, emails, currency, whitespace, punctuation and numbers — compared between source and translation.
📊
Reports you can use
Export a self-contained HTML report, CSV for spreadsheets, or SARIF for code-scanning tools.
🔒
Files deleted immediately
All uploaded files are deleted instantly after processing. Your data is never stored or retained.
📄
Supported file formats
Reads XLIFF 1.2 & 2.x, Qt Linguist (.ts) and Gettext (.po) files, including inline markup and plural forms.
📏
Length ratios
Catch suspiciously short or long translations relative to the source.
🎛️
Fully configurable
Tune every rule’s severity and exclude ID's or messages you don’t care about.
📂
Process whole directories
Lints thousands of translation units in a blink — single files or whole directories.