GPS Is a Time System First
Most people think of GPS as a positioning system, but it is fundamentally a time distribution system. Position is calculated as a byproduct of time. Each GPS satellite continuously broadcasts a signal that says: "I am satellite #X, and the current time is exactly T." Your receiver computes its position by measuring how long each signal took to arrive from multiple satellites — and that requires knowing the time to nanosecond precision.
The GPS Time Scale
GPS Time is a continuous atomic timescale that does not include leap seconds. It started at 00:00:00 UTC on January 6, 1980, and diverges from UTC by exactly the number of leap seconds that have been added since (currently 18 seconds as of 2024). GPS receivers apply this offset to report UTC to users.
GPS Time = UTC + 18 seconds (as of 2024)
# GPS time: 2024-03-01T14:00:18 (no leap seconds)
# UTC: 2024-03-01T14:00:00
Atomic Clocks in Space
Each of the 31 operational GPS satellites carries 4 atomic clocks — a mix of rubidium and cesium clocks. They are accurate to about 20–30 nanoseconds. Even this tiny error would translate to ~6–9 meters of positioning error (since light travels ~30 cm per nanosecond), which is why ground control stations constantly upload corrections.
Using GPS for Time (Without Navigation)
Many organizations use GPS purely as a time source, not for positioning. A GPS disciplined oscillator (GPSDO) or GPS time server receives the GPS signal, extracts the time, and distributes it via NTP or PTP to local networks:
# A GPS-based NTP Stratum 1 server setup (conceptual)
# 1. GPS receiver antenna (outdoor, clear sky view)
# 2. GPS receiver card (e.g., u-blox, Trimble)
# 3. GPS PPS (pulse per second) signal → feeds ntpd/chrony
# 4. NTP server serves Stratum 1 time to the network
# /etc/ntp.conf example
server 127.127.28.0 prefer # GPS clock driver
fudge 127.127.28.0 refid GPS time1 0.400
Relativistic Corrections
GPS satellites orbit at 20,200 km altitude, moving at 3.87 km/s. Two relativistic effects must be corrected:
- Special relativity: Moving clocks run slow. GPS satellites' clocks run slower by 7.2 µs/day due to orbital velocity.
- General relativity: Clocks in weaker gravity run fast. GPS satellites' clocks run faster by 45.9 µs/day due to weaker gravity at altitude.
- Net effect: +38.4 µs/day — compensated by setting the satellite clocks to tick slightly slower before launch.
GNSS: Beyond GPS
GPS is the US system, but other global navigation satellite systems (GNSS) also provide precise time:
- GLONASS (Russia) — uses GLONASS Time, offset from UTC
- Galileo (EU) — uses Galileo System Time, within 50 ns of UTC
- BeiDou (China) — uses BeiDou Time
Modern timing receivers often use all systems simultaneously for higher accuracy and redundancy.