What Is Unix Time? The Number Behind Every Timestamp
Under almost every timestamp on the internet sits a plain integer. As this post was published, it was around 1,785,000,000 — the number of seconds since 1 January 1970, 00:00:00 UTC. That counter is Unix time, and it is how computers actually think about dates.
Why 1970?
The developers of early Unix at Bell Labs needed a fixed reference point — an epoch — and chose the start of 1970 as a convenient recent round number. There is nothing cosmic about it; it was simply close to the system's birth and kept the numbers small on 1970s hardware.
The elegant part
A single integer has no months of different lengths, no time zones, no AM/PM — arithmetic on moments becomes plain subtraction. Every time zone question becomes a display question, handled when the number is formatted for a human. (One wrinkle: Unix time pretends leap seconds don't exist, which keeps the math clean at the cost of being astronomically imperfect.)
The Year 2038 problem
Old systems store Unix time as a signed 32-bit integer, which runs out at 03:14:07 UTC on 19 January 2038 — one tick later and the counter wraps to December 1901. It's the Y2K of the embedded world, and the fix (64-bit time, good for ~292 billion years) has been rolling out for two decades. Modern platforms are safe; forgotten firmware may not be.
Reading timestamps yourself
Seconds vs. milliseconds is the classic gotcha: JavaScript uses milliseconds, so a JS timestamp is 1,000× a Unix one. A 10-digit number is seconds; 13 digits means milliseconds. Paste either into our Unix timestamp converter to see it as a readable date across time zones, or use the date format converter to jump between ISO 8601, RFC 2822 and epoch forms.