Timestamp Converter

Convert Unix timestamps (epoch) to human-readable dates and vice versa. Live clock, ISO 8601, and relative time.

Current Unix Timestamp

1,788,438,551

Thursday, September 3, 2026 at 12:29:11 PM UTC

What the converter does

It converts in both directions and shows every representation at once, so you do not have to convert twice to answer “is this the same moment?”. Everything runs on the browser's own Date object — no requests after the page loads.

  • Live clock — the current epoch, ticking every second, with a copy button.
  • Timestamp → date — type or paste an epoch value; it converts as you type.
  • Date → timestamp — native date and time pickers, second precision.
  • Four outputs — local time, ISO 8601 in UTC, relative (“3d ago”), and the same instant in the other unit. Each is separately copyable.
  • Seconds / milliseconds toggle — applies to both input and output.
  • Now — fills both sides with the current moment.

What is a Unix timestamp?

A Unix timestamp (epoch time) counts the seconds elapsed since January 1, 1970 00:00:00 UTC. Storing time as a single integer removes timezone ambiguity, sorts naturally, and uses minimal storage. Databases, APIs, log files, and JWT tokens all use Unix timestamps heavily.

Seconds or milliseconds?

This is the single most common timestamp bug. Both are “Unix time”, they just differ by a factor of 1000, and nothing in the number itself says which you have — you count digits.

UnitDigitsExampleTypical source
Seconds101700000000Unix, JWT exp/iat, Postgres EXTRACT(EPOCH), Python time.time()
Milliseconds131700000000000JavaScript Date.now(), Java, Kafka, most log pipelines

Read milliseconds as seconds and you land somewhere around the year 55,000. Read seconds as milliseconds and you land in January 1970. Both are obvious once you see the date, which is why this page always renders one.

UTC vs. your local timezone

A timestamp has no timezone. It is an absolute count of seconds; timezones only appear when you render it. That is why this page shows both: Local Time in your browser's zone, and ISO 8601 in UTC with a trailing Z.

The direction that bites people is date → timestamp. The date and time you pick here are read as local time, so the same picker values produce different timestamps for two people in different zones. If you need a specific UTC instant, work from the ISO field rather than the pickers.

Working with timestamps in code

// JavaScript — milliseconds (÷ 1000 for seconds)
Date.now()                        // current ms timestamp
new Date(1700000000 * 1000)       // seconds → Date object
Math.floor(Date.now() / 1000)     // current seconds timestamp

// Python
import time, datetime
time.time()                       # current seconds (float)
datetime.datetime.fromtimestamp(1700000000)  # → datetime

// PostgreSQL
SELECT NOW();                     -- current timestamp
SELECT EXTRACT(EPOCH FROM NOW()); -- → seconds since epoch
SELECT to_timestamp(1700000000);  -- seconds → timestamptz

// MySQL
SELECT UNIX_TIMESTAMP();          -- current seconds
SELECT FROM_UNIXTIME(1700000000); -- seconds → datetime

Common timestamp pitfalls

  • Year 2038 problem — 32-bit signed integers overflow at timestamp 2147483647 (Jan 19, 2038). Modern systems use 64-bit integers, but old embedded systems and databases may still be affected.
  • Leap seconds — Unix time ignores leap seconds, so it is not perfectly synchronized with UTC. Typically irrelevant for application development.
  • Date-only strings — new Date("2024-01-15") is parsed as UTC midnight, while new Date("2024-01-15T00:00") is parsed as local. A whole day can shift on that difference.
  • Negative timestamps — valid, and they mean pre-1970. If you see one where you expected a recent date, something upstream is subtracting.

Related date & time tools

Frequently Asked Questions

What is a Unix timestamp?

The number of seconds since 1 January 1970 00:00:00 UTC. Storing a moment as one integer removes timezone ambiguity and sorts correctly, which is why databases, APIs, logs, and JWTs all use it.

Seconds or milliseconds — how do I tell?

Count the digits. Ten digits is seconds, thirteen is milliseconds. Feeding milliseconds into a seconds parser lands you in the year 55000-odd, which is usually the first clue something is off.

Can I convert a date back to a Unix timestamp?

Yes. Use the date and time pickers on the right. The timestamp updates as you change either field, in whichever unit is selected. There is no button to press.

Which timezone are the results in?

Local Time uses your browser's timezone, and the date picker is interpreted as local time too. The ISO 8601 field is always UTC, which is why it ends in Z.

Is my data sent anywhere?

No. Every conversion uses the browser's own Date object. The page makes no requests once it has loaded.