Free tool
Universal date format converter
Paste a date in any common format. We auto-detect it, flag the confidence, and render 14 equivalent representations, ISO 8601, RFC 3339, Unix epoch, SQL, Python, Go, .NET, and more, each with a one-click copy button.
2026-11-02T19:13:54.971Z2026-11-022026-11-02T19:13:54.971+00:00Mon, 02 Nov 2026 19:13:54 +0000Mon, 02 Nov 2026 19:13:54 GMT2026-11-02 19:13:5417936468341793646834971Mon Nov 02 2026 19:13:54 GMT+0000 (Coordinated Universal Time')2026-11-02T19:13:54.971Z2026-11-02 19:13:54+00:002026-11-02 19:13:54 +0000 UTC2026-11-02T19:13:54.9710000ZMonday, 2 November 2026 at 19:13 UTCjust nowMon 2 Nov 2026, 19:13:54 (Z)Why 03/04/2026 is two different days
Written as 03/04/2026, that string means March 4th to an American reader and the 4th of March to most of the rest of the world, wait, no: it means April 3rd in Europe. That confusion is exactly the point. The US convention is month-first (M/D/Y), while Europe, most of Asia, and the ISO world put the day first (D/M/Y). The same eight digits land you on two calendar days a month apart. When our detector sees a slashed date where both numbers are 12 or below, it cannot know which you meant, so it flags the input as ambiguous and gives you a toggle to choose. Pick the interpretation and every output below updates to match.
ISO 8601 vs RFC 3339, the difference that bites
People treat ISO 8601 and RFC 3339 as the same thing, and 95% of the time they overlap. The bites come from the edges. ISO 8601 allows a bare date with no time, a date with no offset, week dates like 2026-W22, and the literal Z or a numeric offset. RFC 3339 is a strict profile: it requires a full date and time, demands an offset (either Z or +00:00), and forbids the looser ISO forms. If you emit 2026-05-29T14:30:00 with no offset, that is valid ISO 8601 but invalid RFC 3339, and a strict parser will reject it. When in doubt, always include the offset.
Every language's date format, side by side
The same instant has a different idiomatic string in every ecosystem. JavaScript hands you toISOString() and a chatty toString(); Python leans on strftime directives; Go uses its famous reference layout 2006-01-02 15:04:05; .NET has the round-trip o specifier; SQL wants YYYY-MM-DD HH:MM:SS; and HTTP headers follow RFC 7231's GMT-stamped form. Seeing them stacked makes it obvious which one to paste into your code, your database, or your curl command. If you also need to move an instant between cities, the time zone converter does the offset maths for you.