What a Unix timestamp is, and when you'd convert one
A Unix timestamp (also called epoch time) is just a count of seconds since 00:00:00 UTC on January 1, 1970. So 1700000000 is a real moment in time, but no human can read it at a glance. You'll run into these in log files, database columns, JSON API responses, JWT exp claims, cookie expiry headers, and cron job output. The moment you need to answer "okay, when did this actually happen?", you have to convert that number back into a normal date.
The catch is that a raw epoch carries no timezone and no unit. The same number can be seconds, milliseconds, microseconds, or nanoseconds depending on where it came from, and the resulting date changes completely if you read it in UTC versus your local time. The Epoch to Date converter handles all of that for you, detecting the unit automatically and showing the result in whichever timezone you pick. It runs entirely in your browser, so the timestamps you paste never leave your device, there's nothing to upload, and there's no sign-up.
How to convert a Unix timestamp to a date
- Open the Epoch to Date tool. You'll see an input field already filled with an example value (
1700000000) so you can confirm what the output looks like before pasting your own. - Paste or type your timestamp into the Epoch value box. Delete the example first if it's still there. Numbers only, no quotes or commas.
- Leave the unit on Auto for almost every case. The tool reads the magnitude of your number and labels it (you'll see "Interpreted as Seconds", "Milliseconds", and so on). If you know the source uses a specific unit, click the matching button (
Seconds,Milliseconds,Microseconds, orNanoseconds) to force it. - Pick your Timezone from the dropdown. It defaults to UTC, which is the safest reading for raw server data. Choose "Local (browser)" to see the moment in your own zone, or pick a named city like Tokyo or London.
- Read the result in the Converted Date card. You get several formats at once:
ISO 8601 UTC(the standard machine-readable form), anISO 8601 (timezone)version for your chosen zone,RFC 2822, a full locale string ("Tuesday, November 14, 2023..."), date-only, time-only, plus the day of the week, day of year, ISO week number, and a friendly relative line like "7 months ago". - Copy whichever format you need. Click the copy icon beside any row, or use the Copy ISO button under the input to grab the ISO 8601 UTC string in one tap.
That's the whole single-conversion flow. To go the other direction and turn a calendar date back into an epoch number, use the companion Date to Epoch tool.
Converting many timestamps at once
If you have a column of timestamps from a log export, switch to the Bulk / CSV tab.
- Click Bulk / CSV at the top of the tool.
- Paste your timestamps into the textarea, one per line.
- Check the Preview table, which shows the input, detected unit, ISO UTC date, weekday, and relative time for the first 25 rows.
- Click Download CSV to save every row, with all formats, as a spreadsheet-ready file. The download is generated in your browser from the data you pasted.
Tips
- When in doubt, read it in UTC first. Server timestamps are almost always UTC. Switch the timezone dropdown afterward to translate that exact moment into a local time.
- Watch the digit count to sanity-check the unit. A seconds-based timestamp for any date near today is 10 digits; milliseconds is 13. If Auto labels your number as milliseconds but you expected seconds, you probably pasted an extra three digits.
- The "Now" button is handy for testing. Click it to drop the current epoch into the input, which is a quick way to confirm the tool matches what your own system reports.
- For relative deadlines (token expiry, cache TTL), the "Relative" row tells you instantly whether a timestamp is in the past or future without doing date math in your head.
Common problems
- You see "Invalid date" or "Not a valid number." The input contains a non-numeric character: a comma, a stray space, quotes, or a trailing letter from a copied JSON value. Strip everything except digits (and a leading minus for pre-1970 dates).
- The date is off by exactly your timezone offset. You're comparing a UTC reading against a local clock, or vice versa. Set the timezone dropdown to match how the source recorded the time.
- The year comes out as 1970 or in the far future. The unit is wrong. A milliseconds value read as seconds lands ~50,000 years out; a seconds value read as milliseconds lands in 1970. Click the correct unit button instead of relying on Auto.
FAQ
Are Unix timestamps always in seconds?
No. Seconds is the classic Unix convention, but JavaScript's Date.now() and many APIs use milliseconds, and some systems use micro- or nanoseconds. That's why the converter auto-detects the unit by magnitude and lets you override it.
Does converting a timestamp upload my data anywhere? No. The Epoch to Date converter does all the math locally in your browser. Nothing you paste, including bulk lists, is sent to a server, and the CSV is built on your device.
Why does my timestamp show a different date than a coworker sees? Almost always a timezone difference. The underlying instant is identical; UTC and local readings just label it differently. Agree on one timezone in the dropdown and you'll both see the same line. To shift a known wall-clock time between zones, the timezone converter does that directly.
Can I turn a calendar date into an epoch instead? Yes, use the Date to Epoch tool for the reverse conversion.
Related tools: the current Unix timestamp for a live epoch clock, Date to Epoch, and the timezone converter.