← Back to Blog
timestampunixepochprogrammingdates

What is a Unix Timestamp and How to Convert It

By QuickyTools  ·  Published on

What is a Unix Timestamp?

A Unix timestamp (also called Epoch time or POSIX time) is a way of tracking time as a single number: the count of seconds that have passed since January 1, 1970, at 00:00:00 UTC.

For example:

  • 0 = January 1, 1970, 00:00:00 UTC
  • 1000000000 = September 9, 2001, 01:46:40 UTC
  • 1700000000 = November 14, 2023, 22:13:20 UTC

Right now, the current timestamp is somewhere around 1.7 billion.

Why Do Developers Use Timestamps?

Timestamps solve a universal problem: time zones are complicated. When your server is in New York, your database in Frankfurt, and your user in Tokyo, storing “March 15, 2026 at 3pm” is ambiguous. 3pm where?

A Unix timestamp is always UTC. It’s just a number — no time zones, no daylight saving time, no locale formatting. This makes it:

  • Unambiguous1742054400 means exactly one moment in time, everywhere
  • Easy to sort — larger number = later date
  • Easy to calculate — the difference between two timestamps is the number of seconds between them
  • Compact — a single integer vs. a formatted date string

Seconds vs. Milliseconds

Some systems use seconds (10 digits, e.g., 1700000000) and others use milliseconds (13 digits, e.g., 1700000000000).

  • Seconds: Unix/Linux, PHP, Python’s time.time(), most databases
  • Milliseconds: JavaScript’s Date.now(), Java’s System.currentTimeMillis()

A quick way to tell: if the number has 13 digits, it’s probably milliseconds.

Common Use Cases

WhereExample
API responses"created_at": 1700000000
JWT tokens"exp": 1700003600 (expiration time)
Log files[1700000000] Server started
Databasescreated_at INTEGER NOT NULL
Cron jobsScheduling based on epoch comparisons
File systemsLast modified time

Converting in Code

JavaScript:

// Now → timestamp
Math.floor(Date.now() / 1000);

// Timestamp → date
new Date(1700000000 * 1000).toISOString();

Python:

import time, datetime
time.time()  # Now → timestamp
datetime.datetime.fromtimestamp(1700000000)  # Timestamp → date

The Year 2038 Problem

Unix timestamps are often stored as 32-bit signed integers, which max out at 2147483647 — that’s January 19, 2038, 03:14:07 UTC. After that, the counter overflows. Most modern systems now use 64-bit integers, which won’t overflow for about 292 billion years.

Try It Now

Our Timestamp Converter lets you convert between Unix timestamps and human-readable dates instantly. It auto-detects seconds vs. milliseconds and shows local time, UTC, ISO 8601, and relative time.