Map Matching API
Snap noisy GPS traces to the road network with confidence scores
Snap noisy GPS traces to real roads with confidence scores.
How it works
Send GPS points
Pass an array of noisy coordinates from a device.
Plaza matches them
Hidden Markov model on the full OSM road network.
Get snapped route
Clean geometry, road names, and confidence per segment.
See it in action
A real API request, visualized.
Who uses this
Teams building with Map Matching API.
Fleet tracking
Clean up vehicle GPS traces for accurate mileage reporting.
Fitness tracking
Snap recorded runs and rides to actual paths and roads.
Ride-hailing
Reconstruct driver routes from sparse phone GPS pings.
Start building
curl -X POST "https://plaza.fyi/api/v1/map-match" \
-H "Content-Type: application/json" \
-d '{
"coordinates": [
[13.388860, 52.517037],
[13.397634, 52.529407],
[13.428555, 52.523219]
]
}'
View endpoints
| Method | Path | Description |
|---|---|---|
| POST | /api/v1/map-match | Snap a GPS trace to the road network |
How it compares
Common questions
Is map matching a premium endpoint?
Yes. It counts as 4x against your allocation. Still cheaper than Google's Roads API at $10/1K or Mapbox at $2/1K.
Does map matching return road names?
Yes. The response includes the matched geometry, confidence scores, and the street names and OSM way IDs for each matched road segment.
How many GPS points can I send in one request?
The API handles traces of several hundred coordinates in a single request. For very long traces, consider splitting into segments.