The live current Unix timestamp, in four units
This tool shows the current Unix timestamp right now and keeps it ticking — refreshing roughly twenty times per second — presenting the same instant in seconds, milliseconds, microseconds, and nanoseconds alongside the matching UTC ISO date-time. It is built for developers who need a quick epoch value to paste into an API call, a database record, a test fixture, a log query, or a JWT expiry field.
What is a Unix timestamp?
Unix time counts the number of seconds elapsed since the Unix epoch: 00:00:00 UTC on 1 January 1970. It is timezone-free — the same number everywhere on Earth at the same instant — and it is the most widely used way software represents a point in time as a single integer.
Present-day values look roughly like this:
- In seconds (10 digits): for example
1,700,000,000range - In milliseconds (13 digits):
1,700,000,000,000range - In microseconds (16 digits):
1,700,000,000,000,000range - In nanoseconds (19 digits):
1,700,000,000,000,000,000range
If you see a 13-digit number, it is almost certainly milliseconds. A 10-digit number is seconds.
How the values are derived
JavaScript’s Date.now() returns milliseconds since the epoch. The tool reads that value and derives the other units:
const ms = Date.now();
const sec = Math.floor(ms / 1000);
const µs = ms * 1000; // scale up
const ns = ms * 1000000; // scale up
Because the browser clock only resolves to the millisecond, the microsecond and nanosecond values are the millisecond value scaled up — the last three (µs) or six (ns) digits are always zeros. They give you the correct order of magnitude for a system that expects those units without carrying genuine sub-millisecond precision.
Which precision to use and where
| Unit | Digit count (today) | Typical use |
|---|---|---|
| Seconds | 10 | Unix APIs, cron, JWT exp/iat, POSIX time_t |
| Milliseconds | 13 | JavaScript Date, JSON payloads, many logging systems, Kafka offsets |
| Microseconds | 16 | PostgreSQL TIMESTAMPTZ, some distributed tracing systems |
| Nanoseconds | 19 | Go time.UnixNano(), InfluxDB, high-frequency trading timestamps |
The Year 2038 problem — and why it no longer matters for most code
Systems that store Unix time in a signed 32-bit integer overflow on 19 January 2038 at 03:14:07 UTC, when the value exceeds 2,147,483,647 seconds. If you are working with legacy embedded systems, databases with INT timestamp columns, or 32-bit C code, be aware of this. Modern languages and 64-bit databases store timestamps as 64-bit integers, pushing the overflow billions of years into the future.
Tips for common tasks
- Checking if a token has expired: compare the current seconds timestamp to the JWT
expfield. Ifnow > exp, the token is expired. - Log correlation: include the milliseconds timestamp in every log line so you can sort logs from multiple services chronologically even when they span different machines and timezones.
- Test fixtures: generate timestamps at a known past moment by converting a date with the Unix Timestamp Converter; paste the result directly into your test data.
- Relative time in code:
const fiveMinutesFromNow = Date.now() + 5 * 60 * 1000;— working in milliseconds lets you use simple arithmetic without converting back and forth.