Two different things called location verification
The phrase covers two jobs with very different costs.
A device checking its own position. A device computes its position from signals it receives, and some of the tools for trusting those signals are free. Galileo’s Open Service Navigation Message Authentication (OSNMA), which lets a receiver check that navigation data came from Galileo and was not modified, is described by the European GNSS Service Centre as freely accessible to all. Android’s Wi-Fi round-trip-time ranging lets a phone measure distance to compatible access points without connecting to them. None of this has a per-check fee, but none of it gives anyone else evidence. The device is still vouching for itself.
Someone else checking a claim. As soon as a party other than the device has to observe, measure and sign, as in proof of location, somebody has to run that party, and the cost has to land somewhere.
What third-party evidence costs to run
- Witnesses that are always reachable. A location witness has to be online whenever a claim arrives, whether it is a server timing a network exchange or a radio beacon on a wall.
- Measurement per claim. Each claim needs fresh work from each witness. Adding witnesses adds independence only if they are run separately, and every one adds its own cost.
- Recording the result. Signed results are stored somewhere, for audit or later checks, and storage has a cost of its own.
- On-chain fees. Systems that write commitments or witness responses to a blockchain pay transaction fees. On Ethereum, ethereum.org describes the fee as the gas used multiplied by the base fee plus the priority fee, paid in ETH, and paid whether the transaction succeeds or fails. On a testnet the coins come free from faucets and are meant to have no real value, which keeps this cost out of the price while a service is in testing.
- Your own checking. A signed result is only useful if you verify it: the signer, the deployment, the task and the freshness. That is engineering and operations time on your side, whatever the provider charges.
How it is priced
Providers turn those costs into a price in a few ways, sometimes combined: a monthly plan with an allowance, a price for each check beyond the allowance, or a contract that sets volumes and terms. Before comparing prices, find out what one billable unit is, what a failed or retried check counts as, and what happens when you reach a limit.
One published price list
Offline Protocol publishes the price of its Proof of Location service, which records witness-attested location evidence on the Ethereum Sepolia testnet. Every hosted plan includes verifications each month:
| Plan | Price | Location verifications included a month |
|---|---|---|
| Free | $0 | 250 |
| Pro | $99 a month | 2,500 |
| Scale | $499 a month | 10,000 |
| Enterprise | Annual | Contracted |
Verifications beyond the quota cost $0.03 each, billed monthly in arrears on the next invoice. Owners, admins and billing members get an email at 80% and 100% of each quota. With a card on file, service continues past the quota at that rate, and you can set a billing limit on any meter; charges for that meter never exceed it, and when usage reaches it, that meter’s service pauses until you raise or remove the limit, or the next billing period starts.
A Free organization without a card stops at its quota. The first meter to reach it pauses all of the organization’s metered hosted services, Proof of Location verifications included, until it adds a card, picks a paid plan or the next billing period starts. While paused, a Proof of Location commitment returns HTTP 402 with a message naming the cause. Enterprise contracts are never paused.
Separately from billing, the documented default commitment limit is 3 submissions per 60 seconds per user. The client package, @offline-protocol/pol 0.1.2, is published under MIT or ISC, so the package itself costs nothing.
What the price does not buy
A per-verification price says nothing about what the evidence establishes, and the documentation is explicit about that. Proof of Location runs on the Ethereum Sepolia testnet, so a plan allowance or charge does not make it a mainnet service. The backend commits a geohash (precision 5, approximately a 5 km cell) to an EigenLayer AVS contract, and operator witnesses measure network round-trip time and sign individual attestations. There is no final-proof aggregation step. The backend controls the submitting key and the operator list, the current configuration can contain a single witness, and slashing is not implemented. The geohash and each task’s time remain public on Sepolia, while task IDs are random and commitments use a secret nonce.
It is not a zero-knowledge proof, a decentralized consensus result, or proof that a person is physically present. Budget for it as evidence that feeds your own decision, alongside the time it takes to verify each attestation, not as the decision itself.