Localization testing checklist

Defects per locale, on average
$16.67
Locale checks in the build (strings times locales)
19,200
Defects found across every locale
100
Defect rate per thousand locale checks
$5.21

Every figure here comes from the figures you enter and the method stated beside it: your word count, your locales, your memory's match shares, your vendor's rates, your strings and the defects your locale pass found. Where a guide names a published figure it names the source and the date it was read. This site publishes no translation, no vendor's price and no ranking: what a word costs in a language is your vendor's quote, and the standards cited on each guide are the starting point, not the ruling.

Your numbers

The figures above start from a worked example ($16.67). Change any input and the answer updates as you type, the way it will when the vendor's quote lands.

Download the Localization testing checklist worked example (CSV)

The Xlifflane workspace signed in, on Leverage sheets, handoffs and test reports, with a saved Localization testing checklist record open for the ja-JP locale on release 4.2: 3,200 strings across 6 locales, 48 untranslated, 31 truncated, 12 hardcoded and 9 format failures against a threshold of 5 per locale, giving 100 defects, 16.7 per locale, a defect rate of 5.2 per thousand checks, a 99.5 percent pass share and 70 defects over the release's allowance to fix before it ships
Pro kept the checklist as a record against the locale and the release: the defect counts, the rate, the pass share and the fixes owed, dated and filed with the build it scored.

The localization testing checklist scores a locale build from the defects the locale pass actually found rather than from a feeling that the German build looked fine: the strings in the release, the locales in the build, the strings that shipped untranslated, the strings that truncated or overflowed on screen, the hardcoded text the pseudo-locale exposed, and the plural, date, number and currency format failures, against the number of defects per locale the team allows a release to ship with. It returns the locale checks in the build, the defects found across every locale and per locale, the defect rate per thousand checks, the share of checks that passed, the catalog gap the pseudo-locale proved, how far over the ship threshold the build is and the defects over the release's allowance to fix before it ships. It is the checklist every localisation engineer keeps in a spreadsheet, with the arithmetic written down.

Why the checklist counts checks, not strings

A release of three thousand strings in six locales is eighteen thousand locale checks, and a defect rate only means something against that denominator. Twelve truncated strings is a bad Japanese build and a rounding error across six locales, and the checklist keeps both readings on the page: the defects per locale on average, which is what the ship threshold is set against, and the rate per thousand checks, which is what lets this release be compared with the last one and a small product with a large one.

Pseudo-localisation finds the strings that are not in the catalog

Switching on a pseudo-locale, one that pads and accents every catalog string, does two jobs at once: it shows which strings will truncate when a real language runs longer than English, and it shows which text did not change, which is text that is hardcoded and not in the catalog at all. That second count is the catalog gap, and the checklist reports it on its own because it is not a translation defect, it is a key that does not exist yet. Xlifflane Pro keeps the catalog, so a hardcoded string found by the pseudo-locale becomes a key with a status rather than a bug nobody owns.

The ship threshold is the team's number, and the sheet holds it to it

Every team ships with some known locale defects, and the honest position is to say how many per locale rather than to pretend the number is zero. Dividing the defects found by the locales and reading it against the threshold gives how far over the build is, and multiplying the threshold by the locales gives the defects the release may carry, so the fixes owed before ship is a count the release manager can plan, not an argument. A build under the threshold ships; one over it does not, and the checklist says which by how much.

What a localisation engineer asks before running the Localization testing checklist

Which figures do I need before using the localization testing checklist?

The number of strings in the release, the locales in the build, and four defect counts across every locale from the locale pass: strings still in the source language, strings truncated or overflowing, hardcoded strings the pseudo-locale exposed, and plural, date, number or currency format failures. The ship threshold is the team's own bar.

Is localization testing the same as linguistic testing?

Linguistic testing is the reviewer reading each locale for meaning, tone and terminology; localization testing is the wider check that the locale build works, strings present, fitting on screen, formatted for the locale, with plurals right. The checklist scores the second, and a linguistic defect the reviewer logs is counted where it belongs, usually as an untranslated or format failure.

Should the checklist be run per locale or per build?

Both, and the per-locale reading matters more: a build's average can hide one locale that is failing. Run it per locale for the sign-off and per build for the release record. Xlifflane Pro keeps the results against each locale so the per-locale figure is always on the page.

Xlifflane Pro

Keeping the string catalog the whole release reads from

Upgrading turns the worksheet into the record. The word count becomes a catalog with keys on it; every translation is recorded against its key and locale with a status; the handoff is generated from the record and the translator's file is read back against it; every release's leverage sheet and locale test results file themselves under the release. Export is always available, so the catalog and the memory are yours whether or not you stay.

  • Download the leverage sheet or the checklist as a file to send to the team
  • Your leverage sheets and test reports without our name on them
  • Save a release's sheet and open it again next sprint
  • Your product name and logo on every printed sheet and handoff
  • Take every sheet, handoff and test report out at once
  • Send a handoff or a locale test report to the translator or the team from inside the record

$135per month, whole team

Start Xlifflane Pro Pricing

Xlifflane Pro is $135 per month for your whole team, billed monthly, and renews each month at that price until you cancel. The price and the renewal terms are shown again before checkout.

Where the method in this worksheet comes from

Microsoft Learn, Pseudolocalization: the method of padding and accenting catalog strings to expose truncation and hardcoded text before a real locale is built. Why the checklist has a separate hardcoded count: the pseudo-locale proves which text is outside the catalog, and that is a catalog gap rather than a translation defect.

Unicode CLDR, Plural Rules: the per-language plural categories a locale build has to render, the source of the plural failures the checklist counts. Why plural failures are counted as their own defect: a language may have more plural categories than the source, and a string that renders one form for all of them is wrong in that locale whatever the translation says.

Start Xlifflane ProKeep the string catalog, not the spreadsheet of strings