User Rating 0.0 β˜…β˜…β˜…β˜…β˜…
Total Usage 0 times
0 numbers found
Is this tool helpful?

Your feedback helps us improve.

β˜… β˜… β˜… β˜… β˜…

About

Misreading 1000000 as 100000 is a one-zero mistake that has caused invoice errors, engineering miscalculations, and data-entry losses measured in real currency. The human visual system struggles to parse more than three or four consecutive digits without a grouping delimiter. This tool inserts thousands separators into every number found in your text, whether the input is a single value, a spreadsheet column, or a full paragraph containing mixed prose and figures. It detects integers, decimals, and negative values while leaving non-numeric content untouched.

Separator conventions vary by locale: the United States and United Kingdom use a comma (1,000,000), much of continental Europe uses a period (1.000.000), and ISOΒ 80000 recommends a thin space. The tool supports all three plus a custom character. Decimal portions are never separated. Numbers shorter than four digits are skipped by default. Note: the formatter assumes left-to-right digit grouping in groups of 3. It does not handle South Asian lakh/crore grouping (12,34,567). Already-formatted numbers are cleaned first to prevent double-separation.

thousands separator number formatting comma separator format numbers text formatter number readability

Formulas

The formatter scans input text using a regular expression that matches numeric tokens including optional sign, integer digits, optional decimal tail, and optional scientific notation suffix. Each matched token is processed independently.

pattern = /[-+]?(?:\d{1,3}(?:[,. '\u202f]\d{3})*|\d+)(?:\.\d+)?(?:[eE][-+]?\d+)?/g

For each matched number string, existing separators are stripped to produce a clean digit sequence. The integer portion is then split from the decimal portion at the . character. Grouping is applied right-to-left in blocks of 3:

format(n) = nint β†’ replace(/\B(?=(\d{3})+(?!\d))/g, sep) + ndec

Where sep is the user-chosen thousands separator character, nint is the integer portion, and ndec is the decimal tail (unchanged). The regex \B(?=(\d{3})+(?!\d)) uses a positive lookahead to find every position in the integer string that is followed by a multiple-of-three digits before the end, inserting the separator at each such boundary.

Reference Data

Locale / StandardThousands SeparatorDecimal SeparatorExample (1234567.89)
United States / UKComma ,Period .1,234,567.89
Germany / France / SpainPeriod .Comma ,1.234.567,89
Switzerland (finance)Apostrophe 'Period .1'234'567.89
ISOΒ 80000 (SI)Thin space Period or comma1β€―234β€―567.89
India (lakh system)Comma ,Period .12,34,567.89
Japan / China / KoreaComma ,Period .1,234,567.89
Brazil / PortugalPeriod .Comma ,1.234.567,89
Sweden / FinlandSpace Comma ,1 234 567,89
Canada (English)Comma ,Period .1,234,567.89
Canada (French)Space Comma ,1 234 567,89
Russia / UkraineSpace Comma ,1 234 567,89
TurkeyPeriod .Comma ,1.234.567,89
Mexico / ColombiaComma ,Period .1,234,567.89
ArgentinaPeriod .Comma ,1.234.567,89
South AfricaSpace Comma ,1 234 567,89
Australia / NZComma ,Period .1,234,567.89
Egypt / Arab StatesComma ,Period .1,234,567.89
Poland / Czech Rep.Space Comma ,1 234 567,89

Frequently Asked Questions

Before formatting, every matched numeric token is stripped of existing separator characters (commas, periods used as grouping, spaces, apostrophes, thin spaces). The clean digit string is then re-formatted with your chosen separator. This prevents double-separation artifacts like 1,,234. If your input uses periods as thousands separators (European style), select the matching input decimal convention so the tool can distinguish 1.234 (one thousand two hundred thirty-four) from 1.234 (one point two three four).
By convention and ISOΒ 80000 recommendation, grouping separators are only applied when the integer portion has more than four digits, though many styles begin at four digits. The minimum digit threshold is configurable in the tool. A three-digit number like 999 never needs a separator. A four-digit number like 1000 is optional. Adjust the setting to match your style guide.
No. The current implementation groups strictly in blocks of 3 (Western convention). Indian numbering groups the first three digits from the right, then every two digits after that (e.g., 12,34,567). This requires a different algorithm and is outside the scope of this formatter. For Indian grouping, a dedicated tool is needed.
Decimal portions are never modified. Only the integer part (left of the decimal point) receives thousands separators. The decimal separator itself (period or comma, depending on your locale setting) is preserved as-is. For example, 1234567.891011 becomes 1,234,567.891011 - all 6 decimal digits remain intact.
Yes, with caution. If your CSV uses commas as field delimiters and you also choose comma as the thousands separator, the output will appear broken when re-imported. Use a space or thin space separator for CSV data, or choose a separator that does not conflict with your file's delimiter. The tool processes the entire input as text - it does not parse CSV structure.
Numbers in scientific notation like 1.23e10 or 5.6E-3 are detected by the regex pattern. The coefficient before e is formatted normally (though it is typically short enough to need no separator). The exponent portion after e is left untouched. If you paste expanded forms like 12300000000, those will be fully separated.