Unix Timestamp Converter
100% private — runs on your device, never uploaded. Works offline once loaded.
Convert Unix epoch timestamps (seconds or milliseconds) to readable dates in UTC and local time, or pick a date to get its timestamp. Everything runs locally in your browser.
What a Unix timestamp actually counts
A Unix timestamp (also called epoch time) is simply the number of seconds that have elapsed since 00:00:00 UTC on January 1, 1970 — the arbitrary reference point Unix engineers picked in the early 1970s. It's a single integer with no built-in timezone, no calendar, and no notion of leap years baked into it; all of that is calculated on the fly when the number gets turned back into a human date. That's exactly what this tool does in reverse: it takes the raw integer and works out the year, month, day, hour, minute, and second in both UTC and your browser's local timezone.
Older 32-bit systems store this number as a signed integer, which tops out at 2,147,483,647 — the moment that counter overflows, on January 19, 2038, is the well-known "Year 2038 problem" that still affects some embedded devices and legacy databases.
Seconds, milliseconds, or something else entirely
Different languages and platforms don't agree on the unit. PHP's time() and most SQL databases return whole seconds; JavaScript's Date.now() and most browser APIs return milliseconds; some logging systems (and Twitter's old snowflake IDs) go down to microseconds or nanoseconds. Mixing these up is one of the most common bugs in backend code — a millisecond value fed into a seconds-based date function lands you somewhere around the year 48000, or a seconds value fed into a milliseconds parser collapses to 1970.
This converter auto-detects the scale: anything above roughly 1 trillion is treated as milliseconds rather than seconds, so you can paste either kind without manually converting first.
Where you'll actually run into raw timestamps
Timestamps show up constantly in places meant for machines, not people: JWT iat/exp claims, database created_at columns stored as integers, server access logs, Stripe and AWS API responses, and cache expiry values in Redis. When you're debugging why a token expired early or why two log lines that should be simultaneous are 5 hours apart, converting the raw number to a readable date — in both UTC and your own timezone — is usually the fastest way to spot the problem.
A quick sanity-check habit
When debugging timezone-related bugs, always check the UTC value first, not just your local one — most backend systems store and compare timestamps in UTC, and a bug that looks like "the date is wrong" is very often just a timezone offset being applied twice (once on the server, once in the browser).
Frequently asked questions
Seconds or milliseconds?
Both are supported — values above 1 trillion are treated as milliseconds.
Is anything sent to a server?
No — conversion happens on your device.
What does a negative timestamp mean?
It represents a date before January 1, 1970 — for example, -86400 is December 31, 1969. Negative values are valid and this tool handles them correctly, though some older systems reject them.
Why did my millisecond timestamp show a date in 1970?
You likely pasted a seconds-based timestamp into a tool expecting milliseconds (or vice versa). This converter auto-detects the unit based on magnitude, but manual code often doesn't — always confirm which unit an API documents before parsing its timestamps.
Does this account for leap seconds?
No — Unix time by definition ignores leap seconds, repeating or skipping a second when one is inserted. This is standard behavior across virtually every system that uses epoch time, not a limitation specific to this tool.
Why does the same timestamp show different times for me and a colleague?
The UTC value is identical for both of you; only the 'local time' column differs, because it's rendered using each browser's own timezone setting.
What happens after the Year 2038 problem?
Systems still using signed 32-bit integers for time storage will overflow and wrap around to a negative number around 1901. Modern 64-bit systems, including this tool, aren't affected — the practical risk is mostly in older embedded firmware and some legacy databases.
Is anything sent to a server when I convert a timestamp?
No — the math is plain JavaScript date arithmetic that runs entirely in your browser tab, so nothing you type ever leaves your device.
Advertisement