Getting centimetre-accurate GPS for free
A practical guide for hobbyists and small teams — no prior GNSS knowledge assumed.
Mountpoint stopped working? Skip to Replacing a dead mountpoint.
What this guide covers
Whether you're recording where a fossil came from, marking individual rare plants for next year's survey, or building a garden robot that needs to follow a path — you don't necessarily need centimetre precision out of vanity, but ±1 m GPS isn't quite good enough either. The free correction networks on the map close that gap.
This guide is about Network RTK: a free, internet-delivered correction stream that turns a compatible GPS receiver from metres-accurate into centimetre-accurate. The protocol used to deliver these corrections is called NTRIP — that's what you'll configure in your receiver and the term you'll see throughout this guide and across the map. The corrections themselves are free; ongoing cost is just the mobile data your receiver uses to fetch them, typically under 5 MB per hour for a multi-constellation stream.
Why standard GPS is only accurate to metres
GPS satellites broadcast precise timing signals. By the time those signals reach your receiver, they have been slowed by the atmosphere, distorted by satellite clock drift, and bounced off nearby surfaces. These errors compound to 5–10 metres under typical conditions. Nothing is wrong with your receiver — that is simply the limit of standalone GPS.
The chip in your receiver is capable of much better. What it lacks is a way to measure those errors in real time. A reference station at a precisely-surveyed fixed point can measure the same errors and broadcast a correction. Your receiver applies the correction and the error largely cancels out.
How RTK works
Two receivers looking at the same sky experience the same atmospheric and satellite errors. The base station — fixed at a known point — measures what those errors are and continuously streams that information to your rover over the internet. Your rover applies the corrections and computes a position accurate to 1–3 cm within about 10 km of the station, and typically better than 5 cm within 30 km.
The public reference stations on the map are permanent installations run by national survey agencies, universities, and cooperatives. You use their correction stream for free; you need only an internet connection and a compatible receiver.
Do you already have compatible hardware?
If you own survey equipment from Trimble, Leica, Topcon, Sokkia, South, Hi-Target or similar brands, look for an Internet RTK, Network RTK, or NTRIP option in the receiver's settings. Most professional receivers made in the past 15 years support it. If the menu exists, you are already equipped — find a nearby station on the map and enter the connection details.
Hardware if you don't have a compatible receiver
Prices below are approximate and vary by region and retailer; last reviewed 2026-04-26. Check manufacturer websites for current local pricing.
| Unit | Approx. price | Notes |
|---|---|---|
| ArduSimple simpleRTK2B Basic Starter Kit | ~€275 | DIY / cheapest path. Receiver board + antenna; needs a separate phone or computer running NTRIP-client software. A few hours' first-time setup. Standard choice if you also plan to build your own base station. |
| ArduSimple RTK Handheld 2 Kit | ~€449 / $490 | Android preferred. Compact, battery included, Bluetooth. (See the iOS / iPad note below the table.) |
| SparkFun RTK Facet | ~$739 | Android preferred. All-in-one rover with built-in antenna. NTRIP client built in; connects via Bluetooth. Open-source firmware. Available from Mouser, Digi-Key, and SparkFun directly. (See the iOS / iPad note below the table.) |
| Bad Elf Flex Mini Extreme | ~$1,499 | Pocketable. MFi-certified for iOS. One-time permanent unlock, no ongoing fees. Works with free NTRIP sources. US brand. |
| Emlid Reach RS3 | ~$2,999 | Current survey-grade flagship. IMU tilt compensation lets you take shots without levelling the pole — a real time-saver for high-volume work. UHF radio. Full iOS support via Emlid Flow. |
| Emlid Reach RS2+ | ~$2,200 | Previous flagship, still sold. No tilt compensation. Used devices are often good value as a budget rover or fixed base station. Full iOS support. |
Emlid (emlid.com) is Estonian; ArduSimple (ardusimple.com) is Spanish; SparkFun (sparkfun.com) is US-based. All three ship globally with extensive documentation and active community forums.
Using the map to find free corrections
Open the map and zoom to your work area. The colour zones around each pin show how far corrections reliably reach:
Green circles are virtual networks (VRS): the network synthesises a virtual reference near your location from multiple real stations. You connect to one server address; the network does the rest. Click a circle for details.
Click any pin to see the server address, port, and mountpoint name you need to configure your NTRIP client. If several stations are within range, any of them will do — pick the nearest one in the green zone. Some networks also offer a NEAR mountpoint that selects the closest station automatically.
Replacing a dead mountpoint
If a previously-working mountpoint stopped responding, do this in order:
- Open the map, zoom to your work area, and pick the nearest physical-station pin in the green or yellow-green zone. Within ~30 km gives cm-RTK; within ~10 km is best.
- If only a national survey network covers your area, register on its portal — these are professionally monitored and far more reliable than volunteer bases. The pin popup links to the registration page.
- If you can't find replacement coverage, the map's Help button → Troubleshooting walks through the less-common causes (firewall, geomagnetic storm, regional jamming, wrong-datum offsets).
Why your old one stopped: volunteer bases on rtk2go and Centipede disappear from the sourcetable the moment they stop streaming, often from a dynamic-IP change or a power outage at the operator's site — around 7% of registered rtk2go bases are live at any one time. Networks occasionally rename hosts (Centipede moved to crtk.net in 2025); the popup always shows the current host:port. For mission-critical work — legal survey, machine control, production agriculture — use a national CORS network or a commercial service with an SLA, not a volunteer mountpoint.
Connecting — step by step
Most survey receivers have an NTRIP client built into their settings menu. For Emlid receivers, use the Emlid Flow app. The typical workflow for standalone receivers: your phone or tablet connects to the receiver via Bluetooth, pulls correction data from the internet, and forwards it to the receiver automatically. For other hardware, free client apps include:
- Android: SW Maps (free, full GIS + NTRIP client in one app) or Lefebure NTRIP Client (lightweight bridge to other apps)
- iOS / iPadOS: Emlid Flow (best if using Emlid hardware); SW Maps also available on iOS
- Windows: Lefebure NTRIP Client — connects via serial or USB
- Linux / Raspberry Pi: RTKBase (open-source, web interface) or RTKLIB
str2str
In whichever client you use, enter three values from the map pin popup:
- Host — the server address
- Port — usually 2101
- Mountpoint — the correction stream name
Most clients will ask you to send your approximate position to the server (an NMEA GGA sentence). Most receivers and clients do this automatically — it lets the server pick the best corrections for your location.
Your antenna must be outdoors with a clear, unobstructed view of the sky — see Antenna placement below for what works and what doesn't.
What success looks like: your client will show the correction stream as connected. On a cold start, your receiver should report a fix within 30–90 seconds (some receivers show this as "RTK Fixed" or a green indicator); a warm restart usually takes 5–15 seconds. Once fixed, position updates will reflect centimetre-level accuracy. If your software shows coordinates jumping around at metre scale, the receiver is still in float — wait another minute or try a different mountpoint.
Connection refused or times out: check the host and port; some networks use a non-standard port listed in the map popup. Corporate, campus, and public WiFi commonly block port 2101 — try a 4G/5G hotspot to confirm whether your network is the problem.
You see a long text listing instead of corrections: your client requested
/ rather than /MOUNTPOINT, so the caster is sending you the sourcetable. Re-enter the connection with the mountpoint name set.Client connects, no error, but no corrections flow for tens of seconds before dropping: the base is offline and the caster is sending keep-alive padding. Pick a different mountpoint.
Connected but stays float: try another mountpoint on the same server. On L1+L2 receivers, expect a fix within ~30 km; if you're further out, float is the correct outcome.
Fix achieved but accuracy is worse than expected: the station is likely at the edge of its reliable range, or multipath from nearby buildings is affecting your antenna. Move the antenna to a clearer location.
Less-common causes — geomagnetic storms, regional GNSS jamming, datum offsets, false fixes — live in the map's Help button → Troubleshooting.
Antenna placement — the cheapest accuracy upgrade
Once your receiver is connected to a correction stream within range, the residual error is dominated by multipath: signals bouncing off nearby surfaces before reaching the antenna. Multipath is hardware-independent — a $3,000 Reach RS3 in the wrong place produces a worse fix than a $300 ArduSimple in the right one. Five things matter, in order:
- Clear sky above ~10° in all directions. Low-elevation satellites are what nail down the integer ambiguities; trees, walls, parked vehicles, and your own body block them. Sky directly above is not enough.
- At least 1 m clearance from metal. HVAC units, parapets, lightning rods, roof flashing, vehicle bodies, neighbouring antennas — they re-radiate signals and feed your antenna delayed duplicates.
- At least 1 m above any flat surface. A roof, a table, a fence rail; below ~1 m the ground itself becomes the dominant reflector. Up to ~3 m helps; beyond that, diminishing returns.
- Rigid mount. Wooden masts flex and thin-wall steel poles vibrate — both feed micro-jitter into the carrier-phase measurement. A scaffold pole bolted to a brick wall, a heavy survey tripod, or a sturdy bipod all work.
Bad placements to recognise: on a flat metal roof; right next to an HVAC unit; under tree canopy; on a wooden flagpole; on a windowsill (the wall blocks half the sky and reflects the rest). If your fix numbers look bad despite a fresh correction stream and a baseline within range, the antenna is almost always why.
In the field with a survey pole: the same rules apply. Hold the pole vertical, well away from metal vehicles and metal fence posts. The antenna does not know you are holding it temporarily — half a second next to a steel post produces the same multipath as a permanent mount there.
Why a coordinate cannot be centimetre accurate
You might think a coordinate is telling you where something is, but it isn't quite that simple. You probably already know that continental plates move centimetres every year, and you probably know that there is a coordinate system anchored relative to Greenwich, England — which is neat if you want centimetre precision near Greenwich.
You might also think there has to be a standard that accounts for inter- and intra-plate movement, and that this is solved by giving a coordinate together with a time. Almost.
There isn't a standard, there are dozens. To describe a centimetre-precision coordinate that holds up over time you need the coordinate, a timestamp, and the standard you are using — which is given as a datum and epoch.
This is where the NTRIP map falls short. Some NTRIP casters (e.g. rtk2go, Centipede outside France) carry mountpoints using different datums and different epochs, and sometimes do not say which. Country-level casters typically publish a spec that lists the datum(s) and epoch(s) they use.
If they don't publish datum and epoch, you have workarounds:
- Record the coordinates of a local reference point — either an official one or an improvised one (e.g. a manhole cover). This is good practice even when you do know the datum and epoch.
- Check again that your caster really doesn't list datum and epoch for its mountpoints — most do.
- Pay for a local caster that does specify datum and epoch.
- Set up your own base station, which has a known datum and epoch because you choose them.
- Skip base stations and use a different technology such as Galileo HAS — lower accuracy, but with a known datum and epoch.
Setting up your own base station
A base station is just a GNSS antenna ($100–200) with a bit of hardware ($200–700), power, and an internet connection. Place the antenna in a good spot and find its exact position by logging a couple of hours (cm) to a couple of days (mm) of data, then running the log through a free PPP service.
Any cheap dual-band RTK receiver will work with a Raspberry Pi running RTKBase, but devices like the simpleRTK3B Pro that come with a complete tutorial and connect directly to a caster, without the need to set up a server in between, are more beginner friendly.
Real-world examples of RTK projects
Hobbyists, citizen scientists, and small volunteer groups already use free network RTK for things like:
- Amateur excavation find recording — metal detectorists and community digs log in-situ 3D positions of finds before backfilling, so each find stays tied to its stratigraphic layer. ±1 m GPS would relocate a coin to the wrong context layer (~5 cm).
- Community dig grid layout — volunteer-run excavations stake 1 m × 1 m grids with RTK instead of tape-and-theodolite; tape errors compound across a 30 m site to the point where adjacent units no longer match (2–5 cm).
- Fossil site recording — palaeontology hobbyists fix each bone or tooth in a surface scatter before collection so the accumulation pattern can be reconstructed. At metre-level GPS, two bones 30 cm apart record at the same point (~5 cm).
- Rock art and petroglyph recording — heritage volunteers stake RTK targets so that photogrammetric 3D models of adjacent panels on a single rock face register to the right place on the site plan (5–10 cm).
- Cave entrance tie-ins — caving clubs fix surface entrances with RTK so that compass-and-tape underground surveys transform into absolute coordinates and overlay correctly with surface topography (10–20 cm).
- Critically endangered plant demography — conservation volunteers mark every individual rosette of a rare species so they can return next season to detect survival, recruitment, and mortality even when the plant is dormant or buried (3–5 cm).
- Invasive-species eradication follow-up — knotweed or Himalayan balsam stems logged this season, re-checked the following season for regrowth within 10 cm of each prior point. At ±1 m, a regrowth shoot is indistinguishable from a recorded stem (10 cm).
- Permanent monitoring plot corners — long-term ecology quadrats (10 m × 10 m peatland or heathland plots) staked so the identical footprint can be relocated in five or ten years by a different team without physical markers (5–10 cm).
- Nest, den, roost logging — raptor platforms, otter holts, bat-roost trees recorded so a future volunteer can walk to the right tree limb in dense woodland (10–20 cm).
- Citizen-science beach erosion profiling — coastal-monitoring volunteers re-walk transect lines monthly or after storms; detecting 20 cm of seasonal accretion needs vertical noise well below 10 cm (5 cm H, 3–5 cm V).
- DIY robot lawnmower — wireless boundary and follow-the-swath tracking. The mower must hold parallel passes within its cut-width without buried wire. OpenMower and Ardumower Sunray are common starting points (2–5 cm).
- DIY autonomous survey boat — RC boat plus single-beam echosounder for pond and lake depth charts. At ±3 m GPS, soundings cannot be assembled into a valid grid (20–30 cm horizontal).
- Drone photogrammetry with RTK ground control — 5–8 RTK-measured targets placed before flying a consumer drone, so the resulting orthophoto and DSM are georeferenced to ±3 cm rather than ±3–5 m. Required for any year-on-year change detection or volume comparison (3–5 cm for GCPs).
- High-accuracy OSM path and footway survey — RTK-walked footpaths, desire-lines, and kerbs add ±5 cm geometry where path width and junction position matter for wheelchair routing. At ±3–5 m, narrow alleys appear to overlap walls (10–20 cm).
- Personal boundary verification — landowners stake their legal boundary with RTK before fencing or filing a planning application, instead of commissioning a full surveyor set-out. ±1 m GPS cannot resolve the typical 20 cm rural boundary tolerance (5–10 cm).
- Personal foraging patch archive — recurring chanterelle, wild-garlic, or orchard-windfall patches catalogued so next-season navigation lands inside the patch (often only 1–3 m wide). Borderline use case: SBAS sub-metre is marginally adequate for large patches; RTK adds value mainly for small patches in featureless terrain (50 cm – 1 m).
Out of audience scope: legal cadastral survey, commercial machine control, construction stakeout, structural displacement monitoring — these need certified equipment and uptime SLAs, not free volunteer mountpoints.
Glossary
- RTK (Real-Time Kinematic)
- A positioning technique that uses carrier-phase measurements and corrections from a nearby base station to achieve centimetre-level accuracy in real time.
- Base station / reference station
- A GNSS receiver fixed at a precisely-known location that measures and continuously broadcasts position correction data.
- Rover
- The mobile receiver that applies corrections from a base station to compute its own accurate position.
- NTRIP
- The standard internet protocol used to stream correction data to your receiver. You only need to know three settings: host, port, and mountpoint.
- Mountpoint
- An individual correction stream on an NTRIP caster, identified by a short name. One caster typically hosts streams from hundreds of stations in various formats.
- RTCM
- The message format corrections are encoded in. Your receiver handles this automatically; you may see it listed as the mountpoint format.
- VRS (Virtual Reference Station)
- A network service that synthesises a virtual base station near your rover from the data of multiple real stations. You connect to one address; the network handles the rest.
- L1 / L2 / L5
- Radio frequency bands broadcast by GNSS satellites. Dual-frequency (L1+L2) is the minimum for reliable RTK. Tri-band (L1+L2+L5) performs better in difficult environments such as tree cover or urban areas.
- Fix / float
- Fix means the receiver has locked the integer wavelength counts (called phase ambiguities) that carrier-phase RTK depends on, and is producing centimetre-accurate positions. Float means it is using corrections but has not pinned those integers yet — accuracy is decimetre range. A fix typically takes 30–90 seconds once connected to a good correction source within range.
- PPP (Precise Point Positioning)
- An alternative to network RTK that uses a single receiver plus precise satellite orbit and clock data — no nearby base station needed. Convergence to centimetre accuracy takes 10–30 minutes; final accuracy is typically 10–30 cm in real time, sub-centimetre in offline post-processing.
- Galileo HAS / QZSS CLAS / BeiDou PPP-B2b
- Free PPP-style correction services broadcast directly from satellites — no internet needed. Galileo HAS is global; QZSS CLAS covers Japan and the Asia-Pacific; BeiDou PPP-B2b covers China and the Asia-Pacific. The receiver hardware that can decode them costs ~$2,900 and up.
- MFi (Made for iPhone/iPad)
- Apple's certification for Bluetooth accessories that can act as the system-wide GPS source on iOS. An MFi-certified RTK receiver works in any iOS mapping app; non-certified receivers only work in apps that include a built-in driver for the specific device.