What is a Unix timestamp?
A Unix (or epoch) timestamp counts the time elapsed since 1 January 1970 00:00:00 UTC. It has no time zone:
1700000000 is the same instant everywhere — 14 November 2023 22:13:20 UTC, or 23:13:20 in Brussels.
Only the way it's displayed depends on the zone, which is why this tool shows both UTC and your local time.
Seconds, milliseconds, microseconds, nanoseconds
Different systems count in different units, and mixing them up is a classic bug (dates in 1970 or in the year 55,000):
- Seconds (10 digits today) — Unix tools, PHP, Python's
time.time(), most databases and JWTexp/iatclaims. - Milliseconds (13 digits) — JavaScript
Date.now(), JavaSystem.currentTimeMillis(), many JSON APIs. - Microseconds (16 digits) — PostgreSQL internals, some Python and Go libraries.
- Nanoseconds (19 digits) — Go
time.UnixNano(), InfluxDB, OpenTelemetry.
The unit is guessed from the size of the number; override it if you're working with a date close to 1970.
Dates to timestamps
Type a date in ISO 8601 form (2024-03-01T09:30:00Z), with an offset (2024-03-01T09:30:00+01:00),
or in the common log/SQL form 2024-03-01 09:30:00. A date and time without a zone is read as your local time;
a bare date like 2024-03-01 is read as midnight UTC, following the JavaScript standard. Add Z or an offset to be explicit.
You can also use the date picker, which works in your local time zone.
The year 2038 problem
Systems that store seconds in a signed 32-bit integer overflow at 2147483647 — 19 January 2038 03:14:07 UTC.
Paste that value above to see it. Modern 64-bit systems are not affected.
All conversions happen in your browser. Nothing you type is sent anywhere.