The problem: the same number has two names
Ask an American how many zeros are in a billion and the answer is nine — 1,000,000,000. Ask a French person (in French) and the answer has been twelve — 1,000,000,000,000 — for most of the last two centuries. The number is the same; the name is different. This is the short scale vs long scale distinction, and it is the single biggest source of confusion in written number names.
The short scale (used in the US, Canada, modern UK, Brazil, and most English-speaking countries) names each new power of 1,000: million (10^6), billion (10^9), trillion (10^12), quadrillion (10^15), quintillion (10^18). Each step multiplies by 1,000.
The long scale (used in continental Europe and historically in the UK) names each new power of 1,000,000: million (10^6), milliard (10^9), billion (10^12), billiard (10^15), trillion (10^18). Each step multiplies by 1,000,000. The UK officially switched to the short scale in 1974, but the long scale lingers in older texts and in some Commonwealth countries.
The Numbers to Words Converter uses the short scale. It handles numbers from zero up to just under one quintillion (999,999,999,999,999,999) and supports five modes: number-to-words, ordinal, currency, words-to-number (reverse), and batch. It is English-only — the long scale and non-English naming systems are not supported.
Fastest path
Open the Numbers to Words Converter, type a number into the input field. The tool shows the word form, an ordinal form, a USD currency form, and a EUR currency form simultaneously in the All Formats preview. Switch modes for a focused output: Number to Words for the plain word form, Ordinal for "first/second/third", Currency for dollars-and-cents or other currencies, Words to Number for the reverse, Batch for multiple numbers at once (one per line). Toggle capitalize to get "Three hundred" instead of "three hundred". Copy the result or download as a text file.
The short scale: how the names are built
The short scale groups digits by thousands and names each group:
| Group | Scale name | Power of 10 |
|---|---|---|
| 1 | (none) | 10^0 |
| 1,000 | thousand | 10^3 |
| 1,000,000 | million | 10^6 |
| 1,000,000,000 | billion | 10^9 |
| 1,000,000,000,000 | trillion | 10^12 |
| 1,000,000,000,000,000 | quadrillion | 10^15 |
| 1,000,000,000,000,000,000 | quintillion | 10^18 |
The Latin roots tell you which scale you are on. Million comes from the Italian milione (a large thousand). The "bi-" in billion means two — a billion is a million squared (in long scale) or a thousand-millions (in short scale, where the count refers to which power of 1,000 you are at, starting from million). Tri- = three, quadri- = four, quinti- = five. The pattern continues: sextillion (10^21), septillion (10^24), octillion (10^27), nonillion (10^30), decillion (10^33). The tool stops at quintillion because beyond that, the names are rarely used and the JavaScript number type loses precision before they matter.
To read a number, break it into groups of three from the right and name each group with its scale:
1,234,567 → 1 million, 234 thousand, 567
→ "one million two hundred thirty-four thousand five hundred sixty-seven"
The largest group determines the scale name. The groups between are read as their three-digit value followed by the scale name. The rightmost group (under 1,000) has no scale name.
The "and" convention: US vs UK
The tool produces "one hundred twenty" — no "and". This is the US convention. Older British English inserts "and" after the hundreds: "one hundred and twenty". The "and" marks the boundary between the hundreds and the tens, a convention that dates to a time when "and" was used more broadly to separate parts of a number.
Modern UK usage is mixed. The UK government and most modern style guides follow the US convention (no "and"), but "and" survives in spoken English and in some written contexts, especially for amounts of money ("one hundred and twenty pounds"). The tool's reverse parser (words-to-number) accepts "and" and ignores it, so you can type "one hundred and twenty" and it will convert to 120 — the "and" is stripped, not interpreted.
If you need UK-style output with "and", the tool does not support it. The convention is regional and inconsistent, and adding it as an option would not resolve whether "and" goes before the tens (120 = "one hundred and twenty") or before the units (105 = "one hundred and five") or both. The US convention is simpler and is what the tool produces.
Decimals: digit by digit
Decimals are read one digit at a time, prefixed with "point":
3.14 → "three point one four"
0.5 → "zero point five"
123.456 → "one hundred twenty-three point four five six"
This is the scientific and engineering convention. An alternative is to read the decimal as a fraction: 3.14 = "three and fourteen hundredths". The tool does not use the fraction form, for two reasons. First, the fraction form is ambiguous for repeating decimals — 0.333... has no finite "hundredths" representation. Second, the fraction form requires choosing the denominator (tenths, hundredths, thousandths), which is not obvious from the number alone.
The digit-by-digit convention is unambiguous and works for any decimal. It is what you hear in engineering contexts ("three point one four one five nine" for π) and what the tool produces.
Ordinals: the irregular forms
Ordinal numbers (first, second, third) have irregular forms for the small numbers and a regular suffix rule for the rest:
| Cardinal | Ordinal | Rule |
|---|---|---|
| one | first | irregular |
| two | second | irregular |
| three | third | irregular |
| five | fifth | irregular (ve → f) |
| eight | eighth | irregular (just +h, no t) |
| nine | ninth | irregular (e dropped) |
| twelve | twelfth | irregular (ve → f) |
| twenty | twentieth | y → ieth |
| thirty | thirtieth | y → ieth |
| forty | fortieth | y → ieth |
| four | fourth | regular (+th) |
| six | sixth | regular (+th) |
| seven | seventh | regular (+th) |
| ten | tenth | regular (+th) |
| eleven | eleventh | regular (+th) |
| thirteen | thirteenth | regular (+th) |
The pattern: the first three (one, two, three) are completely irregular — they come from Old English and have separate words. Five, eight, nine, and twelve have small phonetic changes. The tens (twenty, thirty, forty, etc.) replace the final "y" with "ieth" (twenty → twentieth, not "twentyth"). Everything else takes a plain "th" suffix.
For larger numbers, the ordinal applies to the last word: "one hundred twenty-third" (not "one hundredth twenty-third"). The tool's ordinal mode applies this rule by converting the number to words and modifying the last word: "one hundred twenty-three" becomes "one hundred twenty-third".
The 2^53 precision limit
The tool uses JavaScript's number type, which is IEEE 754 double-precision floating-point. This type can exactly represent integers up to 2^53 — 9,007,199,254,740,992 (about 9 quadrillion). Above that, integers lose precision: 2^53 + 1 is rounded to 2^53, and the tool would produce the wrong word form.
The practical limit is lower. The tool's scale names stop at quintillion (10^18), and 10^18 is well above 2^53 (about 10^16). So numbers above about 9 quadrillion cannot be entered accurately, even though the word form for a quintillion exists.
For most uses, this does not matter. National budgets, company revenues, and population counts are all well under 9 quadrillion. For numbers above the precision limit — a 20-digit cryptographic key, a astronomical distance in meters — the tool produces the word form of the rounded number, not the exact input. If you need exact representation of large integers, use BigInt (a separate JavaScript type) or a string-based number library.
Currency mode: singular and plural
The tool's currency mode handles the singular/plural distinction:
1 → "one dollar"
2 → "two dollars"
1.50 → "one dollar and fifty cents"
0.50 → "fifty cents"
The cents are joined with "and" — this is the one place the tool uses "and", because the convention for currency is more consistent than for plain numbers. "One dollar and fifty cents" is standard in both US and UK English for money amounts. The currency mode supports eight currencies (USD, EUR, GBP, INR, JPY, CAD, AUD, CHF), each with a main unit and a subunit (dollar/cent, euro/cent, pound/pence, rupee/paisa, yen/sen, etc.).
Japanese yen and Swiss franc subunits (sen and rappen) are practically obsolete — the smallest yen coin in circulation is 1 yen, and Swiss francs are rounded to 5 rappen. The tool still recognizes the subunit names if you enter them, but amounts under 1 yen or 1 franc are rare in practice.
What the tool does not do
- Long scale. The tool is short scale only. A European "milliard" (10^9) is not recognized; you must enter "one billion" for the same number.
- Indian numbering. The Indian system groups by 2 and 2 digits after the hundreds (lakhs and crores) rather than by thousands. 1,00,00,000 (one crore) in the Indian system is 10,000,000 (ten million) in the Western system. The tool does not produce lakh/crore output and does not parse Indian-grouped input.
- East Asian numbering. Chinese, Japanese, and Korean group by 10,000 (myriad), not by 1,000. 10,000 is a single unit (万, 万, 만), and 100,000 is "ten myriad" not "one hundred thousand". The tool does not handle these systems.
- Fractions. Decimals are read digit by digit, not as fractions. There is no "three and one half" output for 3.5 — it produces "three point five". The tool does not parse "one half" or "three quarters" in the words-to-number mode.
- Non-English languages. The word output is English only. Converting to French, Spanish, German, or any other language is not supported.
Gotchas
- The tool uses the short scale. If you are translating from a long-scale language (French, Spanish, German historically), a "billion" in the source text is 10^12, not 10^9. The tool produces "one trillion" for 10^12, not "one billion". For cross-cultural number conversion, know which scale the source uses before interpreting the word form.
- JavaScript loses precision above 2^53. Numbers above about 9 quadrillion (9,007,199,254,740,992) are rounded to the nearest representable value. The word form produced is the rounded number's form, not the exact input. For 20+ digit integers, the tool is unreliable.
- The "and" convention is not produced. The tool outputs "one hundred twenty" (US style). If you need "one hundred and twenty" (UK style), the tool does not support it. The reverse parser accepts "and" and ignores it, so "one hundred and twenty" converts back to 120, but the forward conversion does not insert "and".
- Ordinals apply only to the last word. "One hundred twenty-three" becomes "one hundred twenty-third" — only "three" changes. The tool does this correctly, but if you are constructing ordinal phrases manually, the rule is that only the final word takes the ordinal form. "The twenty-third of March" is correct; "the twentieth-third" is not.
- Decimals are read digit by digit, not as fractions. 3.14 is "three point one four", not "three and fourteen hundredths". If you need the fraction form (common in US math education), the tool does not produce it. The digit-by-digit convention is standard in science and engineering but not in elementary-school arithmetic.
Summary
- The short scale (US, modern UK) names each power of 1,000: million 10^6, billion 10^9, trillion 10^12, quadrillion 10^15, quintillion 10^18. The long scale (continental Europe, historical UK) names each power of 1,000,000: million, milliard, billion, billiard, trillion. The tool uses short scale only.
- Numbers are read by grouping digits in threes from the right and naming each group with its scale. The Latin roots in the scale names (bi-, tri-, quadri-) indicate the power. The largest group determines the scale name.
- The "and" convention separates US ("one hundred twenty") from UK ("one hundred and twenty"). The tool produces US-style output (no "and") but accepts "and" in the reverse parser. Currency mode is the exception — it uses "and" between the main unit and subunit in both conventions.
- Ordinals have irregular forms for one through three (first, second, third), phonetic changes for five, eight, nine, and twelve (fifth, eighth, ninth, twelfth), and the "y → ieth" rule for tens (twentieth, thirtieth). Everything else takes a plain "th" suffix. The ordinal applies only to the last word of a compound number.
- Use the Numbers to Words Converter for English short-scale conversion, the Comma Separator for digit grouping in numeric form, the Text to Binary Converter for character-to-binary encoding, and the Word Counter for text statistics.