Convert Unix Timestamps

Convert a Unix/epoch timestamp to a readable date, or a date back to a timestamp, in seconds or milliseconds, with both UTC and your local time shown explicitly. Nothing is sent anywhere.

Convert Unix Timestamps

How it works

  1. Type a timestamp into "Timestamp to date" - the unit (seconds or milliseconds) is auto-detected from its length, or pick one explicitly.
  2. Read the result in both UTC and your browser’s own local time zone, shown side by side rather than guessed at silently.
  3. Or pick a date and time in "Date to timestamp", choose whether you typed it in UTC or local time, and get the matching timestamp in both seconds and milliseconds.
Example output

Input (a sample API response)

{
  "id": 48213,
  "status": "completed",
  "created_at": 1735689600
}

Output

created_at: 1735689600 (seconds)
UTC: 2025-01-01 00:00:00 UTC
Local (UTC): 2025-01-01 00:00:00

The real UTC and local time for this exact timestamp, computed the same way the live tool computes yours.

Frequently asked questions

Is my input sent anywhere?

No. Every conversion runs entirely on your device using your browser’s own built-in date handling - nothing is sent to a server. Turn off your Wi-Fi after the page loads and it still works. This page loads 2KB of JavaScript, gzipped - about what your browser’s network tab will show for this page’s own scripts.

How does the tool know if I typed seconds or milliseconds?

By length: a real-world Unix timestamp in seconds is 10 digits today and won’t reach 11 until the year 2286, while a real-world timestamp in milliseconds has been 13 digits since 2001. The tool treats anything under 100 billion as seconds and anything at or above it as milliseconds - correct for any realistic date - but you can override the guess with the unit selector if you’re testing an edge case.

What is a Unix timestamp?

The number of seconds (or milliseconds, in JavaScript and many web APIs) that have passed since 1970-01-01 00:00:00 UTC, the "Unix epoch." It’s how most databases, APIs, and log files store a point in time as a single number instead of a formatted date string.

Why does the result show both UTC and local time?

A timestamp itself has no time zone - it’s a count of seconds, the same number everywhere on Earth - but the date and time it represents look different depending on which time zone you read it in. Showing both explicitly (rather than only your browser’s local time, silently) avoids the classic off-by-several-hours bug that happens when a UTC timestamp gets displayed as if it were already local.

When I convert a date back to a timestamp, which time zone does it use?

Whichever you pick with the UTC/local toggle next to the date picker. If you choose local, the date and time you entered are treated as your browser’s own time zone; if you choose UTC, they’re treated as already being UTC clock time, regardless of where you are.

What is the "Right now" section for?

A live reference point - the current Unix timestamp in both seconds and milliseconds, and the current UTC/local date and time, updating every second. Useful for sanity-checking that a timestamp you’re debugging is actually close to "now," or copying the current timestamp directly.

Files are processed locally in your browser and never uploaded. Read more on the privacy page.