Unix Timestamp
Convert Unix epoch timestamps to human-readable dates across 15+ timezones, or turn any date back into a timestamp — seconds and milliseconds auto-detected.
——Timestamp → Date
Enter a timestamp above — all timezones appear instantly.
Date → Timestamp
Pick a date and time above to get its Unix timestamp.
Why use our online Unix Timestamp?
Convert Unix epoch timestamps to human-readable dates and back instantly. Supports milliseconds and seconds, local and UTC timezones — useful for debugging API responses and logs.
How to use Unix Timestamp
- 1Paste your Unix timestamp
Enter a numeric epoch timestamp in the input field. The tool auto-detects whether it is in seconds (10 digits) or milliseconds (13 digits), or you can lock the unit manually.
- 2Read the date across timezones
The timestamp is instantly displayed in UTC and 15+ major timezones — New York, London, Paris, Dubai, Kolkata, Tokyo, Sydney, and more — each showing the UTC offset and live DST abbreviation.
- 3Convert a date back to a timestamp
Scroll to the Date → Timestamp section, pick a date and time, choose the source timezone, and instantly get the corresponding Unix seconds, milliseconds, and ISO 8601 string.
- 4Use the live clock
The current Unix time (seconds and milliseconds) ticks in real time at the top of the page. Click 'Use Now' to load the current timestamp into the converter, or copy either value directly.
Why Unix time starts at January 1, 1970
The Unix epoch — the reference point of zero from which Unix timestamps are counted — is 00:00:00 UTC on Thursday, 1 January 1970. This date was chosen by the developers of the early Unix operating system at Bell Labs in the early 1970s. They needed a date recent enough to be practical for their systems, and 1970 fit neatly.
The choice was somewhat arbitrary — similar to how many calendars use a historically significant or convenient date as year zero. The Y2K problem (two-digit year representation) has a loose analogue in Unix time: 32-bit systems can store timestamps only up to 2,147,483,647 seconds (maximum positive value of a signed 32-bit integer), which corresponds to 03:14:07 UTC on 19 January 2038. This "Year 2038 problem" (Y2K38) will cause overflow on systems still using 32-bit Unix timestamps on that date. Modern 64-bit systems can represent dates billions of years in the future.
Seconds vs milliseconds — why both exist and how to tell them apart
Unix timestamps are traditionally measured in seconds. This is sufficient for most scheduling, logging, and database use cases where second-level precision is adequate. Most Unix shell commands (date +%s), most database timestamp fields, and most API standards use second-precision timestamps.
JavaScript's Date.now() and the majority of JavaScript date APIs return timestamps in milliseconds (1/1000 of a second). This is because JavaScript was designed for web applications that need to measure animation frames, user interaction timing, and performance benchmarks — all of which require sub-second precision. Java's System.currentTimeMillis() also returns milliseconds.
Distinguishing them visually: a Unix timestamp in seconds has 10 digits (until 2286); a millisecond timestamp has 13 digits. This tool autodetects the unit based on the number of digits. A common bug is passing a millisecond timestamp to an API that expects seconds — producing dates thousands of years in the future. Always verify the expected unit from the API documentation.
Daylight Saving Time and why timestamp conversion is tricky
Daylight Saving Time (DST) is the practice of advancing clocks by one hour during summer months to extend evening daylight. It is observed in roughly 70 countries, though with different start/end dates. The US, EU, Australia, and most of the Americas observe DST; most of Asia, Africa, and parts of South America do not.
Unix timestamps are always in UTC (Coordinated Universal Time) and are not affected by DST — a single timestamp always refers to the same absolute moment in time. The complexity comes when converting to a local timezone for display. During a DST transition, clocks "spring forward" (skipping an hour) or "fall back" (repeating an hour).
This means that on DST change nights, some local clock times are ambiguous (they occur twice during the fall-back transition) or nonexistent (they are skipped during the spring-forward transition). The browser's Intl.DateTimeFormat API, which this tool uses, handles DST correctly by using the IANA timezone database — the same database used by most operating systems. When working across timezones in code, always store timestamps in UTC and convert to local time only for display.
Frequently Asked Questions
What is a Unix timestamp?
- A Unix timestamp (also called epoch time) is the number of seconds that have elapsed since 00:00:00 UTC on 1 January 1970. It is a timezone-independent way to represent a specific point in time and is widely used in APIs, databases, and log files.
How does the tool tell seconds from milliseconds apart?
- Any timestamp greater than 100,000,000,000 (10¹¹) is treated as milliseconds, because that value in seconds would be the year 5138 — far beyond any practical use. Values up to that threshold are treated as seconds. You can override this by clicking the 's' or 'ms' button to lock the unit.
Does the timezone display account for Daylight Saving Time?
- Yes. The tool uses the browser's built-in Intl.DateTimeFormat API with IANA timezone identifiers, which correctly applies DST rules for every timezone and every historical date.
Can I convert a negative Unix timestamp?
- Yes. Negative timestamps represent dates before 1 January 1970. For example, -86400 is 31 December 1969 at 00:00:00 UTC.
Related Tools
JSON Formatter
Clean, minify, and validate JSON data structures.
Base64
Encode and decode Base64 strings instantly.
HTML Entity
Encode special chars to HTML entities and decode back.
Cron Builder
Visual builder for cron-job schedules.
Regex Tester
Real-time expression matching and testing.