Developer Time Tools

Unix Timestamp Converter

Convert Unix timestamps to human-readable dates and back, with automatic seconds/milliseconds detection.

A Unix timestamp counts seconds (or milliseconds) since January 1, 1970 UTC — the "epoch" — and it's how most APIs, databases, and log files actually store time internally, even though nobody reads it directly. This converter goes both directions: paste a timestamp to see the exact UTC and local date it represents, or enter a date and time to get the corresponding timestamp for use in code, API calls, or database queries. It automatically distinguishes seconds-based timestamps from millisecond-based ones, since both formats are common and mixing them up is one of the most frequent timestamp bugs.

Timestamp → Date

Accepts seconds or milliseconds — detected automatically.

Tue, 21 Jul 2026 06:35:15 GMT

ISO 8601: 2026-07-21T06:35:15.000Z

Local: 7/21/2026, 6:35:15 AM

Date → Timestamp

1784615700

Milliseconds: 1784615700000

How to Use This Calculator

1. Paste a timestamp to convert it to a date

Works with both second-based and millisecond-based timestamps — detected automatically.

2. Or enter a date and time to get its timestamp

Enter the date and time in UTC to get the exact Unix timestamp.

3. Copy whichever format you need

ISO 8601, UTC string, or the raw timestamp — all shown at once.

How It Works

seconds_since_epoch = (target_date − 1970-01-01T00:00:00Z) / 1000

The timestamp 1700000000 represents November 14, 2023, 22:13:20 UTC — 1,700,000,000 seconds after midnight UTC on January 1, 1970.

Frequently Asked Questions

What is a Unix timestamp?

A Unix timestamp (or epoch time) is the number of seconds that have elapsed since midnight UTC on January 1, 1970, not counting leap seconds. It's a single number that unambiguously represents one instant in time, which is why so much software stores dates this way internally.

How do I know if a timestamp is in seconds or milliseconds?

Seconds-based timestamps for current dates are 10 digits long; millisecond-based timestamps are 13 digits. This tool checks the magnitude automatically and converts accordingly.

Why do timestamps not include a time zone?

A Unix timestamp represents an absolute instant in time (equivalent to UTC), not a wall-clock time in any particular place. Displaying it in a specific time zone is a formatting choice made after the fact, not something encoded in the number itself.

What happens with dates before 1970?

They're represented as negative timestamps, counting backward from the epoch. Most modern systems handle negative timestamps correctly, but it's worth verifying if you're working with older or embedded software.

Common Mistakes

  • Mixing up seconds and milliseconds

    JavaScript's Date.now() returns milliseconds, but many APIs and Unix tools expect seconds. Feeding a millisecond value into a seconds-expecting field produces a date far in the future (or vice versa, a date near 1970) — this is the single most common timestamp bug.

  • Assuming a timestamp includes time zone information

    A Unix timestamp is always a single point in absolute time (UTC) — it has no time zone attached. "Converting a timestamp to my time zone" means displaying that same instant using local formatting, not changing the underlying number.

  • Using timestamps for dates before 1970 or far in the future without checking overflow

    Negative timestamps represent dates before 1970 and are valid, but not every system handles them correctly. Very large timestamps can also overflow older 32-bit systems (the well-known "Year 2038 problem") — worth checking if you're integrating with legacy software.

Related Tools