Epoch Timestamp Converter

Convert between Unix timestamps and human-readable dates across any timezone.

Current Unix Timestamp (click to copy)

Timestamp → Human Date

Human Readable Date

Human Date → Timestamp

Unix Timestamp (seconds)

Epoch Boundaries for a Date

Common Reference Timestamps

EventUnix TimestampDate (UTC)
Unix Epoch (Start of Time)01970-01-01 00:00:00
Year 2000 (Y2K)9466848002000-01-01 00:00:00
Year 2024 Start17040672002024-01-01 00:00:00
Year 2025 Start17356896002025-01-01 00:00:00
Year 2030 Start18934560002030-01-01 00:00:00
Year 2038 Problem21474836472038-01-19 03:14:07
Year 2100 Start41024448002100-01-01 00:00:00

What Is a Unix Epoch Timestamp?

A Unix timestamp (also called Unix epoch time, POSIX time, or Unix time) is the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC (the Unix Epoch). It is the standard way most programming languages, databases, and APIs represent points in time as a single integer.

Why Use Unix Timestamps?

  • Timezone-independent — a single integer represents the same moment in time regardless of locale
  • Easy arithmetic — calculating time differences is just subtraction
  • Universally supported in every programming language and database
  • Compact storage — 4 bytes (32-bit) or 8 bytes (64-bit) vs string date formats

Getting the Current Timestamp in Code

JavaScript: Math.floor(Date.now() / 1000)
Python: import time; int(time.time())
PHP: time()
Java: System.currentTimeMillis() / 1000L
SQL (MySQL): UNIX_TIMESTAMP()
Go: time.Now().Unix()
C: time(NULL)

The Year 2038 Problem

32-bit systems store Unix time as a signed integer, which overflows on January 19, 2038 at 03:14:07 UTC (timestamp 2,147,483,647). Most modern systems use 64-bit timestamps which won't overflow for ~292 billion years. If you're working with legacy 32-bit embedded systems, this is still a real concern.

Millisecond vs Second Timestamps

JavaScript's Date.now() returns milliseconds (multiply by 1000 from seconds). Most Unix tools use seconds. When you see a 13-digit number it's milliseconds; 10-digit is seconds. This converter supports both — enter either format.

FAQ

Why does Unix time start at January 1, 1970?

1970-01-01 was chosen by the early Unix developers at Bell Labs as a convenient round number close to when Unix was developed (late 1960s). It's now a universally accepted standard.

How do I convert a JavaScript timestamp to Unix seconds?

JavaScript timestamps are in milliseconds. Divide by 1000: Math.floor(Date.now() / 1000). To convert back: new Date(unixSeconds * 1000).

What timezone is Unix time in?

Unix time itself is timezone-agnostic — it's always UTC. The conversion to a local date/time requires applying a timezone offset. The same Unix timestamp maps to different local times in different zones.