NTP Timestamp to Unix Timestamp Converter

Convert an NTP timestamp — seconds since January 1, 1900 UTC — to a Unix timestamp, ISO 8601, and a readable date. Covers the NTP epoch, eras, and why a fixed offset is not always enough.

What is an NTP timestamp?

The Network Time Protocol counts time from January 1, 1900 00:00:00 UTC. The classic 64-bit NTP timestamp splits into a 32-bit count of seconds and a 32-bit fraction of a second. This converter works with the integer seconds field (the most common value you need to convert).

  • Epoch: 1900-01-01 00:00:00 UTC
  • Format: 32-bit seconds + 32-bit fractional seconds (≈ 233 picosecond resolution)
  • A present-day value is around 3.9 × 10^9
  • Seen in: NTP/SNTP packets, RADIUS, some logging and telemetry formats

How to convert NTP to a Unix timestamp

There are 2,208,988,800 seconds between 1900 and 1970. Subtract that constant from the NTP seconds field to get Unix seconds.

  • Unix seconds = NTP − 2208988800
  • Example: 3908988800 → 1700000000 → 2023-11-14 22:13:20 UTC
  • Reverse: NTP = Unix seconds + 2208988800
  • The 32-bit fraction field ÷ 2^32 gives the sub-second part

NTP eras and the 2036 rollover

A 32-bit seconds field overflows roughly every 136 years. The first NTP era ends on February 7, 2036, after which the seconds counter wraps to zero and an “era number” must be tracked separately. Blindly subtracting 2,208,988,800 only works within era 0; for timestamps after the 2036 rollover you must add 2^32 seconds per era. For today’s dates the simple subtraction is correct.

  • Era 0 covers 1900 through 2036-02-07
  • After the rollover, add 4294967296 × eraNumber before subtracting the offset
  • NTP timestamps are UTC and do not encode leap seconds in the seconds field
What is the NTP epoch?
NTP counts seconds from January 1, 1900 00:00:00 UTC.
How do I convert NTP time to Unix time?
Subtract 2,208,988,800 seconds from the NTP seconds value to get a Unix timestamp.
What happens to NTP in 2036?
The 32-bit seconds counter overflows on February 7, 2036 and wraps to zero, starting NTP era 1. Converters must track the era number to interpret later timestamps correctly.

Related timestamp format converters