Convert Unix timestamps to human-readable dates and vice versa. Supports both second-level and millisecond-level timestamps.
A Unix timestamp (also known as Epoch time) is the number of seconds that have elapsed since January 1, 1970 (midnight UTC/GMT). It is widely used in programming, databases, and APIs because it provides a simple, timezone-independent way to represent a point in time.
Some systems and programming languages (such as JavaScript) use milliseconds instead of seconds. This tool automatically detects which format your input uses.
Example 1 — Current time.
Input: 1699999999 (seconds) Output: 2023-11-15 03:33:19 UTC
Example 2 — JavaScript output. JavaScript's Date.now() returns milliseconds, which is roughly a thousand times larger:
Input: 1699999999000 (milliseconds) Output: 2023-11-15 03:33:19 UTC
Example 3 — A known date. The start of the Unix epoch itself is timestamp 0:
Input: 0 Output: 1970-01-01 00:00:00 UTC
How do I know if my timestamp is in seconds or milliseconds?
As a rule of thumb, timestamps before roughly 2001 have 10 digits (seconds) or 13 digits (milliseconds). Values around 1 billion are seconds; values around 1 trillion are milliseconds. This tool detects both automatically.
Why is the displayed time different from my local time?
Unix timestamps are timezone-independent. The converter shows the date in UTC by default. Local conversion is a display choice — the underlying instant is the same everywhere on Earth.
What happens to dates before 1970?
Negative timestamps represent dates before the epoch. This tool handles them correctly, so values like -86400 resolve to 1969-12-31.
What is the maximum representable timestamp?
In many systems, 64-bit timestamps cover dates up to the year 292 billion. JavaScript's number type safely represents milliseconds up to about the year 275,760, which is far beyond any practical use.
Why do some APIs return milliseconds and others seconds?
It depends on the language. JavaScript, C# (ticks aside), and Java use milliseconds, while PHP, Ruby, and most SQL databases use seconds. Always check your API's documentation.
0means “no date” — it actually means 1970-01-01.