Markdown (LLM)
Initializing...

Unix Epoch & Timestamp Converter

Convert Unix epoch timestamps and ISO-8601 date strings.

Presets:
Detected Format
- -
Unix Seconds
-
Unix Milliseconds
-
UTC (RFC 3339 / ISO 8601)
-
UTC (RFC 2822)
-
Local Browser Time
-
Calendar Meta
Day: - Day of Year: - Week: - Leap Year: -

Deep Dive on Time in Go & Distributed Databases
For an engineering breakdown of monotonic clocks in Go, monotonic vs wall clocks, time zone political shifts, and the right way to store timestamps across PostgreSQL, Couchbase, and mobile clients, read our guide: Just About Go Time.


How to Identify Timestamp Magnitudes

When dealing with distributed systems, databases, and message queues (Kafka, RabbitMQ, Redis), timestamps arrive in varying precisions:

PrecisionDigitsExampleCommon Emitter
Seconds10 digits1715344800Unix date +%s, Postgres EXTRACT(EPOCH), standard HTTP headers
Milliseconds13 digits1715344800000JavaScript Date.now(), Java System.currentTimeMillis(), MongoDB ObjectID
Microseconds16 digits1715344800000000Python time.time_ns() // 1000, PostgreSQL timestamp internal storage
Nanoseconds19 digits1715344800000000000Go time.Now().UnixNano(), Linux high-res timers (CLOCK_REALTIME)

Epoch Conversion Cheat Sheet

A quick reference for getting the current Unix timestamp and parsing an epoch integer (1800000000) into a human-readable date across common environments:

1. Programming Languages

LanguageGet Current Epoch (Seconds)Convert Epoch to Date (1800000000)
Gotime.Now().Unix()time.Unix(1800000000, 0)
Pythonimport time; time.time()import time; time.ctime(1800000000)
JavaScript / NodeMath.floor(Date.now() / 1000)new Date(1800000000 * 1000).toLocaleString()
JavaSystem.currentTimeMillis() / 1000java.time.Instant.ofEpochSecond(1800000000)
C# (.NET)DateTimeOffset.UtcNow.ToUnixTimeSeconds()DateTimeOffset.FromUnixTimeSeconds(1800000000).DateTime
C++std::chrono::system_clock::now().time_since_epoch()auto t = std::chrono::system_clock::from_time_t(1800000000);
Ctime(NULL)ctime(&epoch)
RustSystemTime::now().duration_since(UNIX_EPOCH)?.as_secs()DateTime::from_timestamp(1800000000, 0)
RubyTime.now.to_iTime.at(1800000000)
PHPtime()date(‘r’, 1800000000)
DartDateTime.now().millisecondsSinceEpoch ~/ 1000DateTime.fromMillisecondsSinceEpoch(1800000000 * 1000)
Luaos.time()os.date(’%c’, 1800000000)
Ras.numeric(Sys.time())as.POSIXct(1800000000, origin=“1970-01-01”, tz=“GMT”)

2. Databases

DatabaseGet Current Epoch (Seconds)Convert Epoch to Timestamp (1800000000)
PostgreSQLSELECT EXTRACT(EPOCH FROM now());SELECT TO_TIMESTAMP(1800000000);
MySQL / MariaDBSELECT UNIX_TIMESTAMP(NOW());SELECT FROM_UNIXTIME(1800000000);
SQLiteSELECT unixepoch();SELECT datetime(1800000000, ‘unixepoch’);
SQL Server (T-SQL)SELECT DATEDIFF(SECOND, ‘1970-01-01’, GETUTCDATE());SELECT DATEADD(SECOND, 1800000000, ‘1970-01-01’);

3. Operating Systems & Shells

Shell / OSGet Current Epoch (Seconds)Convert Epoch to Date (1800000000)
Linux / GNU Bashdate +%sdate -d @1800000000 (or date -ud @1800000000 for UTC)
macOS / BSDdate +%sdate -r 1800000000 (or date -u -r 1800000000 for UTC)
PowerShell[DateTimeOffset]::Now.ToUnixTimeSeconds()[DateTimeOffset]::FromUnixTimeSeconds(1800000000).LocalDateTime

4. Spreadsheets

ToolFormula (Epoch in Cell A1)Note
Excel / Sheets / Calc=(A1 / 86400) + 25569Format cell as Date/Time (UTC). Add +(offset / 24) for local time zones.

The Year 2038 Problem (Y2K38)

Systems storing Unix timestamps as a signed 32-bit integer (int32) will overflow on:

Tuesday, January 19, 2038 at 03:14:07 UTC

At that exact second, the value rolls over from 2,147,483,647 to -2,147,483,648, causing systems to interpret the date as December 13, 1901. Modern 64-bit systems (int64) extend this deadline by approximately 292 billion years.