EasyUnitConverter.com

Unix Epoch / Timestamp Converter

Convert Unix timestamps to human-readable dates and vice versa. See also Time Converter and Date to Roman Numerals.

Current Unix Epoch Time

Epoch → Human-Readable Date

Date → Epoch Timestamp

What Is Unix Epoch Time?

Unix epoch time (also called POSIX time or Unix timestamp) is the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC — a date known as the Unix epoch. It is a simple, timezone-independent way to represent a point in time as a single integer. Nearly every programming language and operating system uses epoch time internally for date/time calculations.

How to Convert Epoch to Date

  1. Take the epoch timestamp (e.g., 1700000000)
  2. Multiply by 1000 to get milliseconds (JavaScript uses ms internally)
  3. Create a Date object: new Date(1700000000 * 1000)
  4. Format the result in your desired timezone

Formula

Date = new Date(epoch_seconds × 1000)

Epoch = Math.floor(Date.getTime() / 1000)

Example

Epoch: 1700000000

Date: Tue, 14 Nov 2023 22:13:20 GMT

ISO: 2023-11-14T22:13:20.000Z

Epoch Reference Table

EventEpoch (seconds)Date (UTC)
Unix Epoch0Jan 1, 1970 00:00:00
1 Billion1000000000Sep 9, 2001 01:46:40
1.5 Billion1500000000Jul 14, 2017 02:40:00
1.7 Billion1700000000Nov 14, 2023 22:13:20
2 Billion2000000000May 18, 2033 03:33:20
Y2K38 Limit2147483647Jan 19, 2038 03:14:07

Technical Details

Unix time is stored as a signed 32-bit integer on many legacy systems, which means it can represent dates from December 13, 1901 to January 19, 2038. The maximum value is 2,147,483,647 (2³¹ − 1). After this point, the counter overflows — this is known as the Year 2038 problem (Y2K38). Modern 64-bit systems use a 64-bit integer, extending the range to approximately 292 billion years in either direction.

JavaScript's Date.now() returns milliseconds since epoch, not seconds. Many APIs (Java, Python's time.time()) return seconds. This converter auto-detects whether the input is in seconds or milliseconds based on magnitude.

Why January 1, 1970?

The Unix epoch was chosen as a convenient, round date close to when Unix was being developed at Bell Labs in the late 1960s. The original Unix system used a 32-bit counter that incremented every 1/60th of a second, but this was later simplified to whole seconds from midnight UTC on January 1, 1970. This date has no special astronomical or historical significance — it was simply a practical engineering choice.

Frequently Asked Questions

What happens at epoch 0?

Epoch 0 corresponds to January 1, 1970, 00:00:00 UTC. Negative epoch values represent dates before 1970.

Does epoch time account for leap seconds?

No. Unix time does not count leap seconds. Each day is treated as exactly 86,400 seconds. When a leap second occurs, Unix time effectively repeats a second or skips one, depending on the implementation.

What is the Y2K38 problem?

Systems storing epoch time as a signed 32-bit integer will overflow on January 19, 2038 at 03:14:07 UTC. The value wraps to a large negative number, causing the date to jump to December 13, 1901. The fix is to use 64-bit integers, which most modern systems already do.

How do I get the current epoch in different languages?

JavaScript: Math.floor(Date.now()/1000). Python: import time; int(time.time()). Java: System.currentTimeMillis()/1000. PHP: time().

Related Converters: