Create a free account and get 10,000 characters monthly for free to translate your content with our AI-powered localization service.
No credit card required to get started!
Translating JSON with our service is simple and efficient. Follow the steps below to translate while ensuring accuracy and maintaining the integrity of your JSON structure.
JSON (JavaScript Object Notation) is a lightweight, human-readable data interchange format that organizes data as key-value pairs and nested objects. Originally designed for JavaScript data exchange, JSON is now a universal format supported natively by every major programming language, runtime, and browser.
JSON has become the dominant format for web and mobile app localization because of its simplicity, native browser support, and deep integration with the JavaScript ecosystem. Libraries like i18next, React Intl, ngx-translate, Vue i18n, and next-i18next all use JSON as their primary or default translation file format.
A JSON localization file stores strings as nested key-value pairs, where keys serve as identifiers referenced in code and values contain the human-readable text displayed to users in a specific language.
A well-structured JSON localization file organizes strings hierarchically using nested objects. Here is a typical example:
{
"greeting": "Hello, World!",
"user": {
"name": "John Doe",
"welcome": "Welcome back, {{name}}!"
},
"nav": {
"home": "Home",
"about": "About Us",
"contact": "Contact"
}
}t('nav.home')). Keys are never translated; only string values are.auth, errors) keeps large files organized and easy to maintain across teams.{{name}} or {{count}} are embedded in string values. Our AI detects and preserves all placeholder formats during translation._one, _other, _few, _many) to handle language-specific pluralization rules. Our service recognizes these patterns and generates the correct forms for each target language.Here is a real-world i18next-compatible JSON localization file showing namespacing, interpolation, and plural form keys:
{
"app": {
"title": "My Application",
"description": "A powerful tool for your workflow"
},
"auth": {
"login": "Log in",
"logout": "Log out",
"welcome": "Welcome, {{name}}!",
"itemCount_one": "{{count}} item",
"itemCount_other": "{{count}} items"
},
"errors": {
"notFound": "Page not found",
"serverError": "Something went wrong. Please try again."
}
}This structure is directly compatible with i18next, React Intl, next-i18next, and ngx-translate. The same file can be used as the source for translating into French, German, Japanese, or any other target language using our service.
JSON localization files are the foundation of most modern internationalization (i18n) workflows. The format's flexibility supports both simple flat key-value structures for small projects and deeply nested, namespaced hierarchies for enterprise-scale applications with hundreds of translation keys.
Because JSON files are plain text, they integrate naturally with version control systems like Git, CI/CD pipelines, and translation management platforms. Teams can automate the entire localization pipeline — from extracting new strings to deploying translated builds — using the L10n.dev REST API.
JSON translation files are supported by virtually every major web and mobile framework:
public/locales/en/common.json). Supports interpolation, plurals, context, and nesting out of the box.public/locales/ directory and supports server-side rendering with automatic locale detection.ngx-translate library loads JSON translation files and provides a translate pipe and service for Angular applications. Supports runtime language switching without reloading the app.intl package uses ARB files (Application Resource Bundle), which are JSON files with localization metadata. The flutter gen-l10n command compiles them into strongly-typed Dart code.react-i18next or i18n-js with JSON translation files for cross-platform iOS and Android localization from a single shared resource.Our AI Glossary Generation feature helps you maintain consistent terminology across all your JSON localization files. Enable saving and reusing it by toggling Generate & Save Glossary in the translation options:
JSON translation focuses on adapting key-value pairs for a specific language and region while preserving the structure. Our service ensures that the translated JSON remains valid and ready for use in your applications.
Our service focuses on translating JSON files using AI-powered translation, ensuring accuracy and efficiency while managing JSON file structure.
JSON translation files are used across a wide range of project types and development workflows:
public/locales/en/common.json and other namespace files for React SPAs and Next.js apps using react-i18next or next-i18next.When using "Translate Only New Strings": If your JSON contains arrays (not just objects), make sure the array indexes in your target file match those in the source file. This ensures translations remain consistent. When adding new strings, always append them to the end of the array.
Example:
// ✅ CORRECT: New items added at the end
// source.json
["Apple", "Banana", "Orange"]
// target.json (existing)
["Manzana", "Plátano"]
// After translation (new item appended)
["Manzana", "Plátano", "Naranja"]// ❌ INCORRECT: Items inserted in the middle
// This will cause misalignment!
["Apple", "Cherry", "Banana", "Orange"]For object-based JSON structures (recommended for i18n), this is not a concern as translations are matched by key names.
All JSON keys, structural nesting, interpolation placeholders ({{variable}}, {variable}), inline HTML tags, escaped characters, and plural key suffixes are preserved. Only the human-readable string values are translated.
Yes. Our AI automatically detects and preserves all common interpolation formats used by i18next ({{variable}}), React Intl ({variable}), Vue i18n ({variable}), and others. Placeholder names and syntax remain exactly as in the source file.
Yes. Our service handles arbitrarily deep JSON nesting. Each string value is translated with awareness of its hierarchical path, and the output JSON maintains the exact same structure as the input file.
Our AI recognizes i18next plural key suffixes (_one, _other, _zero, _few, _many) and generates the correct plural forms for the target language. Translating into a language like Polish or Arabic will automatically produce all required plural form entries.
For very large JSON files (hundreds of kilobytes), we recommend using the I18N File Translation page, which supports file uploads up to 5 MB, provides more reliable delivery for large content, and allows translating into multiple target languages at once.