This tool converts Unix timestamps (also called epoch time) into human-readable dates, and converts calendar dates back into Unix timestamps. It is designed for developers, analysts, and system administrators who work with logs, APIs, and databases.
When you paste or type a Unix timestamp in seconds, the converter shows the matching date and time in your browser’s local time zone and as a UTC-based ISO 8601 string. When you pick a normal date and time, the tool outputs the equivalent Unix timestamp, so you can use it in code, configuration files, or database queries.
A Unix timestamp is a single integer that counts the number of elapsed seconds since the Unix epoch. The Unix epoch is defined as 1970-01-01 00:00:00 Coordinated Universal Time (UTC), ignoring leap seconds. A timestamp of 0 represents exactly that instant; positive integers represent moments after it, and negative integers represent moments before it.
Because a Unix timestamp is just a number, it is compact to store, easy to compare, and unambiguous across time zones. A higher number always represents a later point in time. This makes Unix timestamps a natural choice for log files, event streams, message queues, distributed systems, and databases.
Conceptually, converting between Unix timestamps and human-readable dates follows straightforward formulas. The details (time zones, leap years, and calendar rules) are implemented for you by the browser or programming language runtime, but it is useful to understand the relationship.
In words: take your date and time in UTC, subtract the Unix epoch instant, and express the result as a number of whole seconds.
The relationship can be expressed in MathML as:
Here, t is the moment you care about (in UTC) and t_epoch is 1970-01-01 00:00:00 UTC. The result is the Unix timestamp in seconds.
To go the other way, start from the epoch and add the given number of seconds:
Your system then presents that UTC instant in whatever display time zone you select. This converter uses your browser’s local time zone for the main human-readable output and also shows an ISO 8601 representation tied to UTC.
Unix timestamps themselves do not store any time zone information; they are always defined relative to UTC. However, tools that display timestamps have to choose a time zone for formatting into a human-readable string. This converter makes a few explicit choices so that you know what to expect.
Date.now()), you must divide by 1,000 before using this tool.2024-01-15T12:34:56Z, which is always UTC-based.Because of these rules, if you compare this tool against another converter that defaults to UTC for both input and display, you may see different human-readable strings for the same numeric timestamp. The underlying UTC instant is still the same; only the chosen display time zone differs.
Once you run a conversion, you will typically see:
If the result looks off by a fixed number of hours (for example, exactly UTC minus five hours), check whether you are expecting UTC display while the converter is intentionally using your local time zone. Also verify that your system clock and time zone settings are correct.
Suppose you receive a log entry with the Unix timestamp 1700000000. You want to know when that event occurred in your local time and confirm what value to use when replaying the event.
1700000000 into the Unix timestamp field.For example, you might see something like “2023-11-14 22:13:20” in your local time and 2023-11-14T22:13:20Z as the ISO value (the exact local time shown will depend on your offset from UTC).
2023-11-14T22:13:20Z as the canonical representation of the instant in UTC.1700000000.This round trip helps you verify that you have the correct units and that there was no off-by-one error in your calculations or data handling.
Many systems use different, but related, representations of the same underlying moment in time. The table below summarizes a few of the most common formats you will encounter when working with Unix timestamps and dates.
| Format | Example value | Units / structure | Typical usage |
|---|---|---|---|
| Unix timestamp (seconds) | 1700000000 |
Integer number of seconds since 1970-01-01 00:00:00 UTC | Databases, POSIX systems, many APIs, log files |
| Unix timestamp (milliseconds) | 1700000000000 |
Integer number of milliseconds since the same epoch | JavaScript Date.now(), some web APIs, analytics tools |
| ISO 8601 (UTC) | 2023-11-14T22:13:20Z |
Structured string with date, time, and Z suffix for UTC |
REST APIs, configuration files, data interchange between systems |
| ISO 8601 with offset | 2023-11-14T17:13:20-05:00 |
Same instant as UTC value, but with explicit time zone offset | Client-side applications, logs that need local-time context |
| Human-readable local date | 11/14/2023, 5:13:20 PM |
Formatted for a specific locale and time zone | User-facing UIs, reports, dashboards, emails |
All of these representations can describe the same moment in time. The converter on this page focuses on Unix timestamps in seconds and produces both human-readable local dates and ISO 8601 UTC strings so that you can move between formats confidently.
Unix timestamps appear in many day-to-day development tasks:
Several common pitfalls are worth keeping in mind when interpreting results:
1700000000 is a plausible timestamp in seconds, but 1700000000000 is likely in milliseconds. If the date looks decades off, check which unit your source system uses.01/02/2024 can be interpreted differently depending on locale (January 2 vs. February 1). ISO 8601 strings remove that ambiguity.While the converter is suitable for most practical purposes, it relies on a few assumptions and has limitations you should know about:
If you compare this converter with other tools or with built-in functions in languages such as JavaScript, Python, or Java, small differences almost always come from time zone assumptions, unit mismatches (seconds vs. milliseconds), or library-specific date range rules rather than from a fundamentally different definition of Unix time.
The Unix epoch is the reference instant 1970-01-01 00:00:00 UTC from which Unix timestamps count elapsed time. A timestamp of 0 corresponds exactly to that moment.
Yes. Unix timestamps are defined relative to UTC and do not store time zone information. When you see different clock times for the same timestamp, that difference comes from how the viewing tool converts UTC into a display time zone.
A quick rule of thumb is to look at the length and magnitude of the number. Modern timestamps in seconds are around 10 digits long. Values around 13 digits usually represent milliseconds. If a converted date looks far in the past or future, check whether you should divide or multiply by 1,000 before using it.
Most discrepancies occur because one tool shows results in UTC and another shows them in your local time zone. Both can be correct. Compare the UTC ISO 8601 values if you want a consistent, time-zone-neutral reference.
Yes. Negative Unix timestamps represent instants before the epoch. This converter supports negative values, although extremely old dates may be limited by browser or operating-system date handling.