What is an Excel serial date?
An Excel serial number is a count of days. Serial 1 is 1900-01-01, serial 45292 is 2024-01-01, and serial 2958465 is 9999-12-31, the last date Excel can store. Anything after the decimal point is the time of day, so .5 means noon. This converter reads a serial as a date and a date back as a serial, in both the 1900 system Windows Excel uses and the 1904 system inherited from early Mac versions. Those two sit 1,462 days apart, which is why a workbook written in one and opened in the other shows every date four years and a day out. Serial 60 is different. Excel prints it as 1900-02-29, a date that never existed, because 1900 was not a leap year at all.
Excel does not store dates. It stores numbers and formats them to look like dates, which is why a cell can flip from 01/03/2024 to 45352 the moment its number format changes, and why pasting a date column between files sometimes leaves you holding five-digit integers.
The count has two starting points. Serials from 61 up are measured from 1899-12-30; serials 1 to 59 are measured from 1899-12-31. One day apart, and the seam between them is serial 60.
The 1900 leap-year bug
1900 divides by 100 and does not divide by 400, so it is not a leap year and that February ran to 28 days. Excel disagrees. It reserves serial 60 for 1900-02-29, and every serial above 60 is therefore one higher than the honest day count.
The reason is compatibility, not carelessness. Lotus 1-2-3 had the bug, Lotus owned the spreadsheet market, and Microsoft copied the behaviour deliberately so that files could move between the two without every date sliding by a day. It has been kept in every release since and it is documented, not pending a fix.
What it costs in practice is narrow. Dates from 1900-03-01 onward are internally consistent with each other, so subtracting one from another gives the right number of days. Only the first 60 serials are affected, and almost nothing real is stored down there.
1900 against 1904
Early Mac versions of Excel counted from 1904-01-01 instead, with serial 0 sitting on the epoch itself. The gap between the two systems is 1,462 days: four years, plus the phantom leap day the 1900 system carries and the 1904 system does not. Workbooks still store which one they use.
This is the failure the tool is most useful for. If a date column is out by four years and a day, the file was authored under one system and is being read under the other, and switching the picker above shows you both readings of the same number.
The bridge to Unix time
Serial 25569 is 1970-01-01, so unix_seconds = (serial − 25569) × 86400. Serial 45292 comes out at 1704067200. It is exact in both directions, and it is the relation most developers arrive here looking for.