Runs in your browser. Your files and text never leave your device - nothing is uploaded.
Unix Timestamp → Date
Date → Unix Timestamp
Unix Timestamp to Date Converter
The Tools Kit’s free Timestamp Converter turns a Unix timestamp into a readable date and turns a date back into epoch time. Paste an epoch value in seconds or milliseconds and see it as UTC, your local time and ISO 8601 at once, or pick a date and time to get the Unix timestamp in both seconds and milliseconds. Everything runs in your browser, with no sign-up.
It is built for the everyday jobs of reading a timestamp from a log line, an API response or a database row, and for generating an epoch value for a test, a query or a config file. It sits alongside the other unit and format tools in our conversion tools collection.
How to Use the Timestamp Converter
- 1
Enter a Unix timestamp
Paste an epoch value in seconds (10 digits) or milliseconds (13 digits) into the first field. It is prefilled with the current time, and the Use Now button stamps the current second again at any point.
- 2
Read the converted date
The same instant appears as a UTC date, your local time, and an ISO 8601 string, each with its own Copy button.
- 3
Convert a date to a timestamp
Pick a date and time in the Date and Time field. The picker is read in your browser’s local time zone.
- 4
Copy seconds or milliseconds
The epoch value is shown in both seconds and milliseconds, so you can copy whichever unit your code, database or API expects.
An invalid value shows an inline error message instead of a blank result, so a stray character or a typo is easy to spot.
What Is Unix Time (Epoch Time)?
Unix time, also called epoch time or POSIX time, counts the seconds since the Unix epoch: 00:00:00 UTC on Thursday, 1 January 1970. Timestamp 0 is that exact moment, 86400 is one day later, and negative numbers count backwards, so -86400 is 00:00:00 UTC on 31 December 1969. Leap seconds are not counted, which keeps every day exactly 86,400 seconds long.
Because a timestamp is one number with no time zone attached, it describes the same instant everywhere. That is why servers, databases and tokens store time this way: the exp, iat and nbf claims you see in a JWT decoder are Unix timestamps in seconds, and log files often stamp each line with one. To show the same moment as wall-clock time in several cities, use the time zone converter.
Seconds vs Milliseconds Timestamps
The most common timestamp mistake is mixing up units. Classic Unix tools, PHP’s time() and most SQL epoch functions work in seconds, giving 10-digit values for current dates such as 1735689600. JavaScript’s Date.now(), Java’s System.currentTimeMillis() and many web APIs use milliseconds, giving 13-digit values such as 1735689600000. Read in the wrong unit, a 2025 date lands in January 1970 or tens of thousands of years in the future.
This converter detects the unit from the length of the number: anything longer than 10 digits is treated as milliseconds, and anything shorter as seconds. Both of the values above therefore convert to the same instant. In the other direction, the milliseconds result is the seconds value multiplied by 1,000, and because the date picker works to the minute it always ends in 000.
| Timestamp | Read as | ISO 8601 (UTC) |
|---|---|---|
| 0 | Seconds | 1970-01-01T00:00:00.000Z |
| -86400 | Seconds | 1969-12-31T00:00:00.000Z |
| 1700000000 | Seconds | 2023-11-14T22:13:20.000Z |
| 1735689600 | Seconds | 2025-01-01T00:00:00.000Z |
| 1735689600000 | Milliseconds | 2025-01-01T00:00:00.000Z |
| 2147483647 | Seconds | 2038-01-19T03:14:07.000Z |
UTC, Local Time and ISO 8601 Explained
Each timestamp is shown three ways. UTC is the zero-offset reference (browsers label it GMT, as in Wed, 01 Jan 2025 00:00:00 GMT). Local Time is the same instant on your device’s clock, including its offset and any daylight saving. ISO 8601 is the machine-friendly form, 2025-01-01T00:00:00.000Z, where the trailing Z marks UTC; it is the format most APIs and databases expect, and ISO strings sort chronologically when sorted as text, which helps when you tidy JSON payloads in the JSON formatter.
The date-to-timestamp picker has no time zone setting: the date and time you choose are read in your browser’s local time zone. If you are in UTC+5 and pick midnight on 1 January 2025, the result is 1735671600, five hours earlier than the UTC midnight value of 1735689600. Set your device to UTC, or adjust by your offset, when you need a UTC-based epoch value.
Common uses
- Reading the epoch time in a server log, error report or database row as a real date
- Checking whether a token’s exp timestamp has passed before debugging an expired session
- Generating a Unix timestamp for a test fixture, SQL query or API request
- Confirming when a scheduled job ran after setting it up with the cron expression generator
- Working out the gap between two dates in days with the days calculator once you have both as readable dates
- Pairing time-ordered IDs with real dates, for example when comparing UUID v7 values from the UUID generator with their creation times
Timestamp terms explained
| Term | What it means here |
|---|---|
| Unix timestamp / epoch time | The number of seconds elapsed since 00:00:00 UTC on 1 January 1970, ignoring leap seconds |
| Unix epoch | The starting point of the count: midnight UTC on 1 January 1970, timestamp 0 |
| Milliseconds timestamp | The same count multiplied by 1,000; used by JavaScript’s Date.now() and many APIs, 13 digits for current dates |
| UTC | Coordinated Universal Time, the zero-offset reference the epoch is defined against; shown with the label GMT in the UTC output |
| Local time | The same instant shown on your device’s clock, including its UTC offset and any daylight saving in effect |
| ISO 8601 | The international date-time format, such as 2025-01-01T00:00:00.000Z, where the Z means UTC |
| Year 2038 problem | The overflow of signed 32-bit timestamps after 2147483647, which is 03:14:07 UTC on 19 January 2038 |
Frequently Asked Questions
Paste the timestamp into the first field. The converter shows it as a UTC date, your local time and an ISO 8601 string. For example, 1735689600 converts to Wed, 01 Jan 2025 00:00:00 GMT, or 2025-01-01T00:00:00.000Z in ISO 8601.
Pick a date and time in the Date and Time field of the second panel. The epoch value appears in seconds and in milliseconds. The picker is read in your local time zone, so midnight on 1 January 2025 gives 1735689600 only if your device’s time zone is at UTC+0 on that date.
A Unix timestamp, also called epoch time or POSIX time, is the number of seconds that have passed since 00:00:00 UTC on 1 January 1970. Because it is a single number with no time zone or date format attached, it is widely used in logs, databases and APIs.
Classic Unix time counts seconds, which gives 10-digit values for current dates. JavaScript and many web APIs count milliseconds, which gives 13-digit values. This converter treats any value longer than 10 digits as milliseconds and anything shorter as seconds, so you can paste either without changing a setting.
Paste the 13-digit millisecond value as it is. 1735689600000 is read as milliseconds and converts to the same instant as 1735689600 seconds: 1 January 2025 at 00:00:00 UTC. To convert by hand, divide by 1,000 to get seconds.
The first field is filled with the current Unix timestamp in seconds when the page loads, and the Use Now button refreshes it to the current second. The value is taken from your device clock.
A timestamp is a single instant with no time zone. The UTC output shows that instant at zero offset, while Local Time shows it on your device’s clock, shifted by your UTC offset and any daylight saving in effect. Both describe the same moment.
The date picker has no time zone setting, so the date and time you choose are read in your device’s local time zone. If you compare the result against a value generated in UTC, the gap equals your offset from UTC.
Yes, for most values. A negative timestamp counts back from the epoch, so -86400 converts to 31 December 1969 at 00:00:00 UTC. Because the unit is detected by length, a negative value of 10 or more digits (-1000000000 or lower, meaning dates before 24 April 1938) is read as milliseconds, so convert those by hand or with code.
Systems that store Unix time as a signed 32-bit integer can only count up to 2147483647, which is 03:14:07 UTC on 19 January 2038. One second later the value overflows. Modern systems use 64-bit timestamps, and this converter uses JavaScript dates, so 2147483647 and later values convert normally.
Yes. It is free with no sign-up, and every conversion runs in your browser using its built-in Date functions. The timestamps and dates you enter are not sent to a server.
Reviewed by Raja Jahangir · Last reviewed: October 7, 2026
How do you convert a Unix timestamp to a date?
To convert a Unix timestamp, paste the number in seconds (10 digits) or milliseconds (13 digits) to see it as UTC, local time and ISO 8601; 1735689600 is 1 January 2025 at 00:00:00 UTC. To go the other way, pick a date and time, read in your local time zone, and get seconds and milliseconds.
Is a Unix timestamp in seconds or milliseconds?
Both are common. Unix time proper counts seconds since 1 January 1970 UTC, giving 10-digit values today such as 1735689600. JavaScript's Date.now() and many APIs use milliseconds instead, giving 13-digit values like 1735689600000. Values longer than 10 digits are treated as milliseconds, so either form converts correctly.
