Timestamp Converter

Convert Unix timestamps to human-readable dates and back

Current Unix Timestamp

1774458469

Wed, 25 Mar 2026 17:07:49 GMT

or

What Is a Unix Timestamp?

A Unix timestamp (also called epoch time or POSIX time) is the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC. This date is called the Unix epoch. Every second that passes increments the counter by one, giving every moment in time a single integer representation. A Unix timestamp converter translates between this integer and human-readable date formats like ISO 8601, RFC 2822, or locale-specific strings.

Unix timestamps are the standard way to represent time in computing. Databases store created_at and updated_at columns as integers or millisecond timestamps. API responses include timestamps for cache headers (Expires, Last-Modified), JWT claims (iat, exp, nbf), and event logs. Log files from nginx, syslog, and application frameworks all use epoch time. The format is unambiguous because it always represents UTC, with no timezone or daylight saving offset to misinterpret.

Converting between timestamps and dates by hand is error-prone. A value like 1711324800 gives no visual hint about the date it represents. This tool converts Unix timestamps to readable dates and dates back to timestamps. Whether you are reading a JWT exp claim, debugging a database query, or checking a log timestamp, it handles 10-digit (seconds) and 13-digit (milliseconds) values automatically.

Why Use This Timestamp Converter?

Reading raw Unix timestamps from logs, databases, or API responses requires either memorizing epoch math or writing throwaway code. This converter does it in your browser with zero setup. Whether you need to decode a JWT expiry, audit a log line, or set a database TTL, the result is one click away. The tool auto-detects whether a value is a 10-digit seconds timestamp or 13-digit milliseconds timestamp, so you never need to manually divide by 1000. All processing runs locally in your browser. No data leaves your machine, so timestamps from internal systems and sensitive logs stay private.

⚑
Instant Conversion
Type a timestamp or pick a date and see the result immediately. No form submissions, no page reloads. Supports both seconds and milliseconds.
πŸ”’
Privacy-first Processing
All conversions run in your browser using JavaScript's built-in Date object. No data leaves your machine, so timestamps from internal systems stay private.
πŸ”„
Bidirectional Conversion
Convert Unix timestamps to dates and dates back to timestamps. Enter a value in either direction and get the corresponding output without switching tools.
🌐
Multiple Output Formats
See your timestamp as UTC, local time, ISO 8601, and relative time simultaneously. Copy any format with one click.

Timestamp Converter Use Cases

Frontend Development
Decode timestamps from REST API responses to verify that date displays render correctly across timezones. Check whether an API returns seconds or milliseconds.
Backend Engineering
Convert database timestamps when debugging queries. Verify that created_at, updated_at, and expires_at values match expected dates after migrations or timezone changes.
DevOps and SRE
Translate epoch values from log files, monitoring dashboards (Grafana, Datadog), and alerting systems to pinpoint when an incident started or a deployment completed.
QA and Testing
Generate specific timestamps for test fixtures. Verify that time-dependent features like token expiration, cache TTLs, and scheduled jobs trigger at the correct moment.
Data Engineering
Convert timestamp columns when inspecting raw data exports from PostgreSQL, MySQL, or data warehouses. Confirm that ETL pipelines preserve timezone information correctly.
Learning and Education
Understand how computers represent time internally. Experiment with edge cases like the Y2038 problem, negative timestamps for pre-1970 dates, and millisecond precision.

Unix Timestamp Reference Table

The table below shows well-known Unix timestamps and their corresponding dates. These values are useful for quick sanity checks, testing, and understanding the range of 32-bit and 64-bit timestamps.

TimestampDate (UTC)Note
0Jan 1, 1970 00:00:00 UTCUnix epoch start
86400Jan 2, 1970 00:00:00 UTCExactly 1 day
946684800Jan 1, 2000 00:00:00 UTCY2K
1000000000Sep 9, 2001 01:46:40 UTC10-digit milestone
1234567890Feb 13, 2009 23:31:30 UTCAscending digits
1700000000Nov 14, 2023 22:13:20 UTCRecent 10-digit
2000000000May 18, 2033 03:33:20 UTCNext 10-digit milestone
2147483647Jan 19, 2038 03:14:07 UTCY2038 (signed 32-bit max)
4102444800Jan 1, 2100 00:00:00 UTCNext century

Date and Time Format Comparison

Different systems and standards represent the same moment in time using different string formats. The table compares the most common formats you will encounter in APIs, logs, and databases.

FormatExampleNotes
Unix (seconds)1711324800Integer, no timezone info
Unix (milliseconds)1711324800000Used by JavaScript Date.now()
ISO 86012024-03-25T00:00:00ZMachine-readable, includes timezone
RFC 2822Mon, 25 Mar 2024 00:00:00 +0000Email and HTTP headers
UTC stringMon, 25 Mar 2024 00:00:00 GMTDate.prototype.toUTCString()
Human readableMarch 25, 2024, 12:00:00 AMLocale-dependent, display only

Code Examples

Convert between Unix timestamps and dates in the language you are working with. Each example shows both directions: timestamp to date and date to timestamp.

JavaScript (browser / Node.js)
// Current Unix timestamp in seconds
Math.floor(Date.now() / 1000)  // β†’ 1711324800

// Unix timestamp to Date object
const date = new Date(1711324800 * 1000)
date.toISOString()             // β†’ "2024-03-25T00:00:00.000Z"
date.toUTCString()             // β†’ "Mon, 25 Mar 2024 00:00:00 GMT"

// Date string to Unix timestamp
Math.floor(new Date('2024-03-25T00:00:00Z').getTime() / 1000)
// β†’ 1711324800

// Millisecond timestamps (common in JS APIs)
Date.now()                     // β†’ 1711324800000 (ms)
Date.parse('2024-03-25')       // β†’ 1711324800000 (ms)
Python
import time
from datetime import datetime, timezone

# Current Unix timestamp
int(time.time())                                    # β†’ 1711324800

# Unix timestamp to datetime
dt = datetime.fromtimestamp(1711324800, tz=timezone.utc)
dt.isoformat()                                      # β†’ '2024-03-25T00:00:00+00:00'
dt.strftime('%Y-%m-%d %H:%M:%S %Z')                 # β†’ '2024-03-25 00:00:00 UTC'

# Datetime string to Unix timestamp
dt = datetime.fromisoformat('2024-03-25T00:00:00+00:00')
int(dt.timestamp())                                  # β†’ 1711324800

# Parse RFC 2822 dates (from email headers)
from email.utils import parsedate_to_datetime
parsedate_to_datetime('Mon, 25 Mar 2024 00:00:00 +0000').timestamp()
# β†’ 1711324800.0
Go
package main

import (
    "fmt"
    "time"
)

func main() {
    // Current Unix timestamp
    now := time.Now().Unix() // β†’ 1711324800

    // Unix timestamp to time.Time
    t := time.Unix(1711324800, 0).UTC()
    fmt.Println(t.Format(time.RFC3339))
    // β†’ 2024-03-25T00:00:00Z

    // Parse a date string to Unix timestamp
    parsed, _ := time.Parse(time.RFC3339, "2024-03-25T00:00:00Z")
    fmt.Println(parsed.Unix())
    // β†’ 1711324800

    // Millisecond timestamp
    ms := time.Now().UnixMilli() // β†’ 1711324800000
    fmt.Println(now, ms)
}
CLI (date / bash)
# Current Unix timestamp
date +%s                                    # β†’ 1711324800

# Convert timestamp to human-readable date (GNU date)
date -d @1711324800                         # β†’ Mon Mar 25 00:00:00 UTC 2024

# Convert timestamp to ISO 8601
date -d @1711324800 --iso-8601=seconds      # β†’ 2024-03-25T00:00:00+00:00

# macOS (BSD date) β€” slightly different flags
date -r 1711324800                          # β†’ Mon Mar 25 00:00:00 UTC 2024

# Date string to timestamp (GNU date)
date -d "2024-03-25 00:00:00 UTC" +%s       # β†’ 1711324800

Frequently Asked Questions

What is the difference between Unix timestamps in seconds and milliseconds?
A Unix timestamp in seconds is a 10-digit integer (until November 2286), while a millisecond timestamp is 13 digits. JavaScript's Date.now() returns milliseconds. Most Unix command-line tools and Python's time.time() return seconds. To convert between them, multiply seconds by 1000 or divide milliseconds by 1000 and floor the result.
What is the Year 2038 problem?
Systems that store Unix timestamps as a signed 32-bit integer will overflow on January 19, 2038 at 03:14:07 UTC. The maximum value a signed 32-bit integer can hold is 2,147,483,647 seconds past the epoch. After that, the value wraps to a negative number, which the system interprets as a date in December 1901. Modern 64-bit systems use 64-bit integers and are not affected.
How do I convert a Unix timestamp to a date in JavaScript?
Create a new Date object by passing the timestamp multiplied by 1000 (since JavaScript uses milliseconds): new Date(1711324800 * 1000). Then call .toISOString(), .toUTCString(), or .toLocaleString() to get the format you need. For the reverse direction, use Math.floor(new Date('2024-03-25').getTime() / 1000).
Can Unix timestamps represent dates before 1970?
Yes. Dates before the Unix epoch (January 1, 1970) are represented as negative integers. For example, December 31, 1969 at 23:59:59 UTC is timestamp -1. Most modern programming languages handle negative timestamps correctly, though some older systems and databases may not support them.
Why do APIs use Unix timestamps instead of date strings?
Unix timestamps are timezone-independent, compact (a single integer vs. a 25+ character string), and trivially comparable. Sorting, comparing, and computing durations with integers is faster than parsing date strings. They also avoid ambiguity from locale-dependent formats like MM/DD/YYYY vs. DD/MM/YYYY.
How do I get the current Unix timestamp from the command line?
On Linux and macOS, run date +%s to print the current timestamp in seconds. On Windows with PowerShell, use [DateTimeOffset]::UtcNow.ToUnixTimeSeconds(). Both return the integer number of seconds since the Unix epoch. For millisecond precision on Linux, use date +%s%3N to append the millisecond component directly.
What is the difference between UTC and GMT in timestamps?
For practical purposes in computing, UTC and GMT refer to the same time. UTC (Coordinated Universal Time) is the modern standard defined by atomic clocks, while GMT (Greenwich Mean Time) is the older astronomical standard. Unix timestamps are always based on UTC. You may see both labels in formatted date strings, but the underlying value is identical.