Convert a Unix epoch timestamp to a human date (local, UTC, ISO and relative) or a date back to a timestamp. Detects seconds vs milliseconds.
Time • epoch
Encoding and decoding share the page, so any result can be pasted straight back to confirm it round-trips to the text you started with — the quickest check that nothing was mangled.
Results are recalculated on every keystroke, with no submit step and no page reload, so a value can be adjusted until the answer looks right rather than guessed once.
Everything runs in your browser — no account, no uploads, nothing leaves your device.
A Unix timestamp (epoch time) is the number of seconds since 00:00:00 UTC on 1 January 1970 — the reference clock used by most computers, databases, log files and APIs. This converter turns a timestamp into a human-readable date in your local time, UTC, ISO 8601 and a relative form ("3 days ago"), and converts a date back into a timestamp.
It auto-detects seconds (10 digits) versus milliseconds (13 digits), and the "Use current time" button inserts the live epoch. Developers, sysadmins and data analysts use it constantly when reading logs and debugging APIs. Everything runs in your browser.
Unix time counts the seconds elapsed since midnight UTC on 1 January 1970, and its appeal is that it is a single integer with no timezone, no calendar and no ambiguity. Every conversion to a human-readable date is a presentation step layered on top. Two quirks matter. Unix time deliberately ignores leap seconds, so it is not strictly a count of elapsed physical seconds. And signed 32-bit storage overflows on 19 January 2038 — the Year 2038 problem — which is why modern systems use 64-bit values, good for roughly 292 billion years.
Timestamp = seconds since 1970-01-01 00:00:00 UTCDays = timestamp ÷ 86,400Milliseconds variant = seconds × 1,00032-bit signed maximum = 2,147,483,647 → 19 January 2038where:
Assumptions: Always UTC. Displaying local time requires applying a timezone offset and the relevant daylight saving rules, which change by jurisdiction and by year — the reason timezone databases need regular updates.
Convert a raw integer into a date, and check whether it is seconds or milliseconds.
Result1789200000 = 12 September 2026, 08:00:00 UTC
The digit-count check is the most useful habit: JavaScript's Date.now() returns milliseconds while most backends emit seconds, and mixing them produces dates in 1970 or in the year 58000 — both obviously wrong, which is at least a fast diagnosis.