GNSS receivers — from metres to centimetres

All GNSS receivers solve the same equations; they differ in how many frequencies and constellations they track, what corrections they can apply, how gracefully they degrade under interference, and what they give you for tight coupling with an IMU.

Accuracy modes

ModeAccuracyNeedsConvergence
Single-frequency SPS3–5 mnothinginstant
SBAS (WAAS/EGNOS)1–2 mgeostationary correction signalinstant
Dual-frequency1–2 mL1+L5 capable receiverinstant (removes most ionosphere)
RTK1–2 cmbase station / network within ~20 km, data linkseconds once "fixed"
PPP2–10 cmprecise orbit/clock stream (often subscription)minutes to converge

Dual-frequency matters even without corrections because the ionospheric delay is dispersive: measuring at two frequencies lets you form a combination that cancels most of it. It is usually the single best accuracy-per-dollar upgrade.

What to look for beyond accuracy

  • Carrier-phase output and raw observables — mandatory if you want to do your own RTK/PPP or tightly-coupled GNSS/INS rather than consuming a filtered position.
  • PPS output and time-tag quality. A hardware pulse-per-second is what lets you align GNSS with IMU samples to microseconds; without it, latency becomes an unmodelled bias.
  • Update rate. 1 Hz is fine for a filter's aiding; 10–20 Hz helps dynamic platforms.
  • Multi-constellation (GPS + Galileo + GLONASS + BeiDou) — mostly about availability and geometry in obstructed environments, i.e. improving GDOP.
  • Interference resilience: spectrum monitoring, adaptive notch filters, and reporting of jamming and spoofing indicators. For a real threat model use a CRPA (controlled-reception-pattern antenna).
  • The antenna is half the system. A survey-grade antenna with a good ground plane and stable phase centre matters as much as the receiver; for RTK you must know the phase-centre offset.
Do not treat the receiver's position output as truth. It is already the product of an internal filter with its own assumptions. For tight coupling, consume pseudoranges and carrier phase so your filter can weight and gate each satellite — and reject spoofs — itself.

Why the extra satellite exists

The receiver clock bias is common to every measurement, which is precisely what makes it separable — and why you need one more satellite than you have position unknowns. Turn "solve for δt" off below and watch the circles stop agreeing:

And geometry, not signal strength, is what usually limits the fix:

Representative receivers

ReceiverClassNotes
u-blox NEO-M9Nconsumer, single-freqcheap, ubiquitous, 2–3 m class
u-blox ZED-F9Pdual-freq RTKcm-level at low cost; the hobby/robotics standard
Septentrio mosaic-X5multi-band, anti-jamstrong interference monitoring & mitigation
NovAtel OEM7 seriesprofessional GNSS/INSintegrated INS options, well-documented raw output
Trimble BD9xxsurvey gradereference-quality, long track record
Hemisphere / Tersus boardsmid-range RTKgood price/performance for UAV mapping

Related: GNSS theory · what to do when it is denied · back to Hardware.