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.
Roman Numeral Converter
Roman numerals may be 2,000 years old, but they still show up everywhere: movie credits, clock faces, monarch and pope names, Olympic games, Super Bowl editions, numbered list chapters, and building cornerstones. This converter takes any number between 1 and 3999 and writes it the way the Romans did, and it does the reverse too — type a numeral and read the number. Both sides convert live as you type, entirely in your browser.
How to use
- Type a number from 1 to 3999 in the Number field and read the Roman numeral underneath — no button presses.
- Type a Roman numeral in the second field and read its numeric value live underneath.
- Both conversions run simultaneously; either field can be edited first.
Input is case-insensitive (mmxxvi equals MMXXVI), and only the classic characters I, V, X, L, C, D, and M are accepted. Non-numeral characters are rejected with a clear message.
The rules this converter follows
The tool uses the standard subtractive notation that most modern references prefer:
| Arabic | Roman |
|---|---|
| 1 | I |
| 4 | IV |
| 5 | V |
| 9 | IX |
| 10 | X |
| 40 | XL |
| 50 | L |
| 90 | XC |
| 100 | C |
| 400 | CD |
| 500 | D |
| 900 | CM |
| 1000 | M |
Subtractive notation means a smaller numeral before a larger one subtracts: IV is 4 (one before five), XL is 40, CM is 900. Larger numerals add, so 2026 is MMXXVI — two thousands, two tens, five, and one.
Why the range stops at 3999
Classical Roman practice repeated the symbol M for thousands, and there was no standard symbol for 5,000 or above in the period that produced our familiar numeral system (the later vinculum bar and apostrophus symbols are rare and inconsistent). Spreadsheet functions, clocks, and most converters therefore support the range 1–3999 only. This converter keeps that traditional boundary, which also keeps every output unique and unambiguous.
Reading numerals correctly
The parser walks the string from right to left, adding each character's value but subtracting when a value is smaller than the one before it. That handles every legal subtractive pair in one rule. Some conventions you may see in the wild:
- Non-standard additive forms like
IIII(clock-face tradition) orVIIIIare tolerated on input, parsing to 4 and 9 respectively. - Illegal repeats like
VVorIIIIIare not standard; the tool will still parse many of them arithmetically, but they are flagged for correction in careful writing.
For output, the converter always writes the canonical minimal form — the short, standard spelling used in titles and dates.
When you actually need this
- Timestamps and credits: "Chapter VII", "Super Bowl LIX", "MMXXIV premiere" — decoding them becomes a one-second lookup.
- Numbered outlines: autogenerating Roman chapter numbers for a report's table of contents.
- Clock and calendar design: styling a year or a face for which you need a reliable conversion.
- Data cleaning: normalizing a dataset where year fields were typed partly as numerals.
Why it belongs on this site
Like the Number to Words converter beside it, this is pure deterministic string math: table-driven, no I/O, no state to persist. A static web component is the ideal home — instant, private, and always available. It pairs naturally with the site's other Math tools when you find a year or quantity recorded in an unusual format and want to verify it in one place.