Roman Numeral Converter

The working range is 1 to 3999, and that ceiling is not arbitrary — M is the largest letter, three is the most times a letter may repeat, so MMMCMXCIX is genuinely the last number the plain seven-letter system can write.

Roman Numeral Converter — Numbers to Roman Numerals and Back, With ValidationBuildFigure

Seven letters and one ordering rule

I is 1, V is 5, X is 10, L is 50, C is 100, D is 500 and M is 1000. Write them from largest to smallest and add them up: VIII is 5+1+1+1. The only complication is subtraction — a smaller letter immediately before a larger one is subtracted rather than added, so IV is 4 and IX is 9 — and subtraction is where every invalid numeral you will ever see comes from, because the rules constraining it are tighter than most people remember.

Only I, X and C may be subtracted, and only from the next two letters up. I goes before V and X. X goes before L and C. C goes before D and M. That is the complete list of six legal subtractive pairs: IV, IX, XL, XC, CD, CM. V, L and D are never subtracted from anything, which is why VX is not 5 and 15 is XV. And a subtractive pair uses up its place, so no letter of the same unit may follow it — CMC is not a number.

The practical consequence is worth internalising because it makes conversion trivial. Every place value converts independently and then concatenates. 1994 is 1000 + 900 + 90 + 4, which is M + CM + XC + IV, which is MCMXCIV. Nothing carries between places, nothing interacts. Once you see it that way, the notorious hard cases stop being hard.

The cases people get wrong

NumberCorrectCommon mistakeWhy the mistake fails
4IVIIIIA letter may not repeat four times. IIII survives on clock dials by convention
40XLXXXXSame rule, one place up
49XLIXILI may only be subtracted from V and X, never from L
99XCIXICEach place converts separately: 90 then 9
900CMDCCCCFour Cs in a row; subtraction is required
1994MCMXCIVMIMI cannot be subtracted from M, and 994 is not one place
3999MMMCMXCIXMMMM-anything3999 is the ceiling; there is no letter above M

Paste any of those wrong forms in and the validator names the rule rather than just refusing. It also adds the letters up leniently and shows what the writer probably meant, which is the useful behaviour when you are reading a numeral off an old inscription rather than writing one.

Dates, credits and the clock-face exception

Years are the most common real use. 2026 is MMXXVI, 1994 is MCMXCIV, 1888 is the longest year of the modern era at MDCCCLXXXVIII — thirteen letters. Film and television credits still carry a roman-numeral copyright year, a habit that started when studios found an unfamiliar notation made a re-release look less obviously old. Cornerstones and monuments use them because the letterforms carve well and the convention is deliberately timeless.

Clock and watch dials are the one place where a plainly non-standard form is correct. Many dials write 4 as IIII rather than IV, which balances the visual weight against the VIII opposite it and lets a dial be struck from a fixed set of I, V and X characters. The explanations involving Louis XIV are folklore. The option here applies only to the number 4 itself, because that is the only place the convention exists — a dial that uses IIII still writes 14 as XIV.

Above 3999, and the zero that is not there

The classical extension is the vinculum: a bar over a letter multiplies it by a thousand, so a barred V is 5000 and a barred X is 10,000. Unicode can express it with combining overline U+0305, but rendering is inconsistent across fonts and it copies badly into anything else, so this tool refuses rather than emitting something that may or may not display. The other extension, an apostrophus notation using reversed C characters, is even less portable.

Zero is the more interesting absence. There is no roman numeral for it, because the system counts rather than positions — each letter carries its own value regardless of where it sits, so there is no empty column that needs filling. That is the same property that makes roman arithmetic awkward and positional decimal easy, and it is why the notation survives as decoration on clocks, chapter headings and monarchs while nobody has done long division in it for a thousand years.

Questions people ask

What is 1994 in roman numerals?

MCMXCIV. Break it into places and it falls out: 1000 is M, 900 is CM, 90 is XC and 4 is IV. The tempting wrong answer is MIM, on the reasoning that 1994 is 2000 minus 6 or 1000 plus 1000 minus 1 — but I can only be subtracted from V and X, and each place converts on its own rather than the number as a whole.

Why does it stop at 3999?

M is the largest letter and no letter may repeat more than three times, so MMM is 3000 and MMMCMXCIX is 3999. Going higher needs the vinculum — an overbar multiplying a letter by a thousand — which has no reliable plain-text representation: it depends on a combining character that many fonts render badly and that survives copy-paste unpredictably. Emitting something that looks right in one browser and broken in another is worse than saying the range ends here.

Is IIII wrong for 4?

By the standard rules, yes, and this tool flags it. On a clock or watch dial it is not just accepted but common, because IIII balances against the VIII opposite and lets the whole dial be made from I, V and X characters in fixed quantities. Big Ben uses IV; a great many pocket watches use IIII. The option here writes IIII for the number 4 and nothing else, since the convention does not extend to 14 or 24.

Can it read a numeral written in lowercase or with Unicode symbols?

Yes to both. Lowercase input is folded to uppercase before parsing, and the single-character Unicode numerals in the U+2160 block are expanded to their letter equivalents first. Producing those Unicode characters is not offered, because although they look neater they are worse in every practical way — they break text search, they copy inconsistently into other applications, and screen readers handle them unevenly compared with plain letters.

What does it do with an invalid numeral?

It names the specific rule that was broken rather than giving a generic error, then adds the letters up under the loose reading — smaller before larger means subtract — and shows both that value and its correct standard spelling. That is deliberately the useful behaviour for reading rather than writing: numerals on old inscriptions, gravestones and manuscripts frequently do not follow the modern rules, and what you want in that situation is the number, with a note about what is unusual.

Related