What this tool does
A date in, the three forms you usually need out.
2026-06-11T12:00:00Z
Unix seconds: 1781179200
Unix milliseconds: 1781179200000
ISO 8601 (UTC): 2026-06-11T12:00:00.000Z
now works too, and gives you the moment you pressed the button. ISO 8601 is the form to prefer; June 11, 2026 and other long forms are read as well, when they are not ambiguous.
A date that does not exist is refused
2026-02-30
2026-02-30 is not a date: February 2026 has 28 days
Date.parse rolls the extra days into the next month, so that input used to give you the 2nd of March — a timestamp with nothing wrong about it, except that it was not the date you wrote. A day that does not exist is almost always a typo or a calculation that went wrong further up, and answering it with a plausible number hides both. The month’s real length is in the message, and 29 February is allowed in leap years and refused in the others.
An ambiguous date is refused
11/06/2026
"11/06/2026" is ambiguous: day 11 of month 6, or day 6 of month 11? Write it as YYYY-MM-DD.
Date.parse reads slashed dates the American way: month first. For most of the world 11/06/2026 is the 11th of June, and the silent disagreement is five months wide. When both numbers could be a month, the converter names the two readings instead of choosing. When only one reading is possible it takes it, in either order: 25/12/2026 and 12/25/2026 are both Christmas 2026, read as midnight UTC like a date with no time. Date.parse only ever read its own order, and answered the rest of the world with “Unrecognized date”.
Where the day starts
- A date alone is UTC.
2026-06-11is midnight UTC, wherever you are. That is what the specification says, and it is why a date-only value is portable. - A date and time without a zone is local.
2026-06-11T12:00:00is noon in your browser’s timezone: the same text is two different instants in Paris and in New York. Zor an offset settles it.2026-06-11T12:00:00Z, or+02:00, means the same instant everywhere — worth the two extra characters.
Private by design
Everything runs locally in your browser with JavaScript. Your data is never uploaded, which makes the tool safe for sensitive content, and it keeps working offline.