Calcoid

Epoch Time Converter

Convert Unix epoch timestamps (seconds or milliseconds) to and from human-readable dates in any IANA timezone. Returns UTC ISO 8601, zoned ISO with offset, US-format string, weekday, day of year, ISO week, leap-year flag, and a Y2038 advisory for epochs above 2,147,483,647.

Convert epoch timestamps and dates

Integer number of seconds since 1970-01-01 00:00:00 UTC. Negative values are accepted for dates before 1970.

Result

Unix seconds

1700000000

Unix milliseconds

1700000000000

UTC ISO 8601

2023-11-14T22:13:20.000Z

Local ISO (UTC)

2023-11-14T22:13:20Z

US format

November 14, 2023 at 10:13 PM UTC

Calendar facts

Weekday
Tuesday
Day of year
318
ISO week
46
Leap year
No

Frequently Asked Questions about the Epoch Time Converter

What is Unix epoch time and why does it start in 1970?
Unix epoch time counts elapsed seconds from 1970-01-01T00:00:00 UTC. Unix adopted that origin early in its development, and the convention became widespread across operating systems and APIs. Other systems can use different epochs or time units, so confirm the format before converting a bare number.
What is the Y2038 problem and when does it actually break things?
The Y2038 problem hits at 03:14:07 UTC on January 19, 2038, when the count of seconds since the Unix epoch (2,147,483,647) exceeds the maximum value of a signed 32-bit integer. C's classic time_t, Java int, and any legacy database column or embedded chip that stores timestamps in 32 bits will wrap around to a negative value, which decodes as December 13, 1901. Modern 64-bit systems, JavaScript Number, Python int, Postgres TIMESTAMP, and any time_t compiled as 64-bit are not affected. The risk lives in old embedded devices, firmware, file formats, and a long tail of unpatched servers. This calculator flags any epoch past 2,147,483,647 so you can spot inputs that will trip a 32-bit system.
Why does JavaScript use milliseconds when Unix uses seconds?
JavaScript Date uses milliseconds since the Unix epoch, while many Unix interfaces use seconds. A 10-digit contemporary timestamp is often seconds and a 13-digit one often milliseconds, but digit count is only a clue. Confirm the source format before multiplying or dividing by 1000.
How should I store dates with timezones in a database?
Store an instant in a database type with well-defined UTC semantics. If the original civil-time zone matters, store its IANA zone identifier separately because PostgreSQL TIMESTAMPTZ preserves the instant, not the zone name originally supplied. A local appointment may also need its intended wall time and zone so future rule changes can be handled deliberately.
What is ISO 8601 and why is it the right format for date strings?
ISO 8601 defines unambiguous year-first date and time representations, such as YYYY-MM-DDTHH:MM:SSZ. Support differs across languages and APIs, especially for optional forms, offsets, reduced precision, and zone names. Define the exact accepted profile at each system boundary instead of assuming every ISO 8601 form parses everywhere.

Related Calculators

More calculators in "Date & Time"

See all 53 calculators in "Date & Time"