YouCalc · Reference study · Last reviewed 2026-07-01
How the World Writes Numbers
Write 1234567.89 and hand it to the world, and it stops meaning one thing. In the United States it is 1,234,567.89; in Germany the very same amount is 1.234.567,89 — so a lone “1.000” is one in New York and one thousand in Berlin. That is the “1.000 problem”. Go to India and the commas move: 1,00,000 is not a hundred thousand written oddly — it is one lakh, grouped 2-2-3. Below, one number is rendered in every distinct convention across {count} locales, each traced to the Unicode standard that defines it — so you can read, or write, a foreign number without a 1000× mistake.
Your browser
(—) writes it as —. Everyone below sees the same amount, formatted their way.
One number, every way
The same quantity, 1234567.89, grouped and punctuated by convention. Watch the decimal mark, the group separator, the grouping pattern, and the digits themselves change.
1,234,567.89
Point decimal, comma groups
decimal is a point · groups by comma · uniform threes
United States (English) · United Kingdom (English) · Canada (English) · Australia (English) · New Zealand (English) · +13 more
1.234.567,89
Comma decimal, point groups
the “1.000 problem” · decimal is a comma · groups by point
Germany (German) · Spain (Spanish) · Italy (Italian) · Netherlands (Dutch) · Brazil (Portuguese) · +10 more
1 234 567,89
Space groups, comma decimal
decimal is a comma · groups by a space (no-break or narrow)
Austria (German) · France (French) · Portugal (Portuguese) · Sweden (Swedish) · Finland (Finnish) · +9 more
1’234’567.89
Swiss apostrophe groups
decimal is a point · groups by an apostrophe
Switzerland (German) · Switzerland (Italian)
12,34,567.89
Indian lakh grouping (2-2-3)
12,34,567 not 1,234,567 · decimal is a point
India (English) · India (Hindi) · India (Tamil)
১২,৩৪,৫৬৭.৮৯
Indian grouping, native digits
lakh grouping written with Bengali or Devanagari digits
India (Bengali) · Bangladesh (Bengali)
١٬٢٣٤٬٥٦٧٫٨٩
Arabic-Indic digits & marks
digits ٠–٩ · Arabic decimal ٫ · Arabic thousands ٬
Egypt (Arabic) · Saudi Arabia (Arabic) · Iran (Persian)
1 234 567.89
SI recommendation (standard)
thin-space groups · a point or a comma decimal
International — BIPM SI Brochure · NIST SP 811
Method. Every figure on this page is generated by asking Intl.NumberFormat(<locale>) to format 1234567.89, then reading the parts (formatToParts) for the decimal mark, the group separator and the grouping pattern — the same Unicode CLDR data that browsers and operating systems use. The grouping pattern is classified from the integer-segment lengths (Western uniform threes vs the Indian 2-2-3 lakh), and the numbering system from the formatter’s resolved options. Nothing is hand-typed.
The full reference
Sorted into convention families. “Example” is 1234567.89 as that locale renders it; the “Currency” column shows the symbol placement using the local currency.
| Locale | Country / language | Example (1234567.89) | Decimal mark | Group separator | Grouping | Currency |
|---|---|---|---|---|---|---|
en-US | United States (English) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix $1,234,567.89 |
en-GB | United Kingdom (English) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix £1,234,567.89 |
en-CA | Canada (English) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix $1,234,567.89 |
en-AU | Australia (English) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix $1,234,567.89 |
en-NZ | New Zealand (English) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix $1,234,567.89 |
en-IE | Ireland (English) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix €1,234,567.89 |
ja-JP | Japan (Japanese) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix ¥1,234,568 |
ko-KR | South Korea (Korean) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix ₩1,234,568 |
zh-CN | China (Simplified Chinese) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix ¥1,234,567.89 |
zh-TW | Taiwan (Traditional Chinese) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix $1,234,567.89 |
zh-HK | Hong Kong (Chinese) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix HK$1,234,567.89 |
th-TH | Thailand (Thai) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix ฿1,234,567.89 |
ms-MY | Malaysia (Malay) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix + space RM 1,234,567.89 |
he-IL | Israel (Hebrew) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | space + suffix 1,234,567.89 ₪ |
de-DE | Germany (German) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | space + suffix 1.234.567,89 € |
de-AT | Austria (German) | 1 234 567,89 | , comma , | ␣ no-break space (U+00A0) | Western (uniform 3) | prefix + space € 1.234.567,89 |
es-ES | Spain (Spanish) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | space + suffix 1.234.567,89 € |
it-IT | Italy (Italian) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | space + suffix 1.234.567,89 € |
nl-NL | Netherlands (Dutch) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | prefix + space € 1.234.567,89 |
pt-BR | Brazil (Portuguese) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | prefix + space R$ 1.234.567,89 |
da-DK | Denmark (Danish) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | space + suffix 1.234.567,89 kr. |
el-GR | Greece (Greek) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | space + suffix 1.234.567,89 € |
id-ID | Indonesia (Indonesian) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | prefix + space Rp 1.234.567,89 |
tr-TR | Turkey (Turkish) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | prefix ₺1.234.567,89 |
vi-VN | Vietnam (Vietnamese) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | space + suffix 1.234.568 ₫ |
fr-FR | France (French) | 1 234 567,89 | , comma , | ␣ narrow no-break space (U+202F) | Western (uniform 3) | space + suffix 1 234 567,89 € |
pt-PT | Portugal (Portuguese) | 1 234 567,89 | , comma , | ␣ no-break space (U+00A0) | Western (uniform 3) | space + suffix 1 234 567,89 € |
sv-SE | Sweden (Swedish) | 1 234 567,89 | , comma , | ␣ no-break space (U+00A0) | Western (uniform 3) | space + suffix 1 234 567,89 kr |
fi-FI | Finland (Finnish) | 1 234 567,89 | , comma , | ␣ no-break space (U+00A0) | Western (uniform 3) | space + suffix 1 234 567,89 € |
nb-NO | Norway (Norwegian) | 1 234 567,89 | , comma , | ␣ no-break space (U+00A0) | Western (uniform 3) | space + suffix 1 234 567,89 kr |
pl-PL | Poland (Polish) | 1 234 567,89 | , comma , | ␣ no-break space (U+00A0) | Western (uniform 3) | space + suffix 1 234 567,89 zł |
cs-CZ | Czechia (Czech) | 1 234 567,89 | , comma , | ␣ no-break space (U+00A0) | Western (uniform 3) | space + suffix 1 234 567,89 Kč |
hu-HU | Hungary (Hungarian) | 1 234 567,89 | , comma , | ␣ no-break space (U+00A0) | Western (uniform 3) | space + suffix 1 234 567,89 Ft |
ru-RU | Russia (Russian) | 1 234 567,89 | , comma , | ␣ no-break space (U+00A0) | Western (uniform 3) | space + suffix 1 234 567,89 ₽ |
uk-UA | Ukraine (Ukrainian) | 1 234 567,89 | , comma , | ␣ no-break space (U+00A0) | Western (uniform 3) | space + suffix 1 234 567,89 грн |
ro-RO | Romania (Romanian) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | space + suffix 1.234.567,89 RON |
de-CH | Switzerland (German) | 1’234’567.89 | . point . | ’ apostrophe ’ (U+2019) | Western (uniform 3) | prefix + space CHF 1’234’567.89 |
fr-CH | Switzerland (French) | 1 234 567,89 | , comma , | ␣ narrow no-break space (U+202F) | Western (uniform 3) | space + suffix 1 234 567.89 CHF |
it-CH | Switzerland (Italian) | 1’234’567.89 | . point . | ’ apostrophe ’ (U+2019) | Western (uniform 3) | prefix + space CHF 1’234’567.89 |
en-IN | India (English) | 12,34,567.89 | . point . | , comma , | Indian (2-2-3 lakh) | prefix ₹12,34,567.89 |
hi-IN | India (Hindi) | 12,34,567.89 | . point . | , comma , | Indian (2-2-3 lakh) | prefix ₹12,34,567.89 |
bn-IN | India (Bengali) | ১২,৩৪,৫৬৭.৮৯ | . point . | , comma , | Indian (2-2-3 lakh) | prefix ₹১২,৩৪,৫৬৭.৮৯ |
ta-IN | India (Tamil) | 12,34,567.89 | . point . | , comma , | Indian (2-2-3 lakh) | prefix ₹12,34,567.89 |
ur-PK | Pakistan (Urdu) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix + space Rs 1,234,567.89 |
ne-NP | Nepal (Nepali) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix + space NPR 1,234,567.89 |
bn-BD | Bangladesh (Bengali) | ১২,৩৪,৫৬৭.৮৯ | . point . | , comma , | Indian (2-2-3 lakh) | suffix ১২,৩৪,৫৬৭.৮৯৳ |
ar-EG | Egypt (Arabic) | ١٬٢٣٤٬٥٦٧٫٨٩ | ٫ Arabic decimal ٫ (U+066B) | ٬ Arabic thousands ٬ (U+066C) | Western (uniform 3) | space + suffix ١٬٢٣٤٬٥٦٧٫٨٩ ج.م. |
ar-SA | Saudi Arabia (Arabic) | ١٬٢٣٤٬٥٦٧٫٨٩ | ٫ Arabic decimal ٫ (U+066B) | ٬ Arabic thousands ٬ (U+066C) | Western (uniform 3) | space + suffix ١٬٢٣٤٬٥٦٧٫٨٩ ر.س. |
ar-AE | United Arab Emirates (Arabic) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | space + suffix 1,234,567.89 د.إ. |
ar-MA | Morocco (Arabic) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | space + suffix 1.234.567,89 د.م. |
fa-IR | Iran (Persian) | ۱٬۲۳۴٬۵۶۷٫۸۹ | ٫ Arabic decimal ٫ (U+066B) | ٬ Arabic thousands ٬ (U+066C) | Western (uniform 3) | prefix + space ریال ۱٬۲۳۴٬۵۶۸ |
es-MX | Mexico (Spanish) | 1,234,567.89 | . point . | , comma , | Western (uniform 3) | prefix $1,234,567.89 |
es-AR | Argentina (Spanish) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | prefix + space $ 1.234.567,89 |
es-CO | Colombia (Spanish) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | prefix + space $ 1.234.567,89 |
es-CL | Chile (Spanish) | 1.234.567,89 | , comma , | . point . | Western (uniform 3) | prefix $1.234.568 |
af-ZA | South Africa (Afrikaans) | 1 234 567,89 | , comma , | ␣ no-break space (U+00A0) | Western (uniform 3) | prefix + space R 1 234 567,89 |
en-ZA | South Africa (English) | 1 234 567,89 | , comma , | ␣ no-break space (U+00A0) | Western (uniform 3) | prefix + space R 1 234 567,89 |
All examples are the identical amount 1234567.89, rendered by Intl.NumberFormat (Unicode CLDR / ICU). “␣” marks a space separator (no-break or narrow no-break).
Why the same digits mean different amounts
The “1.000 problem”
English uses the point for the decimal and the comma to group thousands; most of continental Europe and Latin America do the exact opposite — comma for the decimal, point (or a space) for thousands. So 1.000 is 1 to an American and 1000 to a German, and 1,5 is one-and-a-half in Paris but a typo in Chicago. Reading a European invoice as if it were American (or vice-versa) is a classic 1000× error.
The Indian lakh & crore (2-2-3 grouping)
South Asian locales don’t group in uniform threes. After the first three digits they group in twos: a hundred thousand is 1,00,000 (one lakh), and a hundred million is 12,34,56,789 — that is 12 crore, 34 lakh… The commas look familiar but land in unfamiliar places, which is exactly why the amount is easy to misread.
The Swiss apostrophe
Switzerland groups thousands with an apostrophe: 1’234’567.89. It is unambiguous — no one confuses 1’000 with a decimal — which is part of why it survives.
Arabic separators & digits
Arabic-script locales may render both the digits and the separators natively: the digits ٠١٢٣٤٥٦٧٨٩, the Arabic decimal separator ٫ (U+066B) and the Arabic thousands separator ٬ (U+066C). So 1234567.89 becomes ١٬٢٣٤٬٥٦٧٫٨٩. Persian (Iran) uses the extended Arabic-Indic digits ۰۱۲۳۴۵۶۷۸۹. Note that several Arabic locales (e.g. the UAE) default to Western digits — convention varies within the script.
The standards answer: SI grouping
To keep data machine- and border-safe, the BIPM SI Brochure and NIST SP 811 recommend a single neutral convention: the decimal sign is a point or a comma, and digits are grouped in threes separated by a thin space — never a comma or a point, precisely because those already mean “decimal” somewhere. So the unambiguous form is 1 234 567.89 (and, for four-digit numbers, the space is optional). This is a recommendation for scientific and technical writing, not a rule everyday locales follow.
Sources
How to read this honestly
The per-locale formats come from Unicode CLDR via Intl.NumberFormat — the same data your phone and browser use — so they reflect common, standard usage, not a legal decree. Real-world practice varies within a country (many Arabic locales use Western digits day-to-day; handwriting and house styles differ), and CLDR is periodically revised, so a locale’s default can change between releases. The SI thin-space form is a recommendation for clarity, not universal practice. Use this as a reliable guide to what a format means, and when precision matters, state the amount unambiguously.
Derived from Unicode CLDR via Intl.NumberFormat across 57 locales, classified into 9 distinct conventions. SI grouping per the BIPM SI Brochure and NIST SP 811. Self-made reference, CC BY 4.0.