Unix Timestamp Converter
Paste any Unix/epoch timestamp — seconds or milliseconds — and get the UTC and local
date/time. Works for Cosmos DB's _ts field, JavaScript's
Date.now(), database timestamps, log lines, anything numeric.
Timestamp → Date
Enter a timestamp above.
Date → Timestamp
Pick a date above.
Common Timestamp Formats
| Format | Digits (now) | Seen in |
|---|---|---|
| Unix seconds | 10 | Cosmos DB _ts, most Unix/Linux systems, Python time.time() |
| Unix milliseconds | 13 | JavaScript Date.now(), Java System.currentTimeMillis() |
| .NET ticks | 18 | C# DateTime.Ticks — 100ns intervals since 0001-01-01 (not 1970) |
To get .NET ticks from a Unix seconds value: (unixSeconds + 62135596800) × 10,000,000.
How Unix Timestamps Work
A Unix (or "epoch") timestamp is a count of seconds elapsed since midnight UTC on January 1, 1970 — timestamp 0. It's just one number, with no timezone attached at all; the timezone only enters the picture when that number gets turned into a readable date, which is what the converter above does using your browser's own detected timezone. That also means the same timestamp always represents the exact same instant everywhere in the world, even though the date and time shown for it differs by location — a big part of why databases, APIs, and log files store time this way instead of a local date string.
Precision varies by platform: Cosmos DB's _ts field and most Unix/Linux
tools count whole seconds, while JavaScript's Date.now() and Java's
System.currentTimeMillis() count milliseconds for finer resolution — that's
the difference between a 10-digit and a 13-digit number today. Older systems that store
the value as a signed 32-bit integer run into the "Year 2038 problem": they overflow at
03:14:07 UTC on January 19, 2038, after which the count wraps to a negative number and
gets misread as a date in 1901. Modern 64-bit systems don't have this ceiling.
Frequently Asked Questions
What is the Unix epoch?
The Unix epoch is midnight UTC on January 1, 1970 — timestamp 0. A Unix timestamp is
the number of seconds (or milliseconds, depending on the system) elapsed since that
moment. Dates before 1970 are represented as negative numbers.
Does a Unix timestamp include a timezone?
No. It's a single number of seconds since the epoch in UTC, with no timezone attached.
Any timezone you see is applied only when the number is converted to a human-readable
date — the underlying timestamp never changes, only its displayed representation does.
What is the Year 2038 problem?
Systems that store Unix time as a signed 32-bit integer can only count up to
2,147,483,647 seconds past the epoch, which runs out at 03:14:07 UTC on January 19,
2038. After that the value overflows and wraps to a negative number, misread as a date
in 1901. Modern 64-bit systems aren't affected — the risk is limited to legacy 32-bit
software.
Why do some systems use seconds and others milliseconds?
It's each platform's own convention. Unix/Linux tools, Python's time.time(),
and Cosmos DB's _ts use whole seconds (10 digits today). JavaScript's
Date.now() and Java's System.currentTimeMillis() use
milliseconds (13 digits today) for finer precision. The auto-detect option above reads
the digit count to figure out which one you've pasted.