Roman Numeral Converter
Convert numbers to Roman numerals and Roman numerals back to numbers, from 1 to 3,999, with a step-by-step breakdown of each symbol.
Type digits to get a Roman numeral, or Roman letters to get a number. Letters can be upper or lower case. The range is 1 to 3,999.
Everything is calculated in your browser — nothing you type is uploaded anywhere.
Symbol by symbol
What is a Roman numeral converter?
A Roman numeral converter translates between ordinary numbers and the numerals of ancient Rome, which are still used for clock faces, book chapters, monarchs and popes, film copyright years and event editions. This one works in both directions from a single box: type 1994 and it returns MCMXCIV; type MCMXCIV and it returns 1,994.
How to use this converter
- Type a whole number from 1 to 3,999, or a Roman numeral written with the letters I, V, X, L, C, D and M. Case does not matter, and commas or spaces in a number are ignored.
- The large figure is the conversion. Underneath, the numeral is split into its symbols with the value of each, so the result can be checked by adding them up.
- The result updates as you type.
The symbols
- I = 1, V = 5, X = 10, L = 50, C = 100, D = 500, M = 1,000.
- Symbols are written largest first and added: VIII = 5 + 1 + 1 + 1 = 8.
- Six subtractive pairs place a smaller symbol before a larger one to mean the difference: IV = 4, IX = 9, XL = 40, XC = 90, CD = 400 and CM = 900. Only a power of ten (I, X, C) is ever subtracted, and only from the next two symbols up.
- I, X, C and M repeat at most three times in a row; V, L and D never repeat.
The method
Number to numeral is a greedy walk down a table of thirteen values — 1000 M, 900 CM, 500 D, 400 CD, 100 C, 90 XC, 50 L, 40 XL, 10 X, 9 IX, 5 V, 4 IV, 1 I. At each step the largest value that still fits is written down and subtracted, until nothing is left. Because the subtractive pairs are in the table, the output is always in standard form.
Numeral to number first checks the input against the standard pattern — thousands, then hundreds, then tens, then units, each written with one of the allowed spellings — and then adds up the values of the symbols and pairs from left to right.
Worked example
- 1994: 1,000 fits once (M), leaving 994; 900 fits (CM), leaving 94; 90 fits (XC), leaving 4; 4 is IV. So 1994 = M + CM + XC + IV = MCMXCIV.
- MMXXVI: M + M = 2,000, X + X = 20, V = 5, I = 1, giving 2,026.
- 3999, the largest standard numeral, is MMM + CM + XC + IX = MMMCMXCIX.
Assumptions and edge cases
- Zero is refused: Roman numerals have no symbol for it. Negative numbers and fractions are refused for the same reason.
- Numbers above 3,999 are refused. Larger values were written by drawing a bar over a numeral to multiply it by 1,000 (the vinculum), which has no single agreed plain-text form.
- Non-standard numerals such as IIII, IC or VX are not converted silently. Where a letter-by-letter reading gives a sensible value, the message names it and shows the standard spelling — IC reads as 99, which is written XCIX. IIII does appear on many clock faces, but it is not the standard form.
- Any other character — a letter outside I V X L C D M, or a mix of digits and letters — is refused rather than guessed at.
- The rules here are the modern standard convention. Roman usage itself was less consistent, and older inscriptions contain forms this converter will flag as non-standard.