Skip to main content

Unix Timestamp Converter

Decode log lines and API fields, encode meeting times, compare UTC vs local, and copy every format you need—without sending timestamps to a server.

Unix time (POSIX definition)

Unix time (often called POSIX time) is elapsed time measured from the Unix epoch: the instant 1970-01-01T00:00:00Z (midnight at the prime meridian, ISO 8601). Implementations usually encode that offset as an integer count of seconds, or as milliseconds for finer resolution. In the POSIX definition, this count does not adjust for leap seconds, so it is not identical to every national civil time scale at every moment.
Live clock

Updates every second in your browser. Values use your device timezone for local display.

Unix (seconds)
Unix (milliseconds)
Local time
Timestamp → human-readable date

Auto-detects seconds (≈10 digits), milliseconds (13), microseconds (16), or nanoseconds (19+). Decimal fractions apply to seconds or milliseconds.

Enter a numeric Unix timestamp, or wait a moment after the page loads for a default value.

Date / time → Unix timestamp

Use the picker for local wall time, or paste an ISO-8601 / RFC 3339 string (e.g. 2026-04-04T12:00:00Z) in the text field.

Local date & time

Choose a local date and time, or wait for the default after load.

ISO / RFC 3339 string

Optional — uses Date.parse in your browser.

Seconds → weeks, days, hours, minutes, seconds
1 d, 0 s

Weeks: 0, Days: 1, Hours: 0, Minutes: 0, Seconds: 0

Batch convert (one timestamp per line)

Up to 50 non-empty lines. Mixed digit lengths use the same auto rules as above.

Common durations (seconds)
PeriodSeconds
1 minute
60
1 hour
3,600
1 day
86,400
1 week
604,800
30 days (approx. month)
2,592,000
365.25 days (approx. year)
31,556,926

JavaScript Date does not model leap seconds. For legal time in edge cases, verify against an authoritative clock.

How to use the Unix timestamp converter

Paste a numeric epoch value to decode it, pick local date/time or ISO text to encode it, and use batch mode when you are reconciling logs or API payloads.

Example workflow

Start from the live clock for “right now”, paste a 10-digit log line to see UTC ISO output, then copy milliseconds for JavaScript Date.

  • Use Auto-detect first, then override units if a log format is ambiguous.
  • Copy UTC ISO for server comparisons; copy local formatted strings for emails.
  • Paste multiple log timestamps into batch mode and export TSV.

Why Unix time is still the lingua franca of systems

This Unix timestamp converter is built for day-to-day engineering work: reconciling logs, debugging APIs, migrating data between languages, and turning opaque integers like “1712847234” into a calendar everyone can read. The page follows the same structured layout as our investment calculator experience—clear panels, strong hierarchy, and copy-friendly outputs—while covering seconds through nanoseconds, batch lines, and practical safety notes.

Under the hood, Unix time counts elapsed time from the Unix epoch (1970-01-01T00:00:00Z). In the usual POSIX interpretation, that count does not insert leap seconds, so civil clocks and Unix time can diverge at leap-second boundaries. This tool renders each instant in UTC and in your local wall time, and runs the conversions in your browser so routine values are not sent to our servers.

Teams still ship bugs when milliseconds are treated as seconds, when time zones are assumed instead of labeled, or when CSV exports mix ISO strings with raw integers. A disciplined converter reduces those mistakes by showing every representation side by side: UTC ISO-8601, a rich local string, and parallel numeric forms (seconds, milliseconds, microseconds, nanoseconds) derived from the same underlying instant whenever it is safe to do so in JavaScript.

Diagram of Unix epoch at 1970-01-01 UTC converting to the same instant shown as ISO UTC, local time, and second through nanosecond counters

What this shows: the Unix epoch as a fixed origin, and why engineers still juggle UTC strings, locale output, and several numeric widths for the same moment.

What you can do on this page

The live clock answers “what is the epoch right now?” with both second and millisecond granularity, refreshed every second. That is the fastest way to seed a test fixture or compare against a server that logs Unix seconds only.

The timestamp → date panel auto-detects common digit lengths: roughly ten digits for seconds, thirteen for milliseconds, sixteen for microseconds, and longer runs for nanoseconds. You can override detection when you know the unit—for example forcing milliseconds on an ambiguous string while debugging a mobile SDK.

The date → timestamp section pairs a native datetime-local control (interpreted as your local wall clock) with a free-form ISO / RFC 3339 text box that flows through Date.parse. That mirrors how engineers actually work: pick a meeting time visually, but paste full strings copied from RFC headers or cloud consoles.

Duration breakdown turns a large second count into weeks, days, hours, minutes, and seconds—useful when reading retention windows, cache TTLs, or SLA math. The batch area converts up to fifty non-empty lines at once and can copy a tab-separated block for spreadsheets. Pair it with our JSON formatter when payloads embed timestamps as nested fields, or with the reading time calculator when you are scheduling publishes around wall-clock deadlines.

Comparison of one timestamp shown as portable UTC ISO string versus browser-dependent local formatted time with timezone notes

What this shows: why UTC strings stay comparable across servers, while local formatting follows your device clock and daylight-saving rules.

Seconds, milliseconds, microseconds, and nanoseconds

JavaScript Date stores UTC milliseconds since the epoch. That is why thirteen-digit millisecond timestamps feel native in browser tooling, while sixteen-digit microsecond values often come from databases, analytics pipelines, or hardware sensors. Nanoseconds appear in high-resolution traces; we convert them with BigInt arithmetic on the main path, then project into milliseconds for calendar display when the result still fits the safe numeric range exposed to Date.

Fractional seconds (for example 1712847234.789) are supported on the second and millisecond modes by mapping the decimal tail into milliseconds up to the precision we display. That matches how many loggers emit “seconds with fraction” even though the storage type is a float.

Chart of typical digit lengths for Unix timestamps in seconds, milliseconds, microseconds, and nanoseconds for auto-detection

What this shows: how the on-page auto-detect guesses the unit from string length — always confirm against your log or API contract when formats are mixed.

Year 2038 and 32-bit signed integers

Systems that still store Unix time as a signed 32-bit integer can overflow after 03:14:07 UTC on 19 January 2038. When your decoded instant falls outside the inclusive range from -2,147,483,648 to 2,147,483,647 seconds, we surface a warning so you can double-check downstream consumers—embedded devices, legacy databases, or serialization layers that have not been widened to 64 bits.

The warning is informational, not a verdict on your architecture. Many modern stacks already use 64-bit integers or arbitrary precision types; others compensate with unsigned 32-bit encodings that merely postpone the problem. Treat the banner as a reminder to verify storage width before you bake timestamps into a long-lived contract.

Timeline of signed 32-bit Unix seconds safe range and overflow after January 2038 for legacy integer storage

What this shows: the inclusive int32 second window and why values beyond it deserve a schema review—not panic, but a deliberate width upgrade.

Privacy, locale, and leap-second caveats

Unless you explicitly use other features of the site that perform network calls, the conversions here run locally in your browser. That makes the tool appropriate for production log snippets and customer identifiers you do not want to paste into random servers.

Locale-formatted outputs follow your device settings, which means daylight-saving rules and historical zone databases can differ slightly from what you see on a remote server configured for UTC-only logging. When in doubt, trust the UTC ISO string for cross-system comparisons.

Like other JavaScript environments, we do not model leap seconds at the Date layer. For legal or broadcast use cases where leap-second tables matter, cross-check against an authoritative time service rather than any browser-based converter alone.

Other languages

Frequently Asked Questions about Unix Timestamp Converter

How does auto-detect choose seconds vs milliseconds?

It uses digit length: about ten significant digits are treated as seconds, up to thirteen as milliseconds, up to sixteen as microseconds, and longer runs as nanoseconds. Override with the unit dropdown when you know the source format.

Why do local time and UTC differ on this page?

Your browser formats local time using your operating system timezone and locale. UTC ISO strings are stable for comparing servers and databases. Always log or store UTC when systems span regions.

Are leap seconds modeled here?

No. JavaScript Date follows common POSIX-style behavior and does not insert leap seconds. For legal or broadcast timing that depends on leap-second tables, verify with an authoritative time service.

What does batch mode do?

Paste up to fifty non-empty lines of timestamps. Each line is decoded with the same auto rules, and you can copy a tab-separated block for spreadsheets or tickets.

What is the Year 2038 warning?

Signed 32-bit Unix seconds overflow after 2,147,483,647 (03:14:07 UTC on 19 January 2038). If a timestamp falls outside that integer range, we warn so you can confirm whether a legacy system still stores time in 32 bits.

🧮 Text & list tool