01What is a Unix timestamp?
The Unix timestamp (or “epoch”) counts the seconds elapsed since January 1, 1970 at 00:00 UTC. It is computing's most widespread representation of time: databases, APIs, logs, authentication tokens… A plain integer, with no timezone and no ambiguous format — precisely what makes it universal.
This page shows the current epoch continuously and converts both ways, entirely in your browser. The unit is auto-detected from the order of magnitude: 10 digits ≈ seconds, 13 ≈ milliseconds (JavaScript, Java), 16 ≈ microseconds, 19 ≈ nanoseconds (Go, systems). A JWT's exp claim is an epoch in seconds — our JWT decoder converts it for you.
02Useful landmarks
- Epoch
- January 1, 1970 00:00:00 UTC, the zero instant. Earlier dates yield negative timestamps.
- Seconds vs ms
- Unix and most languages count in seconds; JavaScript (Date.now()) and Java in milliseconds. Mixing them up shifts the date by ~50,000 years.
- ISO 8601
- The readable interchange format (2026-07-30T14:00:00Z): sorted alphabetically = sorted chronologically. The trailing Z means UTC.
- 2038
- On January 19, 2038, the epoch exceeds a signed 32-bit integer (2,147,483,647). Modern systems count in 64 bits: solved — except for old embedded code.
- Timezone
- A timestamp has NO timezone: it is an absolute instant. Only its display as a date depends on the timezone — hence the local and UTC columns above.
03From the command line
The same URL returns the current epoch in seconds, raw — a date +%s that works everywhere, including where the command does not exist:
$ curl its-my-ip.com/timestamp 1753862400
04Frequently asked questions
Why does my converted date look shifted by one or two hours?
A timestamp designates an absolute instant, without a timezone. The “local time” column displays it in your browser's timezone (DST included), the UTC column in universal time. If your application shows something else, it is the one applying another timezone — the timestamp itself is the same everywhere.
How do I know whether a timestamp is in seconds or milliseconds?
By its size: a current epoch is 10 digits in seconds and 13 in milliseconds. This page applies that heuristic automatically (and also handles micro and nanoseconds, 16 and 19 digits). When in doubt in code: if the resulting date is in 1970 or 50,000 years away, you picked the wrong unit.
Does the year-2038 bug concern me?
Probably not: every modern operating system, language and database stores time in 64 bits, pushing the limit to billions of years. The residual risk concerns old 32-bit C code, legacy embedded systems and some file formats or protocols that freeze a 32-bit field.
Why prefer a timestamp over a text date in a database?
Because an integer compares, sorts and indexes trivially, depends on no timezone or regional format, and suffers no ambiguity (03/04: April 3rd or March 4th?). The classic best practice: store as epoch or ISO 8601 UTC, and only convert to the user's timezone at display time.
05More tools
Dev & encoding
JWT decoderDecode a JWT and verify its signature, nothing ever sent Cron expressionsDecode a crontab expression and compute the next run times Base64Encode and decode Base64 (UTF-8, URL-safe), nothing ever sent MD5/SHA digestsCompute the hash of text or a file (MD5, SHA-256…), locally UUID generatorGenerate random v4 or time-ordered v7 UUIDsMy IP & network — BGP / RPKI · Subnet · Port check
DNS & domains — DNS lookup · DNS propagation · Whois · Punycode / IDN
Email — Email score · Email check · Email headers · Blacklist · DMARC generator · DKIM key
Web & SEO — Page audit · HTTP headers · Security headers · Link preview · Robots.txt tester · TLS certificates · Redirects · Site down? · User agent
Privacy & passwords — WebRTC leak · Passwords · Password leak