# Unix Timestamp Converter: How to Convert Epoch to Date (2026)

URL: https://pdfflare.com/blog/how-to-convert-unix-timestamp-to-date
Published: May 7, 2026
Reading time: 8 min read

> Unix timestamp converter — convert Unix epoch ↔ date, ISO 8601, RFC 2822, local time. Auto-detects seconds vs milliseconds. Free, browser-based.

---

You opened a JSON response from an API and saw `"created_at": 1714944000`. Or maybe `1714944000000`. You need to know what date that is, fast. A Unix timestamp converter is the right tool — every modern OS, browser, and language has one built in, but doing it in your browser without firing up a terminal takes about three seconds.

In this guide you'll learn how to convert a Unix timestamp to a date using [PDFFlare's Unix timestamp converter](https://pdfflare.com/tools/dev/timestamp-converter) — auto-detects whether your input is seconds or milliseconds, outputs ISO 8601 / RFC 2822 / local time in any of 23 timezones simultaneously, and includes bulk mode for converting lists. Plus the seconds vs milliseconds gotcha that trips up everyone, and the Y2038 problem that's closer than you think.

## What Is a Unix Timestamp?

A Unix timestamp (also called epoch time, POSIX time, or Unix time) is the number of seconds elapsed since 1970-01-01T00:00:00Z (UTC). January 1, 1970 is the “Unix epoch.” The current Unix timestamp as of this writing is around 1,747,000,000 — a 10-digit integer. JavaScript's `Date.now()` returns the same epoch but in MILLISECONDS — a 13-digit integer.

- **Unix seconds:** 10-digit integer. Used by most APIs (Stripe, Twilio, AWS, GitHub), Linux file timestamps, JWT iat/exp claims.
- **Unix milliseconds:** 13-digit integer. Used by JavaScript, JSON in many SDKs, mobile platforms.
- **Unix microseconds:** 16-digit integer. Rare, but appears in some logging systems and high-precision databases.
- **Unix nanoseconds:**19-digit integer. Used by Go's `time.UnixNano()` and some financial systems.

## Why Use a Unix Timestamp Converter Instead of CLI Tools?

A browser-based Unix timestamp converter wins over CLI tools (`date -d`, `[DateTime]`, Python `datetime.fromtimestamp`) in three situations: (1) when you're on a phone or kiosk without shell access; (2) when you need multiple formats simultaneously without re-running commands; (3) when you want to share the conversion result with a teammate via URL or screenshot. PDFFlare's timestamp converter shows six output formats from one paste — Unix seconds, milliseconds, ISO 8601 UTC, ISO with TZ offset, RFC 2822, local time, plus relative time. As an iso 8601 converter for API debugging, a unix time converter for log analysis, or an epoch converter when reading Linux file timestamps — same tool, different angle.

## How to Convert Unix Timestamp to Date (Step by Step)

1. **Open the timestamp converter.** Visit [/tools/dev/timestamp-converter](https://pdfflare.com/tools/dev/timestamp-converter).
2. **Paste the Unix timestamp.** Either a 10-digit seconds value or a 13-digit milliseconds value. PDFFlare auto-detects which one you pasted by counting digits. Forced override available if you have a non-standard length.
3. **Read the converted formats.**Six output rows appear: Unix seconds, Unix milliseconds, ISO 8601 UTC, ISO 8601 with timezone offset, RFC 2822, local time, and a relative time (“3 days ago,” “in 2 hours”).
4. **Switch timezones if needed.** The Timezone dropdown covers UTC + all US timezones + major European and Asian financial centers. Your selection persists across reload.
5. **Copy the format you need.** Each row has a Copy button. Or use Copy all to get all six formats newline-separated.

## Format-Specific Conversion Tips

### How to convert Unix milliseconds to date

Paste the 13-digit value (e.g., `1714944000000`). The auto-detect recognizes it as milliseconds and converts. Or set Input format to _Unix milliseconds_ to force it. Common source: `Date.now()` in JavaScript, JSON timestamps in REST APIs, mobile platform event logs. The output Unix seconds row gives you the equivalent 10-digit value when you need it.

### How to convert Unix seconds to ISO 8601

Paste the 10-digit value and look at the ISO 8601 (UTC) row. The output is `2026-05-05T00:00:00.000Z`— sortable alphabetically, parseable by every modern language, and the canonical format for JSON timestamps. The ISO 8601 (timezone) row gives you the same date with your selected timezone's offset (e.g., `2026-05-04T17:00:00-07:00` for America/Los_Angeles).

### How to convert epoch to date in a specific timezone

Switch the Timezone dropdown to your target region. The Local time output flips immediately — same epoch, formatted for the new TZ. Useful when you're in one timezone but debugging logs from a server in another. PDFFlare uses the browser's native `Intl.DateTimeFormat` which gives identical output to what your runtime (Node, Python, JVM) would produce for the same TZ.

### How to convert ISO 8601 back to Unix timestamp

The converter is bidirectional. Paste an ISO 8601 string (with or without milliseconds, with or without timezone offset) and get the matching Unix seconds and milliseconds out. Useful when you have a human-readable timestamp from a log file and need to feed it back into an API that expects epoch input.

## The Seconds-vs-Milliseconds Gotcha

The single most common timestamp bug: accidentally treating milliseconds as seconds, or vice versa. The dates are 1000× off. A 1714944000 (seconds) is May 5 2024; the same value treated as milliseconds is January 20 1970 — 14 days after the epoch. Symptoms:

- JWT tokens that “expired in 1970” — your code passed milliseconds where the JWT library expected seconds for the `exp` claim.
- API responses showing “the future” when you pass a current epoch — your code passed seconds where the API expected milliseconds.
- Database queries returning empty for date ranges that should have results — same root cause, mixed units.

PDFFlare's auto-detect catches this when you paste the value: it tells you in the Detected line whether it read the input as seconds or milliseconds. If the detection is wrong (rare — only happens for very early dates near the epoch), the manual override forces the right interpretation.

## The Y2038 Problem

Unix timestamps stored as signed 32-bit integers overflow at `2147483647` — which is 2038-01-19T03:14:07Z. After that second, int32 wraps to a negative number and the timestamp interprets as a date in 1901. This is the Y2038 problem (also called Y2K38 or the Unix Millennium Bug).

Modern systems use 64-bit integers and won't overflow until year 292 billion — but legacy code in C/C++ codebases, embedded systems, and older databases still uses int32 in places. PDFFlare's Y2038 preset jumps directly to `2147483647` so you can verify how your code handles the boundary. Test your stack with the second BEFORE (`2147483646`) and AFTER overflow (`2147483648`) to confirm it stores values correctly.

## Common Mistakes

- **Forgetting the timezone matters.** A Unix timestamp is always UTC; the “date” you see depends on which timezone you display it in. 1714944000 is May 4 in California, May 5 in UTC, May 5 evening in Tokyo. PDFFlare shows both UTC and your selected TZ to avoid this confusion.
- **Pasting just a date without a time.** `2026-05-07` alone parses as midnight UTC by most tools, but some treat it as midnight in the local TZ. For unambiguous results, always include time + timezone: `2026-05-07T14:00:00Z`.
- **Trusting `Date.parse()` with arbitrary strings.** JavaScript's `Date.parse` is notoriously inconsistent across browsers for non-ISO input. PDFFlare uses ISO and RFC 2822 parsing where possible and falls back to `Date`only when those don't match — but for arbitrary user input, paste exact ISO 8601 for predictable results.
- **Manual epoch math.**Don't try to compute “X days ago” or “hours until expiration” by subtracting epoch values and dividing — daylight saving boundaries and leap seconds make it wrong. The Relative output line handles this for you.

## Privacy: Convert Locally

PDFFlare's timestamp converter runs entirely in your browser via the native `Date` and `Intl`APIs. No server is involved, no timestamps are uploaded, no logs are kept. Open DevTools → Network and you'll see zero requests while you type, click presets, or switch timezones. This makes it safe for converting timestamps from internal log files, security audit data, or any context where you don't want a third party to see what you're looking at.

## Related Tools

- [Timestamp Converter](https://pdfflare.com/tools/dev/timestamp-converter) — the protagonist of this guide. Unix seconds / milliseconds ↔ ISO 8601 / RFC 2822 / local time in 23 timezones.
- [JWT Decoder](https://pdfflare.com/tools/dev/jwt-decoder) — JWT iat/exp/nbf claims are Unix seconds. Decode a token then convert the timestamp claims to confirm validity.
- [UUID Generator](https://pdfflare.com/tools/dev/uuid-generator) — UUID v7 embeds a 48-bit Unix millisecond timestamp. Pair the two when debugging UUID v7 ordering.
- [HMAC Generator](https://pdfflare.com/tools/dev/hmac-generator) — webhook signatures often prefix the Unix timestamp before the body (Stripe, Slack). Convert the timestamp first, then sign.

## Wrapping Up

Convert Unix timestamp to date in three seconds with PDFFlare's [Unix timestamp converter](https://pdfflare.com/tools/dev/timestamp-converter) — paste, auto-detect, read all six formats. Use it as an epoch converter, an iso 8601 converter, a unix time converter, or simply a tool to convert timestamp online when you need a one-shot answer. Bulk mode for lists, 23 timezones, useful presets (Y2K, Y2038, Unix epoch), and a live “Right now” block that updates every second. Free, browser-based, no upload.

---

## Frequently asked questions

**Q: How do I convert a Unix timestamp to a date online?**

A: Paste the Unix timestamp into PDFFlare's Unix timestamp converter — the tool auto-detects whether it's seconds (10 digits) or milliseconds (13 digits) and outputs ISO 8601, RFC 2822, and local time in your selected timezone simultaneously. The Now button inserts the current epoch as a reference, and the Y2038 preset jumps to the int32 overflow date so you can test boundary handling. Conversion runs in your browser via native Date and Intl APIs.

**Q: How do I tell if a Unix timestamp is in seconds or milliseconds?**

A: Count the digits. A 10-digit value (e.g., 1714944000) is Unix seconds — represents dates from year 2001 to 2286. A 13-digit value (1714944000000) is Unix milliseconds — used by JavaScript's Date.now() and most JSON APIs. PDFFlare auto-detects by digit count, but if you have an ambiguous value (e.g., 1234567890 which is valid in both), set the Input format dropdown to force one or the other.

**Q: What's the Y2038 problem?**

A: On 2038-01-19T03:14:07Z, the Unix timestamp value 2147483647 will overflow signed 32-bit integers. Code that stores Unix timestamps as int32 (still common in legacy C/C++ codebases and embedded systems) will start producing wrong dates after that second. PDFFlare's Y2038 preset jumps directly to that timestamp so you can verify how your code handles the boundary. Modern systems use 64-bit time values which extend the safe range to year 292 billion.

**Q: Can I convert timestamps in bulk?**

A: Yes — toggle Bulk mode in PDFFlare's timestamp converter, paste a list of timestamps (one per line), and the tool produces a table with Unix seconds, ISO 8601 UTC, and local-time columns. Mix-and-match formats are fine — auto-detect runs per line, so you can paste a list with some Unix seconds, some ISO strings, and some RFC 2822 dates and they all convert correctly. Useful for log file analysis or auditing webhook delivery times.

**Q: Does the timestamp converter respect daylight saving time?**

A: Yes — PDFFlare uses the browser's native Intl.DateTimeFormat for timezone conversion, which handles DST transitions correctly for every IANA timezone. A Unix timestamp on November 5 2026 in America/New_York shows EST (UTC-5); the same epoch on May 5 2026 shows EDT (UTC-4). The Relative output also accounts for DST when computing 'X hours ago'.

---

## About PDFFlare

PDFFlare is a free collection of online tools for working with PDFs, images, text, JSON, and developer utilities. All tools run client-side in your browser — no signup, no upload to our servers, no rate limits.

For the full site index, see https://pdfflare.com/llms.txt.
For the complete content dump in one file, see https://pdfflare.com/llms-full.txt.