9.1 · Advanced

Pseudorange, Carrier Phase, and Doppler: The Three GNSS Observables

Introduction

GNSS receivers produce three distinct types of measurements called observables from each tracked satellite signal. These are the pseudorange, the carrier phase, and the Doppler shift. Each observable has different characteristics: different precision, different ambiguities, and different uses. Understanding all three is essential for anyone working with precision GNSS or analysing raw receiver output.

Pseudorange: Code-Based Distance Measurement

The pseudorange is the most fundamental GNSS observable. It is the apparent distance between the satellite and the receiver, derived by measuring the time delay between the transmitted and locally-replicated Pseudo-Random Noise (PRN) code. The receiver generates an exact copy of the expected PRN code and slides it in time until it aligns with the received signal - the shift required is the code travel time, which, multiplied by the speed of light, gives the pseudorange.

The measurement is called a pseudorange because it is not a true geometric distance. It contains the receiver clock offset (which may be nanoseconds to microseconds from GPS system time), satellite clock error, atmospheric delays (ionospheric and tropospheric), and hardware biases. The receiver clock offset is solved as a fourth unknown alongside the three position unknowns, which is why a minimum of four satellites is required for a 3D position fix.

Key Concept: Pseudorange precision is limited by the chip length of the PRN code. GPS L1 C/A code has a chip length of approximately 293 metres. Receivers track the code to about 1% of a chip, giving a theoretical noise floor near 1–3 metres for the code-phase measurement. Modern signal processing reduces this to 20–50 cm under ideal conditions.
ObservableMeasurement BasisPrecisionPrimary Use
PseudorangeCode phase delay0.1 – 3 mSingle-point position, DGNSS
Carrier PhaseCarrier wave phase1 – 5 mmRTK, PPP, geodesy
DopplerCarrier frequency shift1 – 5 cm/s velocityVelocity, cycle slip detection

Carrier Phase: Precise but Ambiguous

The carrier phase observable measures the phase of the carrier wave itself - the radio wave at approximately 1575 MHz for GPS L1 - rather than the PRN code modulated onto it. Because the carrier wavelength is approximately 19 cm (GPS L1), tracking phase to a fraction of a cycle yields sub-centimetre precision. This is the foundation of RTK, PPP, and all high-precision GNSS techniques.

The fundamental challenge is the integer ambiguity. When the receiver begins tracking a satellite, it can measure the fractional part of the phase cycle accurately, but it does not know how many complete cycles lie between the satellite and the antenna - the integer ambiguity N. This ambiguity is constant as long as the receiver maintains continuous lock on the signal. If lock is broken by a cycle slip, N must be re-estimated. Resolving N to its correct integer value - ambiguity resolution - transforms the carrier phase from a floating-point measurement into a measurement anchored to the true integer count, enabling centimetre positioning.

Note: Carrier phase is approximately 100 times more precise than pseudorange, but the integer ambiguity must be resolved before this precision is realised. A float (unresolved) ambiguity degrades performance to decimetre level or worse.

Doppler: Velocity and More

The Doppler observable measures the rate of change of the carrier phase - in other words, the frequency shift of the received signal caused by the relative motion between the satellite and receiver. The satellite's orbital velocity combined with the receiver's own velocity causes each satellite's signal to arrive slightly shifted in frequency relative to the nominal carrier frequency.

The receiver's Frequency Lock Loop (FLL) or Phase Lock Loop (PLL) tracks this Doppler shift continuously. From the Doppler measurements across all tracked satellites, the receiver can compute its velocity vector with precision of 1–5 cm/s - independently of and more directly than differencing sequential position solutions.

Beyond velocity, Doppler measurements serve two additional purposes. First, they are used in signal acquisition to search the expected Doppler range when acquiring new satellites. Second, they are used in cycle slip detection: if the integrated Doppler disagrees with the carrier phase difference between two epochs, a cycle slip has likely occurred.

Code vs Carrier: When to Use Each

  • Single-point navigation uses pseudorange only - no ambiguity resolution needed.
  • DGNSS (differential code) uses differenced pseudoranges between base and rover - decimetre accuracy.
  • RTK uses differenced carrier phase after integer ambiguity resolution - centimetre accuracy.
  • PPP uses undifferenced carrier phase with precise satellite products - centimetre accuracy after convergence.
  • Velocity computation uses Doppler or time-differenced carrier phase.
Key Concept: High-precision receivers use all three observables simultaneously. Pseudorange seeds the initial position and helps resolve ambiguities; carrier phase delivers the precision; Doppler provides velocity and cycle slip detection. Each observable plays a role in the complete measurement pipeline.

Vital Points

  • Pseudorange is derived from code-phase tracking and gives metre-level accuracy - sufficient for single-point navigation.
  • Carrier phase is far more precise but contains an unknown integer ambiguity that must be resolved for centimetre accuracy.
  • Doppler measures velocity directly and assists in cycle slip detection.
  • High-precision positioning depends on using all three observables together - no single observable is sufficient alone.