Number to Words
Spell a number in English words three ways — plain cardinal, currency/cheque form, and ordinal — live as you type. BigInt-exact into the quintillions, short scale, nothing uploaded.
Runs entirely in your browser. The whole number is parsed with native BigInt, so it stays exact well past 9 quadrillion — and no amount you type, including a cheque or invoice figure, is ever uploaded or logged.
English only in this version, and the short scale (a billion is 10⁹). The meter shows the magnitude — the largest named group in play, and whether the value is still inside the supported range (up to just under one decillion).
Three ways to spell a number
Writing a number as words sounds trivial until you hit the edge cases — where the hyphens go, whether to say "and", how to name a cents amount, or what to do past a quadrillion. This tool settles each of those with a stated rule and shows the result live as you type. It offers the three forms people actually need:
- Cardinal — the plain count:
1234→ one thousand two hundred thirty-four. This is what you want for legal documents, spelled-out quantities in prose, and reading a figure aloud. - Currency / cheque — the bank form:
1234.50→ One Thousand Two Hundred Thirty-Four Dollars and Fifty Cents. The whole part is Title-Cased, the cents are named, and "and" sits only between the two units — exactly the line a cheque or an invoice's "amount in words" field expects. - Ordinal — the rank:
21→ twenty-first,100→ one hundredth. For dates, positions, and "the 42nd".
Where "and" goes, and the hyphen rule
Two small choices trip most people up, so this tool commits to one of each and states it plainly. First, "and": in the American convention used here, "and" never appears inside a spelled whole number — 123 is one hundred twenty-three, not "one hundred and twenty-three". The word "and" is reserved for Currency mode, between the dollars and the cents. British English commonly inserts "and" before the final one or two digits; both are correct, but a cheque needs one consistent rule, so this is the one it uses. Second, the hyphen: the compound numbers from twenty-one through ninety-nine are hyphenated — forty-two, ninety-nine — while the tens and the teens are single words (forty, fifteen). Nothing else takes a hyphen.
Short scale vs long scale — a real ambiguity
Beyond a million, English number names split into two systems, and the same word can mean two very different quantities. This tool uses the short scale, standard in the US and in modern British usage, where each new name is 1000× the last:
| Name | Short scale | Digits |
|---|---|---|
| thousand | 10³ | 4 |
| million | 10⁶ | 7 |
| billion | 10⁹ | 10 |
| trillion | 10¹² | 13 |
| quadrillion | 10¹⁵ | 16 |
| quintillion | 10¹⁸ | 19 |
| decillion | 10³³ | 34 |
In the long scale still used in much of continental Europe, a "billion" is 10¹² and a "trillion" is 10¹⁸ — a thousandfold gap on the same word. Because the difference is genuine and consequential, this tool names the scale on the page rather than leaving you to guess. It spells magnitudes up to just below one decillion (10³³); past that it tells you the number is out of range instead of inventing a name.
Why the integer part uses BigInt
A plain JavaScript number is a 64-bit float, which stores integers exactly only up to 2⁵³ − 1 (9 007 199 254 740 991). Beyond that, low digits silently drift — so a naïve speller reading 1000000000000000001 would call it "one quintillion" and quietly lose the trailing one. This tool parses the whole-number part with native BigInt, which is exact at any size, so that value correctly reads one quintillion one. That precision is the difference between a toy and something you can trust for an ID, an invoice total, or a legal figure.
Decimals: two honest readings
A decimal point can be read two ways, and both are correct — so the tool shows both and labels which is which. In Cardinal mode a decimal is read digit by digit after the word "point": 12.5 is twelve point five, and 0.05 is zero point zero five. In Currency mode the same two decimal places are treated as a cents amount and named: 0.05 becomes Five Cents. Cents are read from the first two decimal places, so 1234.5 and 1234.50 both mean fifty cents, while .05 means five. Whenever you type a decimal in Cardinal mode, the money reading appears beneath the digit-by-digit one so you can copy whichever you need.
Honest limits
This is an English-only tool in this version — it makes no claim to spell numbers in other languages, and won't pretend to. It handles the integer part exactly with BigInt and reads decimals either digit-by-digit or as a two-place cents amount; it does not spell arbitrary fractions like "two thirds", scientific notation (1e9), or Roman numerals, and it says so rather than guessing when you type something it can't parse. Currency mode assumes a two-decimal minor unit (cents/pence/paise), which covers the common currencies but not the rare zero- or three-decimal ones. The upper bound is just under one decillion (10³³); above that the tool reports the number as out of range instead of emitting a made-up scale name.