Real Epoch Converter logo realepochconverter
excel date converter

Excel Date Converter. OADate Serial Numbers

Excel stores dates as serial numbers, the count of days since December 30, 1899, with the time of day in the fraction. Paste one here to see the real date, or turn any date into the serial your spreadsheet expects.

converter

Excel date serial.

The OLE Automation / Excel serial number (days since December 30, 1899 (with the time of day carried in the fraction.

Whole number = the day; the fraction after the decimal point is the time of day.

How Excel dates work

Excel's 1900 date system stores 2026-08-07 00:00 as 46241, the number of days since the system's zero point. The same format, called the OLE Automation date (OADate), is used by COM, VBA, python-pptx, and many databases when they talk about dates:

  • Serial → Unix: unix_ms = (serial - 25569) * 86400000.
  • Unix → Serial: serial = unix_ms / 86400000 + 25569.
  • Time of day, the fractional part: 0.5 is noon, 0.25 is 06:00.

The zero point is December 30, 1899, chosen so the leap-day bug below stays invisible for every date Excel actually supports.

Serial dates decoded

  • 2 → January 1, 1900.
  • 25569 → January 1, 1970 00:00:00 UTC, the Unix epoch, in serial days.
  • 46241.5 → August 7, 2026 12:00:00 UTC.

Serial dates in Python, JavaScript, and C#

  • Python: datetime(1899, 12, 30, tzinfo=timezone.utc) + timedelta(days=serial).
  • JavaScript: new Date((serial - 25569) * 86400000).
  • C#: DateTime.FromOADate(46241.5) and DateTime.Now.ToOADate().

The 1900 leap-year bug

Excel's serial 60 is 1900-02-29, a day that never existed, because Excel treats 1900 as a leap year (Lotus 1-2-3 did, and Excel kept the bug for compatibility). The OADate system sidesteps it by starting one day earlier, on 1899-12-30, so:

  • Serials 1–59 (Jan 1 – Feb 28, 1900) match the same dates in both systems.
  • Serial 60 is the fake day 1900-02-29; because the OADate zero point sits at 1899-12-30, this converter maps serial 60 to the real date 1900-02-28. Excel itself displays 1900-02-29 for the same serial.
  • From serial 61 (1900-03-01) onward, both systems agree with the real calendar.

Gotchas: fractions, negative serials, and the 1904 system

  • Fraction = time. 46241 is midnight and 46241.99999 is 23:59:59; the decimal part is a fraction of a day, not hours.
  • Negative serials, dates before 1899-12-30 produce negative numbers that Excel displays inconsistently; this converter handles them mathematically.
  • 1904 system, classic Mac Excel used a 1904-based system (serial 0 = 1904-01-01; only the 1900-based system starts at 1899-12-30). Add 1462 days to convert a serial between the two systems.

First published · Last reviewed · Maintained and developed by the Real Epoch Converter team · Email · Contact · Methodology

Copied