The area gap is physics, not people.
Field technicians measure the same smallholding six times a season and land 15 to 25% away from the contracted area. Everyone reads that as care. It is not. A half-acre square walked once on a single-frequency handset carries 12.6% of area error from the measurement method alone, before anyone is careless.
Which reframes the whole product. Six captures per season is not a compliance burden to be minimised. It is six independent looks at one boundary, and with a club’s shared edges it is the error-reduction mechanism. Traverse is built around that.
One boundary, half an acre, Rs 60,000 an acre
Disputed value on that one plot falls from Rs 3,777 to Rs 542. No external hardware anywhere in that chain.
EngineEvery figure above was computed by src/lib/traverse when this page rendered, from the covariance of a correlated GNSS error along a walked boundary. Nothing on this tab is a number typed into a paragraph.
Split the 15 to 25% and neither half is carelessness.
Observed settlement variance is contracted area against measured area. That gap has exactly two components: an area written from an eye estimate at onboarding, and a single walk at the handset's horizontal sigma. Both are properties of the method.
median 11.0%, p90 26.3%
written once at onboarding, then never revisited
one walk at the device's sigma, 50% of the total
Neither component is a care problem. One is an area written from an eye estimate, the other is a single walk at the device's horizontal sigma. Both are properties of the capture method, and both shrink when the method changes rather than when the technician tries harder.
Synthetic setMeasured over the 157 plots in the synthetic world that reached a post-harvest capture. 30% of them settle more than 15% away from their contracted area and 12% more than 25%, which is the band this study set out to explain, arrived at from the physics rather than assumed.
Why a slower, more careful walk does not help
Consumer GNSS error drifts, it does not flicker. It decorrelates over about 7 m of travel, so two fixes 2.5 m apart are very nearly the same error. Logging more of them adds points, not information.
Which is why the mechanism has to be more separate looks at the boundary, on different days, from different sides. Six stages, and a neighbour walking the other face of the same bund.
And why the smallest plots are the worst
Area error scales with perimeter and the area does not, so error as a percentage runs roughly as one over the square root of the plot. The plots that matter most to a smallholder are the ones the method serves worst.
One walk, sigma 5.0 m. Median plot in this belt is 1.59 acres; 69 of 179 sit under half a hectare.
Play with it until the collapse stops being a claim.
Every output below is recomputed by the engine on each change: the error, the polygon, the band around it, the simulated walks and the rupees. Start where the operator is today, one walk on an L1 handset, then turn the mechanism on.
0.5 to 10 acres is the real range in this belt.
Published band for this class: 4.5 to 8 m. Study input.
App logs a track while the technician walks the bund.
One look at the boundary. Today's model.
A shared edge is walked from both sides, so it is observed twice.
± 0.063 ac on 0.50 ac
at Rs 60,000/ac
one walk today: Rs 12.5 L
Simulated1 seeded GNSS walk of this boundary, base seed 4211, sigma 5.00 m, error decorrelating over 7 m along the track. No device was used and no real plot is represented.
Same technician, same boundary, same care. The spread between these readings is the problem, and it is why a single capture cannot be the settlement number.
0.5 acre plot, sigma 5.0 m, 72 fixes at 2.5 m spacing, decorrelating over 7 m.
6 independent looks at one boundary on 6 different days. Random error falls as 1/sqrt(N), so 2.45x. Assumes no shared path offset.
Sigma 5.0 m to 2.10 m. Area error is linear in sigma. Handset refresh, no external hardware, no new training.
60% of the perimeter is shared with a neighbour and therefore observed twice. Variance halves on that portion: sqrt(1 - f/2).
The four rungs above scale sigma linearly, which is the first-order result. This row re-integrates the covariance at the sigma and method you actually selected, so it sits a little off the rung above it. Where they disagree, this row is the accurate one.
Two models, and where they part
These two do not agree on the level and should not be presented as if they did. The generator observes 4 vertices independently; the engine integrates a correlated error along the whole walked track, which is the more faithful model and the one every figure on this page uses. On the same statistic they sit about 20% apart. What does survive both models is the reduction factor, and that is the claim this study is actually making: the mechanism is worth about seven times, whichever noise model you believe. The closed form itself is checked against a Monte Carlo of its own covariance in selftest.ts, which is the like-for-like test.
Why a longer walk does not fix it
Receiver error drifts, it does not flicker. Two fixes 2.5 m apart are almost the same error, so logging more of them buys almost nothing, and standing still for 20 s buys a fraction of what the square root of the sample count would promise. The way out is more independent looks at the boundary, not a longer walk. That is the whole design.
Walked track, one fix every 2.5 m, error decorrelating over 7 m.
Every rung assumes the captures are of the same physical boundary. A plot that genuinely changed, for example a sub-let strip, is a data event, not a measurement error, and the anomaly rules must separate the two.
Book roll-up: each of the 179 plots is modelled at its own acreage, rounded to the nearest quarter acre, at its own measured shared-boundary share and at its own crop gross value. Disputes settle plot by plot, so they add rather than cancel.
Satellite is a clock here, not a ruler.
The obvious move is to check the walk against free imagery. At this plot size that does not settle disputes, it manufactures them: a 10 m pixel on a half-acre holding is arbitrating two contracts at once. Temporal questions are a different matter entirely, and those the same pixels answer well.
EnginePixels classified at render time against this plot’s actual geometry and its 4 abutting neighbours, using the study’s own rule: a pixel counts as pure only when its centre and all four corners fall inside one holding. 99.9% of this boundary is shared with a neighbour, so nearly every edge pixel is arbitrating two contracts at once.
At 10 m this plot carries a time series (16 clean pixels) but not a boundary (11.4% area error, 36% of the area in mixed pixels).
The imagery is worse than the walk it would be checking. Using it as the arbiter of a boundary dispute does not settle disputes, it manufactures them.
Canopy cover over the season, from the lifecycle model. Did the crop emerge, did it die back, did it recover: every one of those is a question about a time series, and a time series needs a handful of clean pixels and no boundary at all. Counted on this plot’s real geometry there are 13 of them at 10 m, against 16 from the closed form for a square of the same acreage, refreshed every 5 to 10 days. Either way it is plenty. That is the job satellite should be given.
Whatever a delineation recovers cannot be larger than the plot's pure-pixel core, because every boundary pixel mixes this holding with the next one. A recovered polygon that has lost more than a quarter of the field's area cannot be used to settle that field's area, so retention below 0.75 counts as not separable.
Synthetic setComputed by the world generator over all 69 sub-0.5 hectare holdings in the synthetic set, not read off a paper. The separability threshold is a stated 75% area retention, and the pixel grid is axis-aligned to the local projection, which flatters the coarse case, because a real orbit grid is not aligned to field edges.
About 7.5% of sub-0.5 hectare fields stay separable as distinct polygons at 10 m, against about 88% at 3 m.
Study inputCarried as a study input, not produced by this engine. The published work I can point at supports the direction and the order of magnitude but does not state these two numbers, so they stay flagged until the underlying source is cited. The measured panel beside this one is what this study actually stands behind.
This bears on BOUNDARY work only. Temporal signals - did the crop emerge, did it die back, did it recover - need no boundary resolution, and remain the right job for 10 m Sentinel-class imagery at this plot size.
The hardware answer is a handset, not a receiver.
Dual-frequency L1 + L5 halves horizontal sigma, and area error is linear in sigma. It arrived in phones in 2018 and reached mid-tier Android from about 2022, which means the accuracy upgrade is a device refresh the operator already budgets for, with no second gadget and no new training.
| Handset | Bands | Sigma | Area error | At risk / plot | Unit cost |
|---|---|---|---|---|---|
| Entry Android (2020 class)Android 11 · Ramulu M. · no raw GNSS API | L1GPS, GLONASS | 5.6 m | 14.4% | Rs 4,326 | Rs 8,500 |
| Mid Android (2021 class)Android 12 · Srikanth B. | L1GPS, GLONASS, NavIC | 4.9 m | 12.3% | Rs 3,689 | Rs 10,500 |
| Mid Android (2023 class)Android 14 · Anusha P. | L1 + L5GPS, Galileo, NavIC | 2.4 m | 5.6% | Rs 1,683 | Rs 13,900 |
| Mid Android (2024 class)Android 15 · refresh candidate, not yet issued to any technician | L1 + L5GPS, Galileo, BeiDou, NavIC | 2.1 m | 4.9% | Rs 1,465 | Rs 15,200 |
On a 0.5 acre plot the oldest handset in this fleet carries 14.4% of area error and the newest dual-frequency one carries 4.9%, for a difference of Rs 2,861 of arguable value on that single plot, every time it is settled. Area error is very nearly linear in sigma, so almost the whole gain is the second civil signal resolving ionospheric delay and rejecting multipath. The technician walks the same boundary the same way, on a phone that costs Rs 6,700 more than the one being replaced.
EngineError recomputed per handset at the selected plot size by the same covariance sum behind the model above. Handset sigma, cost and fleet status are attributes of the synthetic device table, not estimates made here.
This is the device rung on its own: one walk, no reconciliation, no shared-edge constraint, so none of it is double counted against the mechanism above. And it is contract value sitting inside the error band, which is what a settlement argument is about. It is not a profit line.
Measured across the synthetic captures
Synthetic setMean absolute area error of every capture in the synthetic world, against the boundary the generator drew. Higher than the closed form because these captures also carry canopy attenuation and village sky obstruction, which the idealised model above leaves out.
Why not an external receiver
A bluetooth GNSS receiver is a second device to charge, pair, carry, justify and lose, on a caseload of 150 to 200 farmers per technician across villages. It needs its own training step and its own support path, and the training budget here is the binding constraint, not the hardware budget. A handset refresh is a line item the operator already runs on a cycle, costs nothing in training because the walk does not change, and it upgrades the whole app at the same time.
That is why DeviceClass rides on every capture in this design rather than sitting in an asset register. A capture taken on an L1-only handset is a different measurement from one taken on L1+L5, and every tolerance, confidence band and settlement check downstream has to know which it is holding.
A measurement system that treats every capture as evidence, never as the answer.
Traverse is an offline-first field app and the reconciliation engine behind it. A plot never stores a boundary. It stores what the contract says, and it stores the captures, each with its own error budget, its own handset class and its own provenance. Six lifecycle walks and the shared edges a farmer club already has in the ground are then reconciled by least squares into one boundary with a confidence interval, so settlement runs against a number that knows how certain it is. The phone assumes no network, the queue is write-ahead so a closed app loses nothing, two technicians on the same plot and stage produce a conflict with both sides preserved rather than a silent overwrite, and satellite is wired to the question it can answer, which is whether the crop emerged, died back or recovered. It is not a training programme, because the problem was never care.
Computed, simulated, or still owed a citation.
EngineComputed at render time
Every error percentage, tolerance, confidence band and rupee figure. The engine sums the covariance of a correlated GNSS error over the boundary polygon; it is not a lookup table, which is why moving any slider moves the answer. The whole-book roll-up runs across all 179 plots at their own acreage, shared-boundary share and crop value, and the pixel classification in the satellite panel is run against real polygon geometry rather than quoted.
SimulatedSimulated, seeded, labelled
Every GNSS track drawn on this page came from a seeded noise model, not from a device. The noise is an AR(1) process along the walk so that extra fixes inside one decorrelation length correctly buy almost nothing. The world behind the aggregates is synthetic: 179 plots, 954 captures, 8 clubs, seed 20260912, world clock 2026-03-14T09:30:00+05:30.
SYNTHETIC DATA. Every company, village, club, farmer, plot boundary, capture, contract, rate and settlement in this file is fabricated for a product study. No real person, holding or agreement is represented. District and state names are real Indian administrative names used only to anchor the belt; village centroids are approximate synthetic points inside it and do not correspond to any actual settlement.
Study inputCarried, not proved
- The 7.5% against 88% sub-0.5 hectare separability split at 10 m against 3 m. The direction is well supported; those two exact figures are not yet traced to a source, so every surface labels them a study input.
- Dual-frequency L1 + L5 reaching MID-TIER Android specifically from 2022. Availability in flagships from 2018 is cited above; the mid-tier timing is not yet cited.
- The 15 to 25% contracted-against-actual variance band as an industry figure. This study reproduces a comparable spread on its own synthetic contracts and reports that instead.
- Rs 60,000 per acre as a gross-value benchmark. It sits inside this world's own per-crop range, from Rs 38,000 for soybean to Rs 1,47,600 for chilli, but it is a round number, not a survey.
Wherever one of these appears on a surface it is flagged as a study input, and the engine’s own measurement is shown next to it.
Sources
- Copernicus SentiWiki, Sentinel-2 missionsentiwiki.copernicus.eu
Four bands at 10 m; five-day revisit for the two-satellite constellation. The sensor characteristics this study takes as given.
- Corley, Robinson, Marcus and Kerner (2026), Fields of the Planet: Field Boundary Mapping Beyond 10marxiv.org
Moving from 10 m to 3 m raises panoptic quality on sub-0.5 hectare fields from 5.8 to 15.7 and cuts matched-boundary error from 18.6 m to 7.4 m. Directly on point for the resolution argument.
- Persello, Tolpekin, Bergado and de By (2019), Delineation of agricultural fields in smallholder farms, Remote Sensing of Environment 231doi.org
Smallholder field delineation is set up against very-high-resolution imagery because small, irregular, mixed-cropped parcels have vaguely defined boundaries at coarser scales.
- EUSPA (2018), World's first dual-frequency GNSS smartphone hits the marketeuspa.europa.eu
The Broadcom BCM47755 in the Xiaomi Mi 8, the first commercial L1 + L5 handset. Establishes when the capability entered phones at all; the mid-tier timing below is still a study input.
- Inherent Limitations of Smartphone GNSS Positioning and Effective Methods to Increase the Accuracy Utilizing Dual-Frequency Measurements, Sensors 22(24), 2022doi.org
Reports 1.75 m horizontal accuracy on Android using L5 differential GNSS with Doppler filtering. This is where the lower bound of the dual-frequency band in this study comes from.
- Observation Quality Assessment and Performance of GNSS Standalone Positioning with Code Pseudoranges of Dual-Frequency Android Smartphones, Sensors 21(6), 2021doi.org
L5 and E5a code observations are measurably less noisy than L1 and E1 on the same handset, which is the physical reason the second signal helps.
Field constraints taken as given
Crop gross values in this world run from Rs 38,000 to Rs 1,47,600 an acre across 5 crops, so the Rs 60,000 benchmark used for value at risk sits inside the range rather than at the top of it. Separately from the measurement band, the synthetic world carries about Rs 29.0 L of value attached to its 65 planted anomalies across 24 disputed plots. That is a different quantity, and the Operations tab is where it is worked.