What Is Unix Time? Epoch, Seconds & the Year 2038 Problem
Unix time is the most common way software stores an instant: a single number. It shows up in databases, logs, JWTs, and APIs. Here's what that number actually means and the gotchas worth knowing.
This is a supporting guide in The Complete Guide to Dates and Times.
The epoch
Unix time (or epoch time) counts the number of seconds since midnight UTC on 1 January 1970 — a moment called the Unix epoch. So 1717000000 is just "1,717,000,000 seconds after that reference point." Because it's a plain count with no time zone attached, it represents an unambiguous instant that's easy to store, sort, and subtract.
Why 1970?
The choice is historical: Unix was being developed around then, and the engineers needed an arbitrary but fixed starting line. It stuck, and now virtually every platform shares the same epoch — which is exactly what makes timestamps portable between systems.
Seconds vs milliseconds
The classic mix-up: some systems count seconds (a 10-digit number today), others milliseconds (13 digits). JavaScript's Date.now() returns milliseconds; Unix tools and most databases use seconds. If a date comes out in 1970 or thousands of years in the future, you almost certainly mixed up the two — multiply or divide by 1000. See How to Convert Unix Timestamps.
The Year 2038 problem
Older systems store Unix time in a signed 32-bit integer, which can only count up to 2,147,483,647 seconds — a limit reached on 19 January 2038. Past it, the value overflows and wraps to a negative number, landing back in 1901. The fix is already widespread: 64-bit timestamps push the limit roughly 292 billion years out. It mainly matters for legacy systems and embedded devices.
A note on leap seconds
Occasionally a leap second is added to keep clocks aligned with Earth's rotation. Unix time mostly ignores them — it assumes every day is exactly 86,400 seconds — so it isn't a perfectly continuous count of physical seconds. For almost all application work this is irrelevant, but it's why Unix time and true elapsed time can differ by a handful of seconds over decades.
Related
Part of The Complete Guide to Dates and Times. See also ISO 8601 & UTC Explained.
Try it
Paste an epoch value into the Unix Timestamp Converter to see the date it maps to, in UTC and your local zone — all in your browser.