Roman Numeral Converter – Numbers to Roman Numerals & Back
Convert numbers 1–3999 to Roman numerals, or paste a Roman numeral like MMXXV and get the number back. Includes a step-by-step breakdown, validation, and a full reference chart. Free, private, and runs entirely in your browser.
Convert
Number → Roman numeralmmxxv and MMXXV both work. Standard form uses uppercase.Result
Waiting for input| Number | Roman | Number | Roman |
|---|
What is a Roman numeral converter?
A Roman numeral converter translates between standard Arabic numbers (1, 2, 3…) and Roman numerals (I, II, III…). This tool works both ways: enter a number to get the Roman numeral, or paste a Roman numeral to get the number back. Everything runs in your browser — nothing is sent to a server.
Roman numerals use seven symbols, each with a fixed value:
| Symbol | Value | Symbol | Value |
|---|---|---|---|
| I | 1 | V | 5 |
| X | 10 | L | 50 |
| C | 100 | D | 500 |
| M | 1000 |
Numbers are formed by combining these symbols. Most of the time, symbols are written from largest to smallest and their values are added: XVI = 10 + 5 + 1 = 16. When a smaller symbol appears before a larger one, its value is subtracted instead: IV = 5 − 1 = 4.
How Roman numeral conversion works
The converter uses a greedy algorithm for number-to-Roman conversion and a left-to-right comparison for Roman-to-number conversion.
Number → Roman numeral
The algorithm iterates through a lookup table of values from largest to smallest. For each value, it appends the corresponding symbol as many times as it fits, then subtracts that value from the remaining number. The lookup table includes all subtractive forms:
M= 1000,CM= 900,D= 500,CD= 400C= 100,XC= 90,L= 50,XL= 40X= 10,IX= 9,V= 5,IV= 4I= 1
For example, converting 2025: M fits twice (2000 left), X fits twice (5 left), V fits once (0 left) → MMXXV. The step-by-step breakdown in the tool shows this process live.
Roman numeral → Number
The algorithm scans the Roman numeral from left to right. If a symbol's value is less than the next symbol's value, it's subtracted; otherwise it's added. So XIV becomes: 10 (X) + (5−1) (IV) = 14. This correctly handles all subtractive forms including IV, IX, XL, XC, CD, and CM.
The valid range: 1 to 3999
Standard Roman numerals are limited to 1–3999. The largest standard numeral is MMMCMXCIX (3999) because no symbol can be repeated more than three times in a row. Numbers above 3999 require non-standard notation — typically an overline (vinculum) to multiply a symbol by 1000, like IV̅ for 4000 — which is not part of the classic system and is not supported by this converter.
Inputs outside 1–3999 will trigger a validation error with a clear explanation.
Subtractive notation: the six special cases
Roman numerals use subtractive notation to avoid writing four identical symbols in a row. There are exactly six valid subtractive pairs:
| Pair | Value | Why |
|---|---|---|
| IV | 4 | Instead of IIII (5 − 1) |
| IX | 9 | Instead of VIIII (10 − 1) |
| XL | 40 | Instead of XXXX (50 − 10) |
| XC | 90 | Instead of LXXXX (100 − 10) |
| CD | 400 | Instead of CCCC (500 − 100) |
| CM | 900 | Instead of DCCCC (1000 − 100) |
Only I, X, and C can be used as subtractive prefixes, and only before V, L, and D respectively (plus X before C, and C before M). The converter enforces these rules and will reject malformed numerals like IIV or VX.