What Is Unix Time?
Unix time (also called POSIX time or epoch time) is a system for tracking time as a single number: the count of seconds that have elapsed since January 1, 1970, at 00:00:00 UTC. This moment is known as the Unix epoch. For example, the timestamp 1738886400 represents February 7, 2025, at midnight UTC.
Unix timestamps are used extensively in programming because they are timezone-agnostic, easy to store (a single integer), and simple to compare. Two timestamps can be subtracted to find the duration between them, and sorting by timestamp is just sorting numbers. Databases, log files, APIs, and operating systems all rely on epoch time internally.
The Epoch: January 1, 1970
The choice of January 1, 1970, as the epoch was a practical decision made by early Unix engineers. It was recent enough that most computing timestamps would be positive numbers, but far enough back to cover a reasonable historical range. Timestamps before the epoch are represented as negative numbers — for example, -86400 is December 31, 1969.
Seconds vs Milliseconds
One of the most common sources of confusion is the difference between seconds and milliseconds. Traditional Unix timestamps are in seconds (10 digits), but JavaScript and many modern APIs use milliseconds (13 digits):
// Seconds (10 digits) — used by Unix, Python, PHP, Ruby
1738886400
// Milliseconds (13 digits) — used by JavaScript, Java
1738886400000
// Converting between them:
milliseconds = seconds * 1000
seconds = Math.floor(milliseconds / 1000)If you pass a seconds timestamp to a function expecting milliseconds (or vice versa), you will get wildly incorrect dates — often showing dates in 1970 or far in the future. The PulpMiner converter automatically detects whether your input is in seconds or milliseconds.
How to Use the Timestamp Converter
The Timestamp Converter supports bidirectional conversion:
- Enter a Unix timestamp (seconds or milliseconds) to see the corresponding human-readable date in multiple formats including ISO 8601, UTC, and your local timezone.
- Pick a date and time to get the corresponding Unix timestamp in both seconds and milliseconds.
- See the current timestamp — the tool displays the current Unix time updating in real time.
Common Timestamp Formats
Different systems represent timestamps in different formats. Here are the ones you will encounter most frequently:
// Unix timestamp (seconds)
1738886400
// ISO 8601
2025-02-07T00:00:00.000Z
// RFC 2822
Fri, 07 Feb 2025 00:00:00 +0000
// Human readable
February 7, 2025 12:00:00 AM UTCWorking with Timestamps in Code
Every major programming language has built-in timestamp support:
// JavaScript — milliseconds
const now = Date.now(); // 1738886400000
const date = new Date(1738886400000); // Date object
// Python — seconds
import time
now = int(time.time()) # 1738886400
// PHP — seconds
$now = time(); // 1738886400The Year 2038 Problem
Systems that store Unix timestamps as 32-bit signed integers will overflow on January 19, 2038, at 03:14:07 UTC. At that moment the maximum value of 2,147,483,647 is exceeded, and the timestamp wraps to a negative number — interpreted as December 13, 1901. Modern 64-bit systems are not affected, but legacy embedded systems, databases, and older software may be vulnerable. This is why many systems have already migrated to 64-bit timestamps, which will not overflow for another 292 billion years.
Timezone Considerations
Unix timestamps are always in UTC. When you convert a timestamp to a local date, your timezone offset is applied. This means the same timestamp can display as different wall-clock times depending on where you are. Always store and transmit timestamps in UTC, and convert to local time only for display. The PulpMiner converter shows both UTC and your local timezone for every conversion.
Need to convert a timestamp right now? Try the Timestamp Converter — free and instant.
