Quick answer: A Unix timestamp is the number of seconds since 00:00:00 UTC on 1 January 1970. The value 1700000000 is 22:13:20 UTC on 14 November 2023. Timestamps with 13 digits are in milliseconds, and the same moment is 1700000000000.
A Unix timestamp is the number of seconds that have passed since midnight UTC on January 1, 1970, called the epoch. It is how most databases, APIs, log files and programming languages store a moment in time, because a single number is easy to sort, compare and send between systems.
Numbers like 1700000000 are unreadable to people, though. Paste one in to see the date in UTC and in your local time zone, or pick a date to get its timestamp. The current timestamp at the top updates every second.
Seconds, milliseconds and the year 2038
Most systems count in seconds, giving a 10-digit number today. JavaScript, Java and many APIs count in milliseconds, giving 13 digits. With “detect automatically” on, values of about 100 billion or more are read as milliseconds and the rest as seconds. You can also pick the unit yourself.
Timestamp (seconds) = milliseconds ÷ 1000
Unix time ignores leap seconds and is always based on UTC, so it is the same everywhere in the world at the same moment. Time zones only matter when you show it to a person. Older 32-bit systems that store the timestamp as a signed integer will run out on January 19, 2038, which is known as the Year 2038 problem.
A worked example
Example. The timestamp 1700000000 is 2023-11-14T22:13:20Z in UTC, which is Tuesday, November 14, 2023 at 22:13:20. A millisecond timestamp for the same moment is 1700000000000, which has three more digits.
Notable timestamps
| Timestamp | Date and time | Why it matters |
|---|---|---|
| 0 | 1970-01-01 00:00:00 UTC | The Unix epoch |
| 1000000000 | 2001-09-09 01:46:40 UTC | The “billennium” |
| 1700000000 | 2023-11-14 22:13:20 UTC | Used in examples on this page |
| 2147483647 | 2038-01-19 03:14:07 UTC | Largest 32-bit signed value (the year 2038 limit) |
| 4102444800 | 2100-01-01 00:00:00 UTC | The start of the year 2100 |
Values are computed by code and shown in UTC.
Common mistakes to avoid
- Mixing seconds and milliseconds. A timestamp about 1,000 times too large or too small is almost always this mistake.
- Assuming a timestamp has a time zone. It is always UTC. The time zone only matters when you show it as a local date.
- Storing timestamps in a 32-bit signed integer. It runs out on 19 January 2038, so use 64-bit values.
Frequently asked questions
What is epoch time?
It is the starting point for Unix time: 00:00:00 UTC on January 1, 1970. A Unix timestamp counts the seconds since then.
How do I tell seconds from milliseconds?
Count the digits. A current timestamp in seconds has 10 digits, in milliseconds 13. The tool detects this automatically, or you can choose the unit.
Does a Unix timestamp have a time zone?
No. It always refers to an exact moment in UTC. The time zone only affects how that moment is displayed as a date and clock time.
Can a timestamp be negative?
Yes. Negative values represent moments before January 1, 1970. For example, −86400 is December 31, 1969.
People also search for this as: epoch converter, Unix time to date, timestamp to date, date to Unix timestamp, current Unix timestamp, epoch time converter.
Sources and further reading
- Unix time (Wikipedia)
- RFC 3339: Date and Time on the Internet: Timestamps
- ISO 8601 date and time format (Wikipedia)
Formulas on this page are checked by automated tests against independent references. See how we test our tools.