Unix Timestamp Converter
Convert Unix timestamps in seconds or milliseconds to readable dates in local time, UTC and ISO 8601, and turn any date back into epoch time.
Timestamp → date
- Local time
- –
- UTC
- –
- ISO 8601
- –
Date → timestamp
- Seconds
- –
- Milliseconds
- –
How to use the Unix timestamp converter
- To convert a timestamp to a date, paste an epoch value such as
1700000000or1700000000000. The tool detects from its magnitude whether it is in seconds or milliseconds. - Read the result in your local time zone, in UTC, and in ISO 8601 format.
- To go the other way, enter a date and time; the tool returns the matching epoch value in both seconds and milliseconds.
- Glance at the current timestamp at the top, which updates live, whenever you need “now” as an epoch value.
What is a Unix timestamp?
A Unix timestamp, also called epoch time or POSIX time, is the number of seconds that have elapsed since the Unix epoch: 1 January 1970 at 00:00:00 UTC. For example, 1700000000 corresponds to 14 November 2023 at 22:13:20 UTC. Dates before 1970 are represented by negative numbers.
Timestamps are popular with developers because they are a single number that does not depend on time zones, daylight saving time or date formats. Comparing two moments is a simple subtraction, and sorting by time is a simple numeric sort. You will find them in databases, log files, API responses, JWT claims such as exp and iat, file metadata and cron-like schedulers.
Note that Unix time ignores leap seconds: every day counts as exactly 86,400 seconds. That keeps the arithmetic simple and is why a timestamp is not a strict count of every physical second since 1970.
Seconds vs. milliseconds
The most frequent source of confusion is the unit. Traditional Unix systems, PHP, Python’s time.time() and most databases use seconds, which today gives a 10-digit number. JavaScript’s Date.now(), Java’s System.currentTimeMillis() and many JSON APIs use milliseconds, which gives a 13-digit number. Interpreting milliseconds as seconds lands you tens of thousands of years in the future; interpreting seconds as milliseconds lands you in January 1970. This tool looks at the size of the number to pick the right unit automatically, and when converting a date it shows both values so you can copy the one your system expects.
Local time, UTC and ISO 8601
A timestamp identifies one precise instant, but that instant is displayed differently depending on the time zone. The local result uses the time zone configured on your device, while UTC is the universal reference used by servers and logs. ISO 8601, such as 2023-11-14T22:13:20.000Z, is the unambiguous text format recommended for exchanging dates between systems; the trailing Z means UTC.
The year 2038 problem
Many older systems store Unix time as a signed 32-bit integer, whose maximum value is 2,147,483,647. That limit is reached on 19 January 2038 at 03:14:07 UTC. One second later, such a counter overflows to a large negative number and is read as a date in December 1901. Modern operating systems, databases and languages have largely moved to 64-bit time values, which push the limit billions of years into the future, but embedded devices, legacy file formats and old database columns may still be affected. JavaScript itself is not affected, because it stores time as milliseconds in a 64-bit floating-point number.
Privacy
All conversions happen in your browser using its built-in date functions. No timestamps or dates are sent to a server.
Frequently asked questions
How do I know if my timestamp is in seconds or milliseconds?
Count the digits. A current date is 10 digits in seconds and 13 digits in milliseconds. The tool applies the same logic automatically, based on the size of the number.
Why does the local time differ from UTC?
Both describe the same instant. Local time applies your device’s time zone offset and daylight saving rules, while UTC has no offset. If you share a time with people elsewhere, UTC or ISO 8601 avoids misunderstandings.
Can a Unix timestamp be negative?
Yes. Negative values represent moments before 1 January 1970 UTC. For example, -86400 is 31 December 1969 at 00:00:00 UTC.
Does a Unix timestamp contain a time zone?
No. A timestamp is always relative to UTC and carries no time zone information. The time zone only matters when you display it as a calendar date and time.
Will my systems break in 2038?
Only if they store time in a signed 32-bit integer. Check older databases, embedded firmware and binary file formats. Anything using 64-bit time is safe for the foreseeable future.
Related tools
- UUID Generator Free UUID generator for version 4 and version 7 UUIDs. Create up to 1,000 at once, uppercase or without hyphens, then copy or download as .txt.
- JSON Formatter and Validator Free JSON formatter and validator that beautifies, minifies and checks JSON in your browser, with syntax errors reported by line and column.