Unix timestamp converter
Convert between Unix epoch seconds (or milliseconds) and human-readable dates in any time zone.
From timestamp
From date
Seconds: —
Milliseconds: —
Right now
Seconds: — · Milliseconds: —
What a Unix timestamp is
The Unix timestamp is the number of seconds (or milliseconds, in JavaScript) since 00:00:00 UTC on Thursday, 1 January 1970 — known as the Unix epoch. It's the default way computers represent points in time: time zones are not stored, just the absolute instant.
This tool converts in both directions. Type a timestamp and see the corresponding date in your local time, in UTC, and in ISO 8601 format. Type a date and see the corresponding timestamp.
Seconds vs milliseconds
Unix/Linux/POSIX uses seconds. JavaScript's Date.now() returns milliseconds. Most APIs use seconds, but many JSON payloads ship milliseconds. A quick way to tell: a present-day seconds timestamp is 10 digits (~1.7 billion); the milliseconds version is 13 digits. The tool lets you specify which.
Time zones, briefly
Timestamps don't carry time zones. The local time you see depends on your computer's clock and time-zone setting. UTC is the universal reference; ISO 8601 with a Z suffix is the unambiguous, machine-readable form. When sending timestamps over an API, sending UTC (or a Unix integer, which is implicitly UTC) is always safest.
The year-2038 problem
The classic 32-bit signed Unix timestamp overflows on 19 January 2038 at 03:14:07 UTC. Most modern systems have already moved to 64-bit timestamps, which won't overflow for about 292 billion years. JavaScript uses a double-precision float, which can losslessly represent millisecond timestamps until the year 285,616. So for practical purposes, the year-2038 problem only affects legacy 32-bit systems.
Common epoch reference points
| Date | Timestamp (s) |
|---|---|
| 1970-01-01 (Unix epoch) | 0 |
| 2000-01-01 | 946684800 |
| 2010-01-01 | 1262304000 |
| 2020-01-01 | 1577836800 |
| 2030-01-01 | 1893456000 |
| 2038-01-19 03:14:07 | 2147483647 (max signed 32-bit int) |
Privacy
All conversions happen in your browser.
Frequently asked questions
Seconds or milliseconds — how do I tell?
Does my local time matter?
What's the largest timestamp I can enter?
How do I get a Unix timestamp in (language X)?
int(time.time()). In JavaScript: Math.floor(Date.now() / 1000). In bash: date +%s. In SQL: UNIX_TIMESTAMP().Why doesn't the date input show seconds on some browsers?
step="1" attribute requests second-level precision, but support is uneven. Type the date by hand if needed.