This tool runs in your browser using JavaScript. If it does not appear, please enable JavaScript or reload the page. The description below explains how it works.
Number Formatter
Format a number with the right separators — thousands grouping, decimal sign, and a fixed number of decimal places — for the country you are writing for. The same number reads very differently in different places: 1,234,567.89 in the US is 1.234.567,89 in Germany and 1 234 567,89 in Switzerland. This tool accepts any of those styles as input, detects what you actually mean, and outputs exactly the format you need. A quiet lifesaver for invoices, reports, CSV exports, and website copy.
How to use
- Paste the value — the input is tolerant. US style "1,234,567.89", German style "1.234.567,89", space-grouped "1 234 567.89", and plain "1234567.89" all parse correctly.
- Choose the thousands separator — none, comma, dot, or space.
- Choose the decimal separator — dot or comma.
- Choose decimal places — from 0 to 6. The value is rounded to fit.
The formatted result appears instantly, with the parsed numeric value shown beside it so you can verify the tool understood your input the way you intended.
Example outputs
| Input | Thousands | Decimal | Places | Output |
|---|---|---|---|---|
| 1234567.89 | comma | dot | 2 | 1,234,567.89 |
| 1.234.567,89 | dot | comma | 2 | 1.234.567,89 |
| 1234567 | space | comma | 2 | 1 234 567,00 |
| 1234.567 | comma | dot | 0 | 1,235 |
| -1234.5 | comma | dot | 1 | -1,234.5 |
How input detection works
The tricky part is deciding whether "1.234" means one thousand two hundred and thirty-four (German thousands) or one point two three four (US decimal). The tool applies the standard resolution: a single dot or comma that separates groups of exactly three digits is treated as a thousands separator; a single separator between arbitrary digits is a decimal sign. When both characters appear, the last one is the decimal and the other is the thousands separator, which exactly matches how mixed-style text like "a; b; c; 1,234,567.89" is normally written. Spaces are always treated as grouping and are stripped before parsing.
Rounding and trailing zeros
With decimal places set, the value is rounded to the requested precision, and trailing zeros are printed: 1234.5 with two places becomes "1,234.50", never "1,234.5". For whole-number formats (0 places), values are rounded to the nearest integer, which is why "1234.567" becomes "1,235". If you want to keep your own digits untouched, pick a decimal-places value that matches the number of decimals in your source.
What it is not
This is not a currency converter or an exchange-rate tool. It purely re-renders the digits you give it in a different locale's notation. Two values that are meant to be read as currency should still be passed as plain numbers — the format alone disambiguates the writing, not the amount.
Why it lives on this site
Number Formatter belongs to the Math category and embodies the site's core promise: private, instant, client-side utilities. Your values are processed entirely in your browser — nothing is uploaded, nothing is logged, and the page works offline. Paste, pick your locale's separators, copy the perfectly formatted figure, and go back to work.