---
title: "Timestamp converter | Austin Greco"
description: "Convert Unix seconds, milliseconds, and ISO dates with explicit timezone interpretation, UTC and local output, and daylight saving checks. Runs in your browser."
canonical: "https://austingreco.com/tools/timestamp-converter"
last_updated: "2026-10-23T02:12:39.000Z"
---

[Tools](https://austingreco.com/tools) · Timestamp converter

# Timestamp converter

Convert an instant between Unix timestamps, UTC, and your local date and time.

## How to convert a timestamp

1.  Choose **Unix seconds**, **Unix milliseconds**, or **ISO date/time**. Units are explicit and never guessed from digit count.
2.  Enter one value. For an ISO input without an offset, choose **Interpret as UTC** or **Interpret as local time**. UTC is the default. An explicit `Z` or numeric offset takes precedence.
3.  Read all four results: Unix seconds, Unix milliseconds, UTC / ISO 8601, and local date/time with its offset. Each Copy button copies that result.
4.  Use **Current time** to capture your device clock once in the selected format. Clear removes the input and results.

The Unix epoch is `1970-01-01T00:00:00Z`. Seconds and milliseconds count the same elapsed time in different units: 1 second = 1,000 milliseconds. A timestamp identifies an instant; the local clock display depends on a timezone.

## Examples and explicit units

Unix seconds

`1704067200` is `2024-01-01T00:00:00.000Z`. Fractional seconds such as `1704067200.125` preserve milliseconds.

Unix milliseconds

`1704067200000` is the same instant. Millisecond input must be a whole number; decimals, exponent notation, commas, and hexadecimal are rejected.

ISO with an offset

`2024-01-01T05:30:00+05:30` also becomes `2024-01-01T00:00:00.000Z`. `Z` means UTC; a positive offset means the input clock is ahead of UTC.

Negative values precede the epoch. `-0.001` seconds is `-1` millisecond, or `1969-12-31T23:59:59.999Z`. Seconds output retains the exact fractional value instead of rounding to a whole second.

## Timezones and daylight saving time

A bare `2024-01-01T12:00` uses the selected interpretation. A date alone, such as `2024-01-01`, means midnight in that selection. Local means the timezone reported by your browser, shown beside the output; it is not inferred from your location or the text. Local conversions use your browser’s timezone database, whose historical and future rules can vary between devices.

During a spring clock change, some local times never occur. In `America/New_York`, `2024-03-10T02:30` does not exist. During a fall clock change, some times occur twice: `2024-11-03T01:30` can mean `2024-11-03T05:30:00Z` or `2024-11-03T06:30:00Z`. Local interpretation rejects both skipped and ambiguous times instead of silently moving the clock or choosing one occurrence. These examples apply when your browser uses that timezone.

Resolve a repeated time by supplying its offset: `2024-11-03T01:30:00-04:00` picks the first occurrence and `2024-11-03T01:30:00-05:00` picks the second. Numeric offsets identify an instant directly; they are not checked against a named timezone’s rules. Local output shows the offset at that instant, including DST. Some historical offsets include seconds.

## Accepted dates and invalid input

This converter accepts a deliberate subset of ISO 8601: `YYYY-MM-DD` or `YYYY-MM-DDTHH:mm[:ss[.SSS]]`, optionally followed by `Z` or `±HH:mm` after the time. Use four-digit years 0000–9999, uppercase T and Z, valid calendar dates, hours 00–23, and minutes/seconds 00–59. Up to three fractional digits are supported, after seconds. Surrounding whitespace is ignored.

Invalid leap days, rollover dates, `24:00`, leap seconds, sub-millisecond precision, and unknown offset `-00:00` are rejected. Use `Z` or `+00:00` for known UTC. Numeric offsets may range through ±23:59. Slash dates such as `01/02/2024`, timezone abbreviations, week dates, and natural-language dates are unsupported. The converter validates fields before constructing a date; it does not use permissive Date string parsing.

Unix input supports the JavaScript Date range: ±8,640,000,000,000,000 milliseconds from the epoch. Output beyond years 0000–9999 uses a signed six-digit year; this expanded-year output cannot be pasted into the four-digit ISO input. Unix time here does not model leap seconds. Read the [JavaScript date/time format specification](https://tc39.es/ecma262/multipage/numbers-and-dates.html#sec-date-time-string-format).

## Privacy and related tools

Conversion runs in this page’s memory. The tool does not log, upload, or store your input, put it in the URL, or make conversion requests. Copy writes the selected output to your clipboard. Loading the page still requests site files; see the [site privacy details](https://austingreco.com/privacy).

For timestamp claims such as `exp`, `iat`, and `nbf` inside a token, use the [JWT explorer / creator](https://austingreco.com/tools/jwt-explorer). For percent-encoded date values, use [URL encode / decode](https://austingreco.com/tools/url-encode-decode), or browse [all browser tools](https://austingreco.com/tools).

Source: [Timestamp converter](https://austingreco.com/tools/timestamp-converter)
