Numeral System Converter

Pick a source and target script, paste text, and every digit is converted in place. Letters and punctuation are never touched, and the value of the number does not change.

—

What this tool does

A numeral system is a set of glyphs for writing numbers; a writing system is the letters. Many scripts have both, and their digits are frequently mixed with Western Arabic numerals in the same document. That is fine for a human reader and awkward for software: a database column expecting 123 will not accept ๑๒๓, sorting puts them in the wrong order, and search misses matches entirely.

This tool converts between twenty-two digit sets defined in the Unicode Standard, and can also normalise a mixed text to Western Arabic numerals in one step.

Method

Every supported script stores its ten digits as consecutive code points, with zero at a known base. The converter builds the source and target digit strings from those bases and performs a one-to-one glyph substitution; digits that do not appear in the source script are left unchanged. This is why the conversion is lossless and why mixed text survives intact. The normalise mode scans for digits from every supported script and maps each one to its Western Arabic equivalent.

Supported scripts

ScriptDigitsUsed in
Western Arabic (0–9) 0123456789 Worldwide
Thai ๐๑๒๓๔๕๖๗๘๙ Thailand
Lao ໐໑໒໓໔໕໖໗໘໙ Laos
Khmer ០១២៣៤៥៦៧៨៩ Cambodia
Myanmar (Burmese) ၀၁၂၃၄၅၆၇၈၉ Myanmar
Devanagari ०१२३४५६७८९ Hindi, Marathi, Nepali
Bengali ০১২৩৪৫৬৭৮৯ Bengali, Assamese
Gurmukhi ੦੧੨੩੪੫੬੭੮੯ Punjabi
Gujarati ૦૧૨૩૪૫૬૭૮૯ Gujarat
Odia ୦୧୨୩୪୫୬୭୮୯ Odisha
Tamil ௦௧௨௩௪௫௬௭௮௯ Tamil Nadu, Sri Lanka, Singapore
Telugu ౦౧౨౩౪౫౬౭౮౯ Andhra Pradesh, Telangana
Kannada ೦೧೨೩೪೫೬೭೮೯ Karnataka
Malayalam ൦൧൨൩൪൫൬൭൮൯ Kerala
Sinhala Lith ෦෧෨෩෪෫෬෭෮෯ Sri Lanka
Tibetan ༠༡༢༣༤༥༦༧༨༩ Tibet
Arabic-Indic ٠١٢٣٤٥٦٧٨٩ Arabic-speaking countries
Extended Arabic-Indic (Persian, Urdu) ۰۱۲۳۴۵۶۷۸۹ Iran, Pakistan, Afghanistan
Mongolian ᠐᠑᠒᠓᠔᠕᠖᠗᠘᠙ Mongolia
Full-width 0123456789 CJK typography
Mathematical bold 𝟎𝟏𝟐𝟑𝟒𝟓𝟔𝟕𝟖𝟗 Mathematical notation
Mathematical double-struck 𝟘𝟙𝟚𝟛𝟜𝟝𝟞𝟟𝟠𝟡 Mathematical notation

Example

InputDirectionOutput
เลขที่ ๑๒๓/๔๕Thai → Western Arabicเลขที่ 123/45
१२३Devanagari → Western Arabic123
١٢٣Arabic-Indic → Western Arabic123
123Western Arabic → Khmer១២៣
123Western Arabic → Full-width123

Frequently asked questions

What is a numeral system script?

Many writing systems have their own ten digit glyphs for 0–9 while using the same decimal idea. Thai ๐, Devanagari ० and Arabic-Indic ٠ all mean zero; the value is identical, only the shape changes.

Does converting change the number?

No. It is a glyph-for-glyph substitution, so ๑๒๓ and 123 represent the same value. Nothing is rounded or reformatted.

Can I mix scripts in one text?

Yes. The converter only replaces digits belonging to the selected source script, so letters, punctuation and other scripts pass through untouched. There is also a normalise mode that turns every digit it recognises into Western Arabic numerals.

Why would I need this?

Numbers copied from official documents, PDFs and scanned forms often use local digits. Systems that expect 0–9 will reject them, and sorting behaves inconsistently. Converting normalises the data without changing it.

Does it work in Excel or Google Sheets?

Neither has a built-in function for these digit sets, and results vary by locale. The reliable route is to convert here and paste the values back, or to use a script-based custom function.

Are the digit tables complete?

Yes. Each row maps ten consecutive code points from the Unicode Standard, so every digit of that script is covered.

Sources

  • Unicode Standard, Digits and the script blocks listed above (Thai, Lao, Khmer, Myanmar, Devanagari, Bengali, Gurmukhi, Gujarati, Odia, Tamil, Telugu, Kannada, Malayalam, Sinhala, Tibetan, Arabic, Mongolian, Full-width Forms, Mathematical Alphanumeric Symbols).
  • The Unicode Character Database, which defines the general category Nd (decimal digit) used to validate the tables.

Everything runs in your browser — nothing you type is uploaded.