geoprimsField-grade geospatial math

GPS week and seconds to UTC

The time for a week and seconds of week, including 10-bit weeks with their rollover era.

Go the other way: UTC to GPS week and seconds →

IERS Bulletin C (leap seconds) Bulletin C 72 runs out on 2027-06-30. Sources

2026-09-18T00:00:00Z

That is 2026-09-18T00:00:00Z.

GPS week
GPS − UTC
Provenance
Computed by
time.scale.gps-to-utc 1.0.0, core 0.1.0
Model
UTC = GPS time − (TAI − UTC − 19 s); full week = 10-bit week + 1,024 × era
Accuracy
Exact for dates the leap-second table covers; instants inside a leap second print as 23:59:60
Reference data
version IERS Bulletin C 72 (2026-07-06) of a reference dataset
Notes
None
Cites
U.S. Space Force, Space Systems Command, IS-GPS-200N, NAVSTAR GPS Space Segment/Navigation User Segment Interfaces; International Earth Rotation and Reference Systems Service, IERS Bulletin C 72

Something look off?

Your values

Showing an example. Change anything.
Run many at once from a CSV

Loading…

How we got thisFormula, worked example, sources, and proof

Model: UTC = GPS time − (TAI − UTC − 19 s); full week = 10-bit week + 1,024 × era

Accuracy: Exact for dates the leap-second table covers; instants inside a leap second print as 23:59:60

When to use this: Use this to turn a GPS week and seconds of week back into a UTC instant: a timestamp out of a RINEX file, an almanac, a receiver log or a navigation message. Give a full week on its own, or a 10-bit week together with the era it came from.

Limitations: A week below 1,024 is ambiguous -- it could be a 10-bit week from 1980, 1999 or 2019 -- and is refused without an era rather than guessed at; a full week of 1,024 or more is refused *with* one, since that would double-count. GPS − UTC comes from a published leap-second table, so an instant past the embedded table's expiry could move by a second, and the result says so. An instant inside an inserted leap second prints as 23:59:60, which is a real UTC time and not an overflow.

Worked example: Week 2436, second 432018. Source: Inverse of the add-practitioner-essentials GPS week scenario. It is golden test vector v001, and every build checks the tool still gives its answer within its tolerance.

You enter

Seconds of week
432018
GPS week
2436

You get

UTC
2026-09-18T00:00:00Z
GPS week
2436
GPS − UTC
18 s

Review: Not yet independently reviewed by a geodesist.

Last verified: 2026-09-18, when a maintainer last confirmed this tool's sources at the issuer. See the sources ledger.

Status: version 1.0.0, core 0.1.0. See this tool in the verification report.

Checked against: 22 golden test vectors (download the test vectors, each with its source and tolerance). See how results are checked and every source.

Sources

Terms

GPS: Global Positioning System
The US satellite navigation system. Its time scale runs a fixed number of seconds ahead of UTC (18 s since 2017) because it never adds leap seconds. Source: IS-GPS-200 GPS interface specification
UTC: Coordinated Universal Time
The world's civil time standard, kept within 0.9 s of Earth's rotation by leap seconds. Aviation calls it Zulu time, written with a Z. Source: IERS Bulletin C (leap seconds)

GPS — Global Positioning System

The US satellite navigation system. Its time scale runs a fixed number of seconds ahead of UTC (18 s since 2017) because it never adds leap seconds.

Source: IS-GPS-200 GPS interface specification

UTC — Coordinated Universal Time

The world's civil time standard, kept within 0.9 s of Earth's rotation by leap seconds. Aviation calls it Zulu time, written with a Z.

Source: IERS Bulletin C (leap seconds)