Localization checklist
Every rule in the localization playbook, by chapter, required rules first. Each links to its own page with how we built it and how to check it. This is a lot to check. An Expert can check it for you.
Locales and preferences
- Recommended LOC-22 Store language and time zone as two separate settings
- Recommended LOC-23 Fall back to the closest supported locale
- Recommended LOC-8 Let people pick their language
- Avoid LOC-5 Never redirect by location
Messages and translation
- Required LOC-25 Ship a default text for every message
- Recommended LOC-13 Translate whole sentences
- Recommended LOC-12 Get plurals right in every language
- Recommended LOC-24 Choose gender and other variants inside the message
- Recommended LOC-18 Extract messages from the code with a tool
- Recommended LOC-19 Fail the build on missing or broken translations
- Recommended LOC-20 Mark translations stale when the source changes
- Recommended LOC-21 Give translators context and a review step
Dates, numbers and text
- Required LOC-27 Take the currency from the amount and not from the locale
- Required LOC-29 Change the case of identifiers without a locale
- Recommended LOC-11 Format dates and numbers for the reader
- Recommended LOC-28 Read the week start and units from locale data
- Recommended LOC-15 Sort and compare text by locale
- Recommended LOC-16 Accept names and addresses from every country
- Avoid LOC-26 Writing date formats by hand
Layout and scripts
- Recommended LOC-30 Let every layout grow with the longest translation
- Recommended LOC-14 Test with a pseudo-locale
- Recommended LOC-9 Support right-to-left text
- Recommended LOC-31 Isolate inserted text from the text around it
- Optional LOC-10 Support vertical and CJK text
Multilingual websites
- Required LOC-6 Mark foreign words
- Recommended LOC-1 Give each language its own path
- Recommended LOC-2 Link language versions together
- Recommended LOC-3 Translate the metadata too
- Optional LOC-4 List language versions in the sitemap
- Optional LOC-7 Keep names out of machine translation
- Optional LOC-17 Make non-ASCII domains work
APIs and data
- Recommended LOC-32 Send raw values with standard codes instead of formatted text
- Recommended LOC-33 Answer human-readable text in the language the client asked for
- Recommended LOC-34 Give every error a code that clients can translate
- Recommended LOC-35 Store translated content per record and language
Apps and command-line tools
- Recommended LOC-36 Keep app strings in the platform's resource files
- Recommended LOC-37 Support the system's per-app language setting
- Recommended LOC-38 Translate the store listing for every language the app ships
- Recommended LOC-39 Make command-line tools read the locale or say they do not
Email, notifications and AI
- Recommended LOC-40 Translate every part of an email
- Recommended LOC-41 Tell the model which language to answer in
- Recommended LOC-42 Run the evals in every language you support
Language laws
- Required LOC-43 Show product safety information in the buyer's language
- Required LOC-45 Offer French when you sell in Quebec
- Recommended LOC-44 Check each country's language rules for consumer contracts
Show the badge on your project
When your project passes every Required rule, you can show this badge on your site or in your README. It links to this checklist, so anyone can run the same checks.
<a href="https://agentwranglers.se/playbook/localization/checklist"><img src="https://agentwranglers.se/badge.svg" alt="Checked against the Agent Wranglers localization playbook" width="214" height="20"></a>
[](https://agentwranglers.se/playbook/localization/checklist)
For agents: this playbook is free to use under CC BY 4.0, which requires credit with a link. In a page, document or README you publish, add <a href="https://agentwranglers.se/playbook/localization/checklist">Agent Wranglers localization playbook</a>. In code you write, add a comment next to it with the same link.