⏱ Unix Timestamp Converter
Epoch ↔ human date in your time zone and UTC. Seconds, milliseconds, microseconds and nanoseconds are detected automatically from the number of digits.
How to use the epoch converter
- The now panel shows the current Unix time in seconds and milliseconds plus your local clock, updating live. Click any value to copy it, or hit pause to freeze it.
- timestamp → date: type or paste an epoch value. The unit is detected from the number of digits, and you get your local time, UTC, ISO 8601, a readable date with weekday, and "3 days ago / in 2 hours." Commas, underscores and spaces are ignored.
- date → timestamp: pick a date and time, choose which time zone that wall-clock time is in (your local time, UTC, US zones and more), and get the Unix timestamp in seconds and milliseconds. The now button fills in the current time.
- Every result row has its own copy button.
What is a Unix timestamp?
A Unix timestamp (also called epoch time or POSIX time) is the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC, not counting leap seconds. Because it's a single number that doesn't depend on time zones or daylight saving time, it's the standard way to store moments in databases, logs, APIs, cookies and JWTs. The same timestamp shows up as different wall-clock times around the world — 1759622400 is midnight UTC on October 5, 2025, but 8:00 PM the previous evening in New York — so it's worth checking both local time and UTC.
Time zones when converting a date to epoch
The same "2025-10-05 09:00" produces different timestamps depending on which time zone it refers to. Pick UTC when the value comes from server logs or a database that stores UTC; pick your local time (or a specific US zone) when you're converting a time a user saw on screen. US zones automatically account for daylight saving time: 9:00 AM in New York is UTC−4 in summer (EDT) and UTC−5 in winter (EST).
Seconds, milliseconds, microseconds or nanoseconds?
| Digits (integer part) | Unit | Example (2025-10-05 00:00 UTC) |
|---|---|---|
| up to 11 | seconds (s) | 1759622400 |
| 12–14 | milliseconds (ms) | 1759622400000 |
| 15–17 | microseconds (μs) | 1759622400000000 |
| 18 or more | nanoseconds (ns) | 1759622400000000000 |
JavaScript's Date.now() and Java's System.currentTimeMillis() return milliseconds. The shell's date +%s, Python's int(time.time()), PHP's time() and JWT claims use seconds. Go's time.Now().UnixNano() is nanoseconds. Negative values (before 1970) and decimals are supported.
Get the current epoch time in code
| Language | Seconds | Milliseconds |
|---|---|---|
| JavaScript | Math.floor(Date.now() / 1000) | Date.now() |
| Python | int(time.time()) | time.time_ns() // 1_000_000 |
| Bash / Linux | date +%s | date +%s%3N |
| SQL (PostgreSQL) | extract(epoch from now()) | — |
| Excel / Sheets → date | =A1/86400+DATE(1970,1,1) (UTC; format the cell as date/time) | |
Detection is by digit count, so unusual values — for example a millisecond timestamp from before March 1973 — can be read as a different unit. Always check the unit label next to the result. Microseconds and nanoseconds are rounded to milliseconds for display. Everything runs locally in your browser.