Unix Timestamp Converter
Convert Unix timestamps (seconds or milliseconds) to human-readable dates and back. Auto-detects the unit by magnitude.
Timestamp → date
Date → timestamp
How to use
- Paste a Unix timestamp into the top field, or click Use current time.
- Leave Unit on Auto-detect, or force seconds/milliseconds if your value is ambiguous.
- Read the UTC, local, and relative time rows that appear below.
- To go the other direction, pick a date in the lower picker and click Convert to timestamp.
What does it do?
A Unix timestamp is a count of seconds (or milliseconds) since 1970-01-01 00:00:00 UTC — the same epoch used by Linux, macOS, databases, log files, and HTTP headers. This tool converts between that numeric value and a human-readable date in both UTC and your local timezone, and can convert back. Auto-detection picks seconds vs milliseconds based on digit count.
Example
Input (seconds, 10 digits):
1709251200 Output:
UTC (ISO 8601) 2024-03-01T00:00:00.000Z
Local time 3/1/2024, 9:00:00 AM (in a UTC+9 locale)
Relative 2 months ago (relative to now)
Seconds 1709251200
Milliseconds 1709251200000 The same moment in milliseconds would be 1709251200000 — 13 digits.
Why is my timestamp showing the wrong year?
- Seconds vs milliseconds mixup.
1709251200as milliseconds is January 1970;1709251200000as seconds is the year 56137. Check the digit count — 10 is seconds, 13 is milliseconds. - Microseconds or nanoseconds. Some systems (Python's
time.time_ns(), Prometheus) emit 16- or 19-digit values. Divide by 1000 or 1,000,000 before pasting. - Timezone confusion. Your local row differs from UTC
by your browser's offset. If a log file says
12:00:00and the site shows21:00:00, that is UTC+9, not a bug. - 32-bit overflow (Y2038). Legacy systems storing
time in a signed int32 wrap at
2147483647(19 Jan 2038 UTC) to a negative value interpreted as 1901. - Leading zeros stripped.
0012345becomes12345. Paste the value as shown, without reformatting. - Float timestamps.
1709251200.123is a fractional second. The tool accepts it and keeps the fractional part as milliseconds.
Is my data private?
Yes. We don't save any of the timestamps or dates you type here. Nothing is stored, logged, or retained — everything is discarded the moment you close or refresh the tab. There's no record on our side of what you converted. Feel free to verify in your browser's developer tools.
Frequently asked questions
Is my timestamp in seconds or milliseconds?
Count the digits. A timestamp for a date in roughly 2001 to 2286 is 10 digits in seconds (e.g. 1709251200) or 13 digits in milliseconds (e.g. 1709251200000). If you see a huge number ending in three zeros, it is almost certainly milliseconds. This tool auto-detects by magnitude: values of 10^12 or larger are treated as milliseconds.
What is the Y2038 problem?
Unix timestamps stored in a signed 32-bit integer overflow at 03:14:07 UTC on 19 January 2038 — the value 2147483647. Systems that still use int32 for time (old C code, some embedded devices, some databases) will wrap to a negative number and interpret it as 13 December 1901. Modern 64-bit systems and JavaScript numbers are safe.
Why does my timestamp show the wrong year?
Almost always a unit mismatch. If you paste 1709251200000 and the tool treats it as seconds, you get a date around the year 56137. If you paste 1709251200 and the tool treats it as milliseconds, you get 20 January 1970. Set the Unit dropdown explicitly or check the digit count.
Does the timestamp include a timezone?
No. A Unix timestamp is an absolute count of seconds since 1970-01-01 00:00:00 UTC. It does not carry a timezone. This tool shows both the UTC representation and your browser's local-time interpretation. If you see a 9-hour offset versus a colleague, that is the timezone difference, not a bug.
Can I use negative timestamps for dates before 1970?
Yes. Negative values are supported — -86400 is 31 December 1969 UTC, for example. Not all systems accept them (some databases and older languages clamp at zero), but JavaScript Date handles them natively, so this tool will convert them correctly.
Does this support ISO 8601 date strings in the timestamp field?
No, the timestamp field expects a numeric epoch value only. Use the Date → timestamp section to pick a calendar date and time. If you have an ISO 8601 string like 2024-03-01T00:00:00Z, drop it into your browser console as new Date("...").getTime() to get milliseconds, or paste it into the date picker.
Do you save the timestamps or dates I convert?
No. We don't keep any of the timestamps or dates you type here. Everything you convert is discarded the moment you close or refresh the tab — no logs, no record on our side of what you looked up. You can check your browser's developer tools if you'd like extra reassurance.