Unix Timestamp Converter
Unix time to a readable date and back, in seconds or milliseconds, UTC or local.
One per line to convert several at once.
ISO 8601, or anything your browser can read.
How it works
Unix time is the number of seconds since midnight UTC on 1 January 1970, and its great virtue is that it has no timezone, no daylight saving and no locale. It is a single integer describing an instant, identical everywhere on earth. Every timezone problem in software comes from converting to and from it, never from the value itself.
Seconds against milliseconds is the error that costs the most time. Unix time is defined in seconds; JavaScript's <code>Date.now()</code>, Java's <code>currentTimeMillis</code> and most APIs written by people who learned from them return milliseconds. Mixing them gives you a date in 1970 or one about fifty thousand years out — this converter detects which you pasted by magnitude and says so, because the failure is so much easier to see than to reason about.
Daylight saving is the other trap, and it is why storing local time is a mistake. In every timezone that observes it, one local hour each year does not exist and another happens twice. "2 November 2025, 01:30, New York" is genuinely ambiguous — there were two such instants an hour apart. A Unix timestamp cannot be ambiguous, which is the argument for storing it and converting only for display.
Two limits are worth knowing. A signed 32-bit timestamp overflows on 19 January 2038, which is a live problem in embedded systems and old file formats that still use one. And Unix time deliberately ignores leap seconds — it pretends every day is exactly 86,400 seconds long — so it is not a true count of elapsed seconds and never has been. That is a feature: it keeps the arithmetic between dates simple, at the cost of being a few dozen seconds adrift from atomic time.
Common questions
Seconds or milliseconds — how can I tell?
By size. A current timestamp in seconds is ten digits; in milliseconds it is thirteen. If a ten-digit value gives you a date in the future beyond all reason, or a thirteen-digit one lands in 1970, you have them the wrong way round.
Why does my timestamp show a different date than my colleague's?
You are almost certainly displaying in different local timezones. The timestamp is the same instant for both of you. Switch the display above to UTC and you will agree.
What happens in 2038?
A signed 32-bit integer holding seconds overflows on 19 January 2038 and wraps to 1901. Anything 64-bit — which is everything modern — is fine for another 292 billion years. The risk lives in embedded firmware, old databases and file formats that fixed the width decades ago.
Does Unix time count leap seconds?
No. It treats every day as exactly 86,400 seconds, so it repeats a value across a leap second rather than counting it. This makes date arithmetic simple and means Unix time is not a true elapsed-second count — it currently sits a handful of seconds behind atomic time.