Reference · free

NTRIP, RTK, and how the corrections actually flow

Why your rover hits a 2 cm fix on a clear day but bounces around when the cellular link stutters — and what to change about the network, mountpoint, or hardware to keep it solid.

01 — The acronym

What NTRIP actually delivers

NTRIP — Networked Transport of RTCM via Internet Protocol — is the cellular transport layer that carries GNSS corrections from a fixed reference (a base station, or a modeled network of bases) to the rover in your hand. The corrections themselves are RTCM data; NTRIP is just the postal service.

Strip away the acronyms and there are three pieces of equipment:

  • Base / CORS. A GNSS receiver on a published coordinate, logging raw observations. State and federal CORS sites do this 24/7.
  • Caster. The internet server that brokers between bases and rovers. The caster publishes a list of mountpoints — each one a stream of corrections tagged to a station or to a virtual reference station modeled at the rover's location.
  • Rover. Your handheld receiver, authenticated as an NTRIP client. It POSTs its NMEA position up to the caster, pulls the chosen mountpoint's RTCM down, and folds the corrections into its on-board RTK engine.
02 — Data flow

From satellites to centimetres

The full path from a satellite signal to the fix on your controller is short on paper and full of latency budgets in practice.

GNSS satellitesL1 / L2 / L5 broadcastBase / CORSlogs raw obsCasterNTRIP server, mountpoint listCellularrover NTRIP clientRoverRTK engine, fixed integer~70 msorbit propagation~100 msbase internet~50 mscaster fan-out~200 msLTE round-tripTotal age of corrections on a good day: 400–600 ms · RTK ambiguity solve degrades past ~2 s

Total round-trip from the satellite's broadcast to your rover's fix sits in the 300–1500 ms window in normal conditions. RTK's ambiguity solve degrades past about 2 seconds of correction age — longer than that and the receiver falls back to a float or DGPS solution, and your reported coordinates start to drift.

12.52537.550cm from true position
0.5 s
0 s2 s5 s
Fixedσ ≈ 1.8 cm

Integer ambiguities solved. Centimetre-grade work.

03 — Networks

Free, paid, and GEODNET

There's no single national network. What's available where you work depends on who runs it — a state DOT, a university consortium, a private vendor, or the decentralized GEODNET token-incentivized mesh. Each type comes with different access, cost, and reliability tradeoffs.

NetworkAccessCoverageLatencyWhen to use
State DOT / CORSFree, account-gatedPatchy — depends on state staffingLow (state-fiber backed)Best when you live in a state that maintains its own network. Check the directory below.
Commercial (eGPS, KeyNet, etc.)$60–$200 / mo per roverRegional, dense base spacingLow, with SLAWhen uptime matters — construction layout, ALTA boundary — pay for the SLA.
GEODNETToken-paid, ~$3/day pricingContinental, growing fastVariable by node densityFills gaps in states without a free network. Plus you can host a base and earn back token.
Interactive directory

Find your state's NTRIP access

Tap any state to reach its RTK / CORS network signup or login portal.

Free state network
Paid network
GEODNET fallback

States without a unified public network link to GEODNET, a nationwide RTK service. Links independently verified — if you find a broken one, let us know.

04 — Mountpoints

VRS, MAX, i-MAX, and nearest base

Once you're connected to a caster, the mountpoint name decides which math the network runs to build your corrections. The differences look academic on a screen but matter for initialization time and accuracy at distance from the nearest physical base.

MountpointWhat it sendsStrengthsTradeoffs
Nearest single baseStreams RTCM from the physical CORS closest to your locationWithin ~10 km of the base — fastest initializationAccuracy and reliability fall off past ~30 km baseline
VRS (Virtual Reference Station)Network synthesizes a base "at" your location from multiple real basesConsistent accuracy anywhere inside the network polygonRequires the rover to send NMEA GGA up; ~10 s longer to initialize
MAX / i-MAXSends master + auxiliary base data, rover does the network solveStandardized, vendor-agnostic, robust to base outageSlightly more bandwidth, slightly more rover CPU
FKP (Area Correction)Single base plus area-correction parametersLower bandwidth than MAXLess common in U.S. networks; older format
05 — Troubleshooting

When the fix won't hold

  • No fix at all. Check the mountpoint name, the NTRIP username / password, and that the rover is sending an NMEA GGA up to the caster. Most VRS networks will silently refuse to stream until they see a position.
  • Floats only. Sky obstruction or correction age. Walk to clear sky and watch the age-of-corrections value — if it's climbing past 5 seconds, the cellular path is failing, not the sky.
  • Fix that drifts after minutes. Multipath. Move 2 metres laterally; the new geometry should re-solve. If it does, the original position was being reflected off a building or a vehicle.
  • One satellite constellation only. Some older networks broadcast GPS-only corrections via MSG 1004; switch the rover and the mountpoint to a multi-constellation stream (MSG 1077 / 1087 / 1097 / 1127) to pull in GLONASS, Galileo, and BeiDou.
Test yourself

How well did it stick?

A quick 5-question check on NTRIP & RTK Corrections. See where you stand and what to review.

Go deeper

Hands-on RTK setup walkthroughs

Inside The Survey School community, members share configurations for every major rover — Carlson BRx7, Emlid RS3, Trimble R12i, Topcon Hiper VR — against every CORS network we've walked through. Real settings, real working profiles.