Number to Words

Convert a number into written words. Everything runs in your browser.

Advertisement

What the converter does

Number to words turns a whole number into the English phrase you would read aloud. Type 4382, press Convert, and the output is four thousand three hundred eighty-two. The supported range runs from zero to 999,999, decimals are not accepted, and negatives are rejected with a short message rather than a guess.

The conversion happens in the browser, so figures from an invoice, a payslip or a draft contract do not leave the page. That matters when the reason you are spelling a number out is that it is going into a document you would rather not paste into a third-party service.

How the wording is built

The digits are split into two groups: the thousands and whatever is left below a thousand. Each group is then read in the same three steps. Values below twenty come from a fixed list. Values from twenty to ninety-nine take the tens word and, when there is a remainder, a hyphen and the unit word. Values in the hundreds take a unit word, the word hundred, and then the remainder read by the same rules.

The output is lowercase throughout, with hyphens between tens and units and spaces between groups. There is no comma after the thousands, no capital letter at the start and no word and anywhere in the phrase, so 123 reads as one hundred twenty-three rather than one hundred and twenty-three. If your house style requires and, add it yourself after conversion.

Worked example

Take 4382. The thousands group is four, which gives four thousand. The remainder is 382, whose hundreds digit is three, giving three hundred, and whose remainder of 82 gives eighty-two. Assembled in order, the phrase is four thousand three hundred eighty-two. No commas, no and, one hyphen.

Two more cases show the boundaries. Zero returns the single word zero, because an empty string would be ambiguous. A value of one million returns the range message instead of a phrase, since the thousands group would itself need to be read as a number above a thousand and the algorithm only handles two groups.

Limits and nearby tools

Because the input is parsed as an integer, anything after a decimal point is dropped: 12.7 converts as twelve, not twelve point seven. Leading zeros disappear, so 007 becomes seven, which is correct for a quantity but wrong for a code such as a bond number or a padded account reference. Input that does not start with a digit returns the range message, while something like 12abc is read as twelve, because parsing stops at the first character that is not part of a number.

The tool writes cardinal numbers only. Ordinals such as twenty-first, currency words such as dollars and cents, and year readings such as nineteen eighty-seven are outside its scope. For Roman numerals use the Roman numeral converter; to check the length of the spelled-out result, the text statistics page reports words and characters; and to count words across a longer document, the word counter is the right tool.

Frequently asked questions

No. Phrases are built without and, so 123 becomes one hundred twenty-three. Add it by hand if a legal or banking style guide requires it.
They are truncated, not rounded. The input is read as an integer, so 12.7 converts as twelve and 0.9 converts as zero.
999,999. Anything larger returns a range message because the conversion only builds two groups, thousands and the remainder.
The number itself, yes. You still have to add the currency name and the word only, and your bank may want a specific layout, so treat the output as one component rather than a finished line.