Developer tools

Unix timestamp converter

Convert Unix seconds, milliseconds, microseconds and nanoseconds to dates and back. Exact decimal values, searchable time zones and explicit daylight-saving choices.

Choose the unit explicitly. Negative and decimal values are supported, down to one nanosecond.

Time zone: UTC

The timestamp identifies one instant. The zone changes how that instant is displayed.

Enter a timestamp, or use the current device time.

Choose seconds or a smaller unit explicitly

A Unix timestamp measures time from 1970-01-01 at 00:00:00 UTC. Seconds are common in Unix systems; JavaScript Date uses milliseconds. Log and tracing systems may use microseconds or nanoseconds. One second equals 1,000 milliseconds, 1,000,000 microseconds or 1,000,000,000 nanoseconds.

This converter does not guess from the number of digits. For example, 1700000000 seconds and 1700000000000 milliseconds both identify 2023-11-14T22:13:20.000Z. Selecting the wrong unit can produce a very different date. Negative timestamps refer to instants before the epoch; −0.000000001 seconds is the final nanosecond of 1969.

Keep subsecond digits exact

Decimal arithmetic uses integer nanoseconds. Seconds accept up to nine fractional digits, milliseconds six and microseconds three; nanoseconds must be whole numbers. Values with more precision are rejected rather than rounded. Commas, exponent notation, hexadecimal and ambiguous date strings are not accepted. Exported JSON uses decimal strings so large timestamps do not lose digits when parsed.

For date-to-timestamp conversion, enter a date and clock time, then optionally expand Fractional seconds. The UTC calendar range is 0001-01-01 through 9999-12-31. A zone display can cross that boundary; if so, the tool explains why that local calendar view cannot be edited. No leap-second representation, Julian calendar or historical calendar-switch model is included.

Time zones and daylight-saving changes

A numeric timestamp identifies one instant, independent of time zone. A calendar time needs a zone to identify an instant. The searchable list uses the shared documented IANA names registry; actual offsets come from your browser through the installed Luxon library. Historical data can differ across browsers and future rules can change.

Skipped clock times are rejected without shifting them. Repeated times show both UTC instants and offsets for you to choose. Editing a known instant or restoring a previously chosen occurrence keeps that exact instant. Choose another occurrence lets you revisit the two choices; editing the calendar fields or changing the zone requires a fresh choice. For example, 2024-11-03 at 01:30 in America/New_York occurs twice. “Use current time” captures your device clock once; it is not a synchronized server clock. Nothing refreshes while you are reading or copying the result.

Local processing and recovery

Conversions use local browser code without uploads or saved timestamps. Clear, current time, example, device-zone and result-to-input actions keep one previous workspace for Undo, including a known occurrence during a repeated clock hour. Editing an input ends that replacement history; changing options does not. Any input, unit or zone change hides stale results until you convert again. Copy and JSON download include complete values.

References: JavaScript Date and timestamps, Luxon ambiguous-time handling and IANA time-zone data.