Skip to main content

UTC · Coordinated Universal Time

World Time Kit

Unix timestamp converter

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.

Related tools