Home › Date & Time Tools

Unix Timestamp Converter

Convert a Unix epoch timestamp into a readable UTC and local date, or turn any date and time back into epoch seconds and milliseconds - live as you type.

0Digits
-Read as

How the converter tells seconds from milliseconds

Anything past eleven digits is milliseconds, anything ten digits or shorter is seconds, and the converter prints which reading it used instead of silently guessing. That distinction is the single most common way epoch values get mishandled: a ten-digit value forced into a millisecond parser lands in January 1970, and a thirteen-digit value parsed as seconds lands far past the year 33,000. The unit row tells you what happened before you copy anything out.

The date field below the outputs is kept in sync with the epoch field, so typing in either direction works. Local time uses the timezone your browser reports, UTC is computed from the same instant - there is no second interpretation that can drift between the two rows.

Usage example

A webhook payload carries created_at: 1790000000 and your log viewer shows a date that looks wrong. Paste the number at the top: the converter reads it as seconds, prints 2026-09-21 in UTC alongside your local rendering, and the ISO row gives you the exact string to search for in the log. If the value you pasted turns out to be milliseconds, the unit row says so and the three outputs move to the correct instant without you changing anything.

Going the other way, put the incident time into the date field to get the epoch value you need for a query filter - seconds for most APIs, milliseconds for anything written against Java or JavaScript date libraries. When the payload itself needs tidying before you send it on, run it through the JSON formatter first so the timestamp is sitting in valid JSON.

Frequently asked questions

Does it handle negative timestamps?

Yes. Values before 1970-01-01 are negative in the standard epoch, and the converter reads them like any other number - the UTC and local rows simply show dates before 1970. Sub-second precision beyond milliseconds is not offered, because the input would stop being a plain integer.

Why do some systems use milliseconds?

JavaScript's Date.now() returns milliseconds, and so do most JVM-based systems, while SQL, Linux date and most HTTP APIs use seconds. Both are thirteen- and ten-digit integers of the same instant, which is exactly why the unit row reports the reading it chose.

Is anything I paste uploaded?

No. The conversion runs entirely in this page; the value never leaves the browser. That makes it safe to paste internal identifiers and timestamps from private logs.

Related tools

JWT Decoder

Decode a JWT header and payload with expiry shown as a readable timestamp.

Days Between Dates

Count the exact number of days between two dates with the week breakdown, the inclusive count and the weekday each end falls on. Leap years are handled.

JSON Formatter

Format, validate and beautify JSON with error reporting and stable key ordering.