A Unix timestamp is the number of seconds elapsed since January 1, 1970, 00:00:00 UTC — a moment known as the Unix epoch. It is the most widely used machine-readable representation of time in programming, databases, APIs, and log files. The converter above accepts a timestamp and shows the equivalent UTC and local-timezone datetime, or converts a human-readable datetime back to a timestamp.
The formula
unix_timestamp = (UTC datetime − 1970-01-01T00:00:00Z) in whole seconds
human datetime = 1970-01-01T00:00:00Z + timestamp seconds
Millisecond timestamps (used by JavaScript's Date.now()) are 1,000× larger than second timestamps. Divide by 1,000 before entering here.
Practical examples
Example 1 — Epoch origin
Timestamp: 0 → 1970-01-01 00:00:00 UTC
Negative timestamps represent dates before 1970, e.g. −86400 = 1969-12-31 00:00:00 UTC.
Example 2 — Recent date
Timestamp: 1748390400 → May 28, 2026, 00:00:00 UTC
Example 3 — Millisecond timestamp from JavaScript
Date.now() returns 1748390400000 (milliseconds). Divide by 1000: 1748390400 → use in this converter.
Common mistakes
Confusing seconds and milliseconds. Many modern APIs (JavaScript, Android, Python's time.time_ns()) return milliseconds or nanoseconds. A 13-digit timestamp is milliseconds; a 10-digit timestamp is seconds. If the converted date shows 1973 instead of 2024, you likely need to divide by 1000.
Assuming timestamps include timezone information. Unix timestamps are always UTC by definition. Converting to local time is a display operation performed by the viewer's system — the underlying number is timezone-agnostic.
The 2038 problem. Signed 32-bit integers overflow at 2,147,483,647 — January 19, 2038, 03:14:07 UTC. Systems using 32-bit timestamps may malfunction at this point. 64-bit systems (standard on modern hardware) extend the range by billions of years.
International and regional variations
| Platform / language | Unit | Example (now) |
|---|---|---|
| Unix / POSIX / C | Seconds | 1748390400 |
| JavaScript / Java | Milliseconds | 1748390400000 |
| Python time.time() | Float seconds | 1748390400.123 |
| Go time.Now().UnixNano() | Nanoseconds | 1748390400000000000 |
| PostgreSQL EXTRACT(EPOCH) | Float seconds | 1748390400.0 |
Quick reference — notable Unix timestamps
| Timestamp | UTC date | Significance |
|---|---|---|
| 0 | 1970-01-01 | Unix epoch origin |
| 1,000,000,000 | 2001-09-09 | First billion-second milestone |
| 1,234,567,890 | 2009-02-13 | Popular cultural milestone |
| 2,000,000,000 | 2033-05-18 | Second billion-second milestone |
| 2,147,483,647 | 2038-01-19 | 32-bit integer overflow (Year 2038 problem) |