Stax
Tools

Number Formatter

Format numbers for any locale — Indian lakh/crore, US, European, Arabic.

Formatted output
12,34,567.89
Same number across locales
LocaleFormatted
English (India) — 1,00,00012,34,567.89
English (US) — 100,0001,234,567.89
English (UK) — 100,0001,234,567.89
German — 100.000,001.234.567,89
French — 100 000,001 234 567,89
Japanese — 100,0001,234,567.89
Chinese — 100,0001,234,567.89
Arabic — ١٠٠٬٠٠٠١٬٢٣٤٬٥٦٧٫٨٩
Hindi — 1,00,00012,34,567.89

Number Formatter — Format Numbers for Any Locale Including Indian Lakh/Crore System

Number formatting is one of the most overlooked internationalisation requirements in software development. The same number — 1000000 — is written as 1,000,000 in the US, 10,00,000 in India (ten lakh), 1.000.000 in Germany, and ١٬٠٠٠٬٠٠٠ in Arabic. If your application displays numbers to an international audience or needs to accept user-entered numbers from different regions, you need to handle these conventions correctly. This formatter uses the browser's native Intl.NumberFormat API to show you exactly how any number renders across 9 major locales simultaneously.

How to use this formatter

Enter any number in the input field. Select your primary locale from the dropdown to configure the main formatted output. Choose the number style: Decimal for plain number formatting, Currency to add a currency symbol and follow currency-specific conventions (select from INR, USD, EUR, GBP, JPY, AED, SGD, CAD, or AUD), Percent to format as a percentage, or Scientific for scientific notation. Toggle compact notation to get abbreviated forms like 1M, 10L, or 1B for dashboards and space-constrained UI. The cross-locale comparison table at the bottom shows the same number formatted for all 9 locales side by side — copy any formatted value with one click.

The Indian number system explained

India uses a unique number grouping system: after the first three digits from the right, subsequent digits group in pairs of two rather than the Western three. So 100,000 (one hundred thousand) in Western notation is written as 1,00,000 (one lakh) in Indian notation. Ten million is 1,00,00,000 (one crore). This system is reflected in everyday financial communication — stock prices, salary figures, government budgets, and GST amounts are all communicated in lakh and crore. Compact notation in Hindi uses ₹10L for ₹10,00,000 and ₹1Cr for ₹1,00,00,000. Software serving Indian users must implement this correctly or the numbers feel foreign.

Who uses this tool

Front-end developers building internationalised applications use it to verify that their Intl.NumberFormat configuration produces the correct output for target locales before deploying. Fintech developers building products for Indian markets use it to confirm that lakh and crore formatting renders correctly. Data analysts preparing reports for regional audiences use it to format numbers appropriately for each region's conventions. Developers debugging i18n issues use the comparison table to quickly identify which locale is causing unexpected formatting output.

Privacy and data handling

All formatting runs in your browser using the native Intl.NumberFormat API — no numbers or locale preferences are sent to any server.

Frequently asked questions

What is locale-aware number formatting?
Different countries use different conventions for decimal separators, thousands separators, and digit grouping. For example, 1,00,000 in India (lakh system) vs 100,000 in the US, vs 100.000 in Germany.
What is the Indian number system?
India uses a lakh-crore system: after the first three digits, grouping is done in pairs — 1,00,000 (one lakh), 10,00,000 (ten lakh), 1,00,00,000 (one crore). Select 'English (India)' locale to see this.
What currency formats are supported?
Select 'Currency' style and choose from INR, USD, EUR, GBP, JPY, AED, SGD, CAD, or AUD. The currency symbol placement and format follow the selected locale's conventions.
What is compact notation?
Compact notation abbreviates large numbers — e.g., 1,000,000 becomes '1M' in English or '10L' in Hindi. It is useful for dashboards, charts, and space-constrained UIs.
What powers this formatter?
The formatter uses the browser's built-in Intl.NumberFormat API — the same engine that browsers use to format numbers in native UI. No external library is needed.

Related tools