Connect via MCP →

Enter Calculation

Formula

Formula: Roman Numeral Date Converter
Show calculation steps (1)
  1. Roman to Arabic

    Roman to Arabic: Roman Numeral Date Converter

    Scan left to right; if a symbol value is less than the value to its right, subtract it, otherwise add it.

Advertisement

Results

Answer
XII_XXV_MMXXIV
converted date string
Component Converted
Month XII
Day XXV
Year MMXXIV

What is the Roman Numeral Date Converter?

This tool turns an ordinary calendar date into a Roman numeral string such as XII_XXV_MMXXIV, and can also reverse the process, converting Roman numerals back into ordinary numbers. It is widely used for tattoos, engraved jewelry, wedding bands, anniversary gifts and monument inscriptions, where Roman numeral dates have a classic, timeless look.

How to use it

Enter a value in each of the Month, Day and Year fields. Each field accepts either an Arabic number (like 12) or a Roman numeral (like XII) — the converter detects which you typed and outputs the other form, so it works in both directions, field by field. Choose a Format to set the order the three parts appear: US (month, day, year), EU (day, month, year) or ISO (year, month, day). Pick a Delimiter to set the character placed between parts: dot, mid dot, bullet, dash, space, underline or slash. Leave a field blank to omit it from the result.

The formula explained

To go from Arabic to Roman, the converter uses standard subtractive notation. It walks through value/symbol pairs in descending order \((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)\) and greedily appends the largest symbol that fits, subtracting its value, until nothing remains:

$$n = \sum_{i} \text{symbol}_i \quad \text{(greedy subtractive: }1000{=}M,\ 900{=}CM,\ \dots,\ 1{=}I\text{)}$$

The greedy loop can be written as:

$$\text{while } n>0:\ \text{append largest symbol} \le n,\ n \mathrel{-}= \text{its value}$$

To go from Roman to Arabic, it scans left to right and subtracts a symbol when a larger symbol follows it (as in \(IX = 9\)), otherwise it adds:

$$v = \sum_i \begin{cases} -s_i & s_i < s_{i+1} \\ +s_i & \text{otherwise} \end{cases}$$
Advertisement
Chart of Roman numeral symbols and their values including subtractive pairs
The seven Roman symbols plus the six subtractive pairs used by the greedy conversion.

Worked example

For month=12, day=25, year=2024 with US format and an underline delimiter: \(12\) becomes \(XII\), \(25\) becomes \(XXV\), and \(2024\) becomes \(MMXXIV\) \((MM=2000,\ XX=20,\ IV=4)\). Joined in US order they give XII_XXV_MMXXIV. Switch to ISO order with a dot delimiter and you get MMXXIV.XII.XXV.

A date split into day, month and year each converted to Roman numerals
A sample date broken into day, month and year, each converted then joined with a delimiter.

FAQ

What is the largest number it can convert? \(3999\) (MMMCMXCIX). Standard Roman numerals have no single symbol for 4000, so larger values are not supported.

Can it show year 0 or negatives? No. Roman numerals have no symbol for zero, and the minimum representable value is \(1\).

Does it check that the date is real? No. Each component is converted independently, so the tool will happily convert a day of 31 in a month of 2 — it is a pure number converter, not a calendar validator.

Last updated: