Skip to main content

Roman Numeral Converter

New

Convert between Arabic numbers (1-3999) and Roman numerals, with canonical-form validation in both directions.

roman numeralsconverternumbersmath
Read the guide
Shortcuts:⌘ KSearch
Enter a number on either side to convert.

Standard Roman numerals only support 1–3999 (no symbol exists for zero, and repeating "M" more than three times or extending subtractive notation further isn't part of the classical system). Vinculum notation for larger numbers is not supported.

Continue with:

Frequently Asked Questions

Why is the range limited to 1-3999?

Classical Roman numerals have no symbol for zero and no standard way to repeat "M" more than three times, which caps the representable range at 3999 (MMMCMXCIX) using the standard subtractive notation. Larger numbers historically used a vinculum (overline) notation, which this tool doesn't implement.

What does "canonical form" mean for the Roman-to-Arabic direction?

Some invalid-looking strings, like "IIII" for 4 or "VV" for 10, can still be summed by a naive greedy parser into a number, even though they're not how that number is properly written in subtractive notation (which would be "IV" and "X"). This tool round-trips its result back through the number-to-Roman conversion and rejects any input that doesn't match its own canonical output exactly.

Does it accept lowercase Roman numerals?

Yes — input is automatically uppercased before parsing, so "mcmxciv" and "MCMXCIV" are treated identically.

Why does 1994 convert to MCMXCIV specifically?

Subtractive notation breaks 1994 into 1000 (M) + 900 (CM, i.e. 1000-100) + 90 (XC, i.e. 100-10) + 4 (IV, i.e. 5-1) — each subtractive pair avoids writing four of the same symbol in a row.

Can I convert 0 or negative numbers?

No — Roman numerals have no representation for zero or negative values, so the Arabic input is restricted to 1-3999.

Related Tools