Unix timestamp converter

Epoch seconds or milliseconds to readable dates, both directions, with the current timestamp ticking live.

Current epoch (seconds) — click to copy

Timestamp → date

Date → timestamp

How to convert in both directions

  1. For timestamp to date, paste any epoch value into the timestamp field. The tool auto-detects seconds versus milliseconds by digit count and says which it assumed.
  2. Read the result three ways at once: your local time, UTC, and ISO 8601, plus a relative phrase like "in 4 hours" or "2 days ago".
  3. For date to timestamp, pick a date and a local time in the lower section; the epoch value appears in both seconds and milliseconds.
  4. The ticking counter at the top is the current epoch in seconds. Click it to copy it, which is the fastest "what is the timestamp right now" answer available.

A worked example

Paste 1780000000 into the timestamp field. Ten digits, so the tool reads it as seconds and reports Thu, 28 May 2026 20:26:40 GMT as the UTC time, alongside whatever that instant is in your local timezone and the ISO form 2026-05-28T20:26:40.000Z. Now paste 1780000000000, the same instant in milliseconds: thirteen digits, and the tool flags "Read as milliseconds" and lands on the identical date. That flag is worth glancing at every time, because feeding a milliseconds value into a system expecting seconds is the classic bug that schedules your job for the year 58383.

What is going on underneath

Conversion is done by your browser's own Date object, so the local-time rendering uses your actual OS timezone, including daylight saving rules, with no timezone database shipped or guessed. The seconds-or-milliseconds decision is a simple threshold: values longer than 11 digits are treated as milliseconds, which cleanly separates the two for any date in a human lifetime. Negative values work and give you dates before 1970. In the date-to-timestamp direction, the time you enter is interpreted in your local timezone, matching what "schedule this for 9am" means to you, and the relative-time phrasing comes from the browser's built-in internationalization formatter. The current-epoch display updates every second and everything runs locally.

Honest limitations

The tool converts between epoch and your timezone plus UTC, but it is not a timezone converter: you cannot ask what a timestamp is in Tokyo unless your machine is set to Tokyo time. Auto-detection, while right in practice, means you cannot force an interpretation; a genuine seconds value more than 11 digits long (past the year 5138) would be misread, which is a problem I am comfortable deferring. Date parsing accepts what the browser's date and time inputs produce, not free-form strings like "next Tuesday". And relative times round to the largest sensible unit, capping at days, so a timestamp a year out reads as "in 365 days" rather than "in 1 year". For scripting or bulk conversion, use your language's date library; this page is built for the ten-times-a-day single lookup.

Frequently asked questions

What is a Unix timestamp?

The number of seconds since midnight UTC on January 1, 1970 (the "epoch"). It is the standard machine representation of time: timezone-free, sortable, and arithmetic-friendly. 1,000,000,000 landed in September 2001; 2,000,000,000 arrives in 2033.

Seconds or milliseconds, how do I tell?

Length: current timestamps are 10 digits in seconds and 13 in milliseconds. This tool auto-detects by size and shows which it assumed. JavaScript uses milliseconds; most Unix tools and APIs use seconds.

What is the year-2038 problem?

Signed 32-bit integers overflow at 2,147,483,647, which is January 19, 2038 in epoch seconds. Modern 64-bit systems are unaffected, but old embedded systems storing time in 32 bits will wrap around.