Unix timestamp converter

Convert Unix epoch timestamps to human-readable dates and back. Auto-detects seconds and milliseconds. Timezone: Asia/Muscat.

Current Unix time

Enter a Unix timestamp above.

Pick a date and time above.

What is a Unix timestamp?

A Unix timestamp (also called epoch time or POSIX time) is the number of seconds that have elapsed since 00:00:00 UTC on 1 January 1970, not counting leap seconds. Because it is a single integer with no timezone, it is the standard way computers, databases and APIs store and exchange points in time. Some systems use milliseconds instead of seconds — this converter detects which you pasted automatically.

Telling the units apart

The quickest way to identify what you are looking at is to count the digits. This holds for any date in the current era and will keep holding for centuries.
DigitsUnitExampleResolves to
10Seconds1755600000August 2026
13Milliseconds1755600000000August 2026
16Microseconds1755600000000000August 2026
19Nanoseconds1755600000000000000August 2026
A ten-digit value read as milliseconds lands in January 1970; a thirteen-digit value read as seconds lands somewhere around the year 57000. Both mistakes are common enough that a date wildly far from the present is nearly always a unit error rather than corrupt data. JavaScript uses milliseconds, while Unix tooling, Python and most databases use seconds — which is exactly where the confusion originates.

Reference points

MomentTimestamp (seconds)
Unix epoch — 1 Jan 1970 00:00 UTC0
1 Jan 2000946684800
1 Jan 20201577836800
1 Jan 20251735689600
1 Jan 20301893456000
32-bit signed overflow — 19 Jan 20382147483647

The year 2038 problem

Systems that store time in a signed 32-bit integer cannot represent any moment past 03:14:07 UTC on 19 January 2038. One second later the value overflows to negative and the date reads as December 1901.

It is the same class of bug as Y2K, and it is largely solved on modern platforms: 64-bit systems, current Linux kernels and every mainstream language runtime now use 64-bit time. The remaining exposure is in embedded devices, older databases and file formats with a fixed 32-bit field — and it can bite well before 2038 wherever software calculates future dates, such as long-dated contracts or certificate expiry.

Timestamps, timezones and leap seconds

A Unix timestamp has no timezone. It identifies an absolute instant, and the same value is simultaneously 14:00 in London and 18:00 in Dubai. Timezone is a display concern applied when converting to a human-readable date, which is why storing timestamps in UTC and formatting at the point of display avoids an entire category of bug.

Unix time also ignores leap seconds, deliberately. It assumes every day contains exactly 86,400 seconds, so it has drifted from true astronomical time by 27 seconds since 1972. Systems handle a leap second by repeating or smearing a value rather than incrementing past it. For anything short of scientific timing this is irrelevant, and the trade-off buys simple, reversible arithmetic.

Frequently asked questions

Seconds or milliseconds — which does this use?

Both. When you paste a timestamp the tool auto-detects the unit: 10-digit values are treated as seconds and 13-digit values as milliseconds. The date-to-timestamp side shows you both.

Does it account for my timezone?

Yes. The 'Local' output uses your device timezone, while 'UTC' and 'ISO 8601' are shown in Coordinated Universal Time so you can compare.

Is the conversion done privately?

Yes. Everything runs in your browser with JavaScript's Date object — no data is sent anywhere.

Why does my timestamp show a date in 1970?

You are almost certainly passing milliseconds to a function expecting seconds, or vice versa. A 10-digit value is seconds and a 13-digit value is milliseconds — dividing or multiplying by 1000 fixes it.

Why do JavaScript and Python disagree about the same timestamp?

JavaScript's Date works in milliseconds while Python's time.time() returns seconds. Converting between them requires a factor of 1000.

What is the 2038 problem?

Signed 32-bit time values overflow on 19 January 2038 and wrap to a negative number, displaying as 1901. Modern 64-bit systems are unaffected, but embedded devices and legacy databases may still be exposed.

Do Unix timestamps include leap seconds?

No. Unix time assumes every day has exactly 86,400 seconds, so it has drifted about 27 seconds from astronomical time since 1972. This keeps date arithmetic simple and reversible.

Should I store dates as timestamps or as strings?

Timestamps are compact and sort and compare cheaply. ISO 8601 strings are human-readable and preserve timezone offsets. Many systems store an integer timestamp in UTC and format it for display.

What is ISO 8601?

An international standard date format such as 2026-08-19T12:00:00Z, where Z means UTC. It sorts correctly as plain text and is the usual way dates travel in JSON, which has no native date type.

Related free tools

Age calculatorJSON to CSVBase64 encoderColor converter