ToolBench

Time

Unix Timestamp Converter

Accepts 10-digit seconds and 13-digit milliseconds without asking which you meant, and shows the same moment in UTC, local time and ISO 8601.

Unix timestamp
Date & time (local)

How to use it

  1. Type a timestamp in the left field; the date appears on the right.
  2. Or type a date such as 2026-10-17 09:30:00 to get the timestamp back.
  3. Press Use current time for the epoch value of right now.

Seconds, milliseconds, and the year 2038

Unix time counts seconds from 1 January 1970 UTC, deliberately ignoring leap seconds. Many systems store that count in a signed 32-bit integer, whose maximum is 2,147,483,647 — reached on 19 January 2038. Anything still using 32-bit timestamps will wrap around to 1901 on that day. It is the same class of bug as Y2K, with rather less time left to fix it.

Why a timestamp looks wrong by a few hours

A Unix timestamp has no timezone attached: it is an absolute instant. What changes is the local rendering. The same value that reads 09:00 in London reads 17:00 in Shanghai and 01:00 the next day in Auckland. When a stored time “looks off by eight hours”, the storage is almost always correct and the display is applying the wrong zone.

Identifying the unit from the number itself

You do not need to know what produced a timestamp to read it — the magnitude gives it away. Ten digits is seconds (the current era sits around 1.7 billion). Thirteen is milliseconds. Sixteen is microseconds. Nineteen is nanoseconds. A value in the 1970s usually means an empty field was written as zero.

When a converted time is off by a whole number of hours, the timestamp is fine and the display is not: the value is UTC by definition, and the browser is rendering it in local time. Store UTC, render local, and never store a local time without its offset.

Frequently asked questions

What exactly is a Unix timestamp?

Seconds since 1970-01-01 00:00:00 UTC, ignoring leap seconds. It is timezone-independent, which is why databases store it.

Seconds or milliseconds?

Both work. A 10-digit value is read as seconds, a 13-digit value as milliseconds; the hint underneath says which was used.

Why is my timestamp off by hours?

The epoch is UTC but the local line renders in your machine's timezone. Compare against the UTC line to tell which it is.

Does this handle leap seconds?

No. Unix time ignores them; the count assumes every day is exactly 86,400 seconds, which is why it drifts from astronomical time.

What happens in 2038?

32-bit signed timestamps overflow on 19 January 2038. Anything still storing seconds in a 32-bit field will wrap to 1901.