Convert epoch seconds to a date in any time zone, or a date back to a timestamp. Seconds,
milliseconds and microseconds are detected automatically.
Current timestamp
1785406049
Seconds since 1 January 1970 UTC. Shown for
until your browser
starts it ticking.
Timestamp to date
10 digits for seconds, 13 for milliseconds, 16 for microseconds.
Local date and time
—
UTC
—
ISO 8601
—
Relative
—
Detected unit
—
Date to timestamp
Pick a zone that observes daylight saving time to see how ambiguous and skipped local
times are handled.
Seconds
—
Milliseconds
—
ISO 8601
—
Reference timestamps
Landmark values, all in UTC.
Timestamp
UTC date and time
Why it matters
0
1 Jan 1970, 00:00:00
The epoch itself — 1 January 1970, 00:00:00 UTC
1000000000
9 Sept 2001, 01:46:40
Widely noted milestone, 9 September 2001
1700000000
14 Nov 2023, 22:13:20
14 November 2023
2147483647
19 Jan 2038, 03:14:07
Largest value a signed 32-bit integer holds — 19 January 2038
How the conversion works
A Unix timestamp is a count of seconds from a fixed instant, so converting it to a date is
arithmetic plus a choice of time zone — and the zone is the part that needs care. This page
turns the timestamp into an instant first, then formats that instant with the IANA rules for
the zone you pick, which means a timestamp that lands inside a daylight saving change is
rendered with the offset that was genuinely in force at that moment.
Converting a date back
The reverse direction is where ambiguity lives. A wall-clock reading such as 01:30 on the
morning clocks go back occurs twice in that zone, and a reading inside a spring-forward gap
never occurs at all. Rather than pick silently, the form tells you when your input is
ambiguous or impossible so you can decide which instant you meant.
Frequently asked questions
What is a Unix timestamp?
It is the number of seconds that have elapsed since 1 January 1970 at 00:00:00 UTC, not counting leap seconds. Because it counts from a fixed instant in UTC it has no time zone of its own — the same timestamp describes one moment everywhere, and only becomes a local date when you choose a zone to display it in.
Seconds, milliseconds or microseconds — how can I tell?
By length. A present-day timestamp in seconds has ten digits, in milliseconds thirteen, and in microseconds sixteen. JavaScript's Date.now() returns milliseconds while most Unix tooling and database columns use seconds, which is the usual source of dates landing in 1970 or in the year 56000. The converter above detects the unit from the digit count and says which it used.
Does a Unix timestamp change with daylight saving time?
No, and that is exactly why it is useful for storage. The timestamp keeps counting straight through a clock change; only the local date and time you render it as will jump. If you store an event as a timestamp plus an IANA zone id, both the instant and the intended wall-clock reading survive any future rule change.
What is the year 2038 problem?
Systems that hold the timestamp in a signed 32-bit integer cannot count past 2,147,483,647, which is reached at 03:14:07 UTC on 19 January 2038; the next increment overflows to a negative number and reads as 1901. Modern platforms use 64-bit values and are unaffected — JavaScript has always used a 64-bit floating point millisecond count.
Can a timestamp be negative?
Yes. Negative values count backwards from the epoch, so −86400 is 31 December 1969. Some older software rejects them, which is worth checking before storing historical dates that way.