i18n Locale File Diff
Base vs targets · missing / extra / empty / placeholders · one-click fill · local
No upload, no storage
JSON is processed in memory and never sent to a server.
Share via URL fragment
Share links encode data in the # anchor — never sent to a server.
Remember last edit
Optionally keep your last input locally; clear it with one click.
Why use the i18n Locale Diff
Multi-locale matrix
Paste the base plus up to 6 target locales and get missing, extra and empty keys for each — no more eyeballing files side by side.
Placeholder check
Verifies curly-brace interpolation placeholders match across locales, catching missing-argument bugs before runtime.
One-click fill
Missing keys are inserted following the base structure: as empty strings for fallback, or copied from the base as to-translate stubs.
Base-aligned output
The filled file is reordered to the base key order while target-only keys stay in place — clean diffs, easy reviews.
Local · no upload
Locale files are compared entirely in your browser; data is never uploaded or stored.