← All tools

Intl.PluralRules Tester

Compare cardinal and ordinal plural categories across locales and visible decimal digits, locally in your browser.

intl-plural-rules-testerLOCAL WORKSPACE

Enabling local controls…

Inputs and settings

Processed in this tab without uploading or storing inputs. Each text field is limited to 32 KiB and complete output to 1 MiB; additional format and model limits apply.

Results

Review the settings and run. Editing inputs clears old results.

Processing model and limits

Enter 1–4 Unicode locale identifiers and 1–12 signed decimals, one per line. Decimals require integer digits, are within ±1,000,000,000, and have at most three fractional digits and 32 characters. Each locale is at most 128 characters and each field at most 16,384 characters. Default mode uses JavaScript Intl.PluralRules defaults: 1 and 1.0 become the same Number. Preserve mode sets minimumFractionDigits and maximumFractionDigits to each input's visible fractional digits after Number conversion; it is a different option model, not a correction. Results depend on the browser's Intl/CLDR data, are category labels rather than grammatical validation, and may differ from translation frameworks. Unsupported locales and malformed inputs are rejected. Inputs stay in this browser and are not stored or sent to tool analytics.

Data and model checked: ECMA-402: PluralRules ↗Unicode CLDR: Plural rules ↗

How to use this tool

Load the example, confirm field units and processing rules, then run locally. Editing any input clears the old result. Copy or download the complete output explicitly.

When not to use it

Enter 1–4 Unicode locale identifiers and 1–12 signed decimals, one per line. Decimals require integer digits, are within ±1,000,000,000, and have at most three fractional digits and 32 characters. Each locale is at most 128 characters and each field at most 16,384 characters. Default mode uses JavaScript Intl.PluralRules defaults: 1 and 1.0 become the same Number. Preserve mode sets minimumFractionDigits and maximumFractionDigits to each input's visible fractional digits after Number conversion; it is a different option model, not a correction. Results depend on the browser's Intl/CLDR data, are category labels rather than grammatical validation, and may differ from translation frameworks. Unsupported locales and malformed inputs are rejected. Inputs stay in this browser and are not stored or sent to tool analytics.

Read the guide →