Overview
Computers count time as a single number: seconds since midnight on 1 January 1970, UTC. That number — the Unix timestamp — is what databases store, APIs exchange and logs record. Humans cannot read it, which is where this converter comes in: paste the number, get the date; pick a date, get the number.
The page shows three readings at once — UTC, your local time and ISO 8601 — because timezone confusion causes more timestamp bugs than any other single thing. A ticking “now” display underneath gives you the current value for reference.
Why does time start in 1970?
Because early Unix engineers needed a zero point and picked a recent round date in UTC. Counting plain seconds made date arithmetic trivial: no months of uneven length, no leap years in the common case. The convention escaped Unix long ago — it now underpins most programming languages, databases and web APIs.
The famous footnote is the Year 2038 problem: 32-bit systems overflow on 19 January 2038. Modern 64-bit systems are fine for billions of years, but the story is a useful reminder that even time has data types.
Features
- Both directions: timestamp → date and date → timestamp.
- UTC, local and ISO 8601 displayed together — no timezone guessing.
- Seconds/milliseconds toggle for 10-digit and 13-digit values.
- Live “now” readout ticking every second.
- One-click current time to fill either direction instantly.
- Copy result; everything computed locally.
Benefits
- Read the unreadable: one paste turns 1792310400 into a date.
- Expose timezone bugs with UTC and local side by side.
- Handle either digit length with a single checkbox.
- Grab “right now” without mental arithmetic.
Who can use it
Developers decoding API responses and logs, analysts reading exported timestamps, QA engineers setting up time-based tests, sysadmins interpreting file metadata, and students learning how machines represent time. If a 10-digit number in a JSON payload ever puzzled you, this is the decoder ring.
How to use
- Choose Timestamp → Date or Date → Timestamp.
- Paste the timestamp (tick “milliseconds” for 13-digit values) or pick a date and time.
- Read the UTC, local and ISO 8601 equivalents.
- Use “Use current time” for right-now values in either direction.
- Copy the result for your code, logs or notes.
Frequently asked questions
Seconds or milliseconds — how do I tell?
Count the digits. Ten digits means seconds (1792310400); thirteen means milliseconds (1792310400000), the style JavaScript's Date.now() returns. A wrong guess gives an obviously absurd date — 1970 or the year 56000 — which is your signal to flip the checkbox.
Why do UTC and local show different times?
That is timezones doing their job. The timestamp itself is zone-free — seconds since the UTC epoch. Your local reading adds your offset, including daylight saving. Servers log in UTC precisely to avoid this ambiguity, converting only for display.
What is the 2038 problem?
On systems storing timestamps in signed 32-bit integers, the counter overflows on 19 January 2038 and wraps around to 1901. It is Y2K's lesser-known sibling. 64-bit systems — everything modern — are immune for billions of years, but old embedded devices and file formats still deserve a check.
Do leap seconds break Unix timestamps?
Unix time simply pretends every day is exactly 86,400 seconds; leap seconds are smeared or skipped depending on the system. For everyday use this is invisible. Precision fields like astronomy and high-frequency trading use specialised time scales instead.
Does converting send my data anywhere?
No. It is date arithmetic in your browser — the timestamp and the date never leave the page.
Conclusion
One number in, three honest readings out. Paste the timestamp, read the date — and let UTC and local sit side by side so timezones can never fool you again.