Open Calculators
Blog
Epoch Time for Developers, Logs & Databases

Unix Timestamp Converter (Epoch to Date)

Paste any timestamp — seconds, milliseconds, microseconds or nanoseconds, with or without separators, or a date string — and the unit is detected automatically. Convert to readable dates in any timezone and back, with ISO 8601 and RFC 2822 output.

Unix Epoch Timestamp Converter

Timestamp → Human Date

Auto-detected as Seconds (10 digits).

Treat number as
Human readable
Thursday, Jan 1, 2026 at 00:00:00 (UTC+00:00)
ISO 8601 (UTC)
2026-01-01T00:00:00.000Z
ISO 8601 with offset (UTC)
2026-01-01T00:00:00+00:00
RFC 2822
Thu, 01 Jan 2026 00:00:00 +0000
HTTP date (UTC)
Thu, 01 Jan 2026 00:00:00 GMT
Unix seconds
1767225600
Unix milliseconds
1767225600000
Unix microseconds
1767225600000000
Unix nanoseconds
1767225600000000000
Calendar
Thursday · day 1 · ISO week 1
Relative
—
Notable timestamps

Human Date → Timestamp

Unix seconds
1767225600
Unix milliseconds
1767225600000
ISO 8601 (UTC)
2026-01-01T00:00:00.000Z

Seconds in Common Durations

1 Minute60
1 Hour3,600
1 Day86,400
1 Week604,800
1 Month (30.44 days)2,629,746
1 Year (365.2425 days)31,556,952

Unix time ignores leap seconds: every day is exactly 86,400 seconds.

Quick Answer & Key Epoch Formulas

Direct Answer: A Unix timestamp counts the seconds since 1970-01-01 00:00:00 UTC. To get the date, add that many seconds to the epoch: days = ⌊t ÷ 86,400⌋. To get a timestamp in code, use Math.floor(Date.now() / 1000) in JavaScript or date +%s in a shell. 10-digit values are seconds; 13-digit values are milliseconds.

Understanding Unix Time & Conversion Math

Unix time (POSIX time) is a single integer that counts seconds elapsed since the Unix epoch, midnight UTC on 1 January 1970. Because it has no timezone and no daylight-saving rules, it is the standard way to store and compare instants in databases, logs, APIs and file systems.

1. Timestamp to Date (epoch → UTC)

Split the timestamp into whole days and leftover seconds, then count the days forward from 1 January 1970:

days = ⌊t ÷ 86,400⌋ · seconds of day = t mod 86,400

Example: 1,700,000,000 ÷ 86,400 = 19,675 days + 80,000 s (22:13:20) → 2023-11-14 22:13:20 UTC.

2. Date to Timestamp (UTC → epoch)

Count the days since 1970-01-01, convert to seconds, add the time of day and subtract the timezone's UTC offset:

t = days × 86,400 + h × 3,600 + m × 60 + s − UTC offset

Example: 2026-01-01 00:00 UTC is 20,454 days × 86,400 = 1,767,225,600.

Seconds or Milliseconds? Count the Digits

For present-day dates, 10 digits means seconds and 13 digits means milliseconds (16 = microseconds, 19 = nanoseconds). JavaScript and Java use milliseconds; Unix shells, PHP and Python's time.time() use seconds:

ms = s × 1,000 · µs = s × 10⁶ · ns = s × 10⁹

1767225600 (10 digits) and 1767225600000 (13 digits) are the same instant: 2026-01-01 00:00 UTC.

Notable Unix Timestamps

TimestampUTC Date & TimeSignificance
−2,208,988,8001900-01-01 00:00:00NTP epoch — a negative Unix time
01970-01-01 00:00:00The Unix epoch
1,000,000,0002001-09-09 01:46:40The Unix "billennium"
1,234,567,8902009-02-13 23:31:30Sequential digits celebrated by developers
1,700,000,0002023-11-14 22:13:201.7 billion seconds
2,000,000,0002033-05-18 03:33:20Two billion seconds
2,147,483,6472038-01-19 03:14:07Signed 32-bit maximum (Year 2038 problem)

Frequently Asked Questions

What is a Unix timestamp?

A Unix timestamp is the number of seconds that have elapsed since 00:00:00 UTC on 1 January 1970, not counting leap seconds. It is timezone-independent, so the same instant has the same timestamp everywhere.

Does Unix time count leap seconds?

No. Unix time treats every day as exactly 86,400 seconds. When a leap second occurs, the clock repeats or smears a second, so Unix time stays aligned with UTC dates.

What is the Year 2038 problem?

Systems that store time in a signed 32-bit integer can count only up to 2,147,483,647, which is 03:14:07 UTC on 19 January 2038. One second later the value overflows to a date in 1901. Modern 64-bit systems are not affected.

How do I get the current Unix timestamp in code?

JavaScript: Math.floor(Date.now() / 1000). Python: int(time.time()). PHP: time(). Bash: date +%s. SQL (PostgreSQL): EXTRACT(EPOCH FROM NOW()).

How does the converter know if a timestamp is in seconds or milliseconds?

It looks at the magnitude: for dates between 1973 and 5138, seconds have 9–11 digits, milliseconds 12–14, microseconds 15–17 and nanoseconds 18 or more. Separators such as 1,767,225,600, a unit suffix like ms, or a date string such as 2026-01-01T00:00:00Z are also understood, and you can override the unit manually.