Azure Maps Route
"Use to get the best route between an origin and destination for automobile, commercial trucks and walking routes." [1]
Azure Maps Route is a REST API from Microsoft that calculates optimal routes for cars, commercial trucks, and pedestrians, covering 200-plus countries with support for turn-by-turn directions, distance matrices, isochrones, waypoint optimization, and snap-to-road. It is priced per 1,000 transactions on a self-serve, usage-based model with a published rate card and no sales call required. SDKs are available for .NET, Python, JavaScript/TypeScript, and Java. The service carries SOC 2 Type II, ISO 27001, HIPAA, GDPR, and PCI DSS certifications, and ships a published SLA.
Best for / Avoid if
Best for: Prototypes and side projects - free to start, no sales call; Regulated or enterprise workloads - compliance attestations and an enterprise plan; Teams needing broad API coverage out of the box
Scores
- 30 / 100Agent friendliness
- 75 / 100Pricing transparency
- 85 / 100Setup speed
- 15 / 100Docs quality
- 90 / 100Procurement ease
- 100 / 100Trust readiness
Pricing & procurement
- Pricing model
- Usage-based [2]
- Published pricing
- ✓ Yes
- Free tier
- ✓ Yes [3]
- Free tier details
- Gen2 pricing includes a recurring monthly free allowance per service. Route service (Location Insights Routing), Traffic, and Weather each receive 1,000 free transactions per month; other Location Insights services (e.g. Search) receive 5,000 free transactions per month. Free limits reset each billing cycle.
- Self-serve signup
- ✓ Yes
- Requires sales call
- ✗ No
- Enterprise plan
- ✓ Yes [4]
| Plan | Item | Per | Amount | Source |
|---|---|---|---|---|
| Gen2 | Location Insights Routing — free allowance | first 1,000 route transactions/month | $0 | source |
| Gen2 | Location Insights Routing | 1,000 transactions (1,001–500,000/month) | $4.5 | source |
| Gen2 | Location Insights Routing — high volume (>500K/month) | contact sales | - | source |
| Gen2 | route matrix elements | 1,000 transactions (every 4 matrix cells = 1 transaction, ceiling; 1,001–500,000/month) | $4.5 | source |
| Gen2 | batch route requests | 1,000 transactions (1 transaction per query in batch; 1,001–500,000/month) | $4.5 | source |
| Gen2 | snap-to-roads requests | 1,000 transactions (1 transaction per request, up to 100 points; 1,001–500,000/month) | $4.5 | source |
| Gen1 S1 (deprecated, retires 9/15/26) | route requests | 1,000 transactions | $5 | source |
| Gen1 S0 (deprecated, retires 9/15/26) | route requests | 1,000 transactions | $0.5 | source |
Capabilities
- Supported actions
- directions, route_directions_batch, distance_matrix, distance_matrix_async, isochrone, snap_to_road, snap_to_road_batch, waypoint_optimization, get_route_operations_result, get_route_operations_status, route_range_batch [5]
- Regions
- Global coverage for route directions, route range, route matrix, and snap to roads across 200+ countries/regions, Real-time traffic available in select countries (US, Canada, UK, Germany, France, Australia, and many others), Truck routing available in select countries (US, Canada, UK, Germany, France, Australia, and many others), Travel modes: driving (car), truck/commercial vehicle, walking, Live traffic and historical traffic supported for matrix routing, Korea supported only in latest API version with data processing consent [6]
- Languages
- Afrikaans, Arabic, Bulgarian, Czech, Danish, German, Greek, English (US), English (UK), Spanish (Spain), Spanish (Mexico), Finnish, French (France), Hungarian, Indonesian, Italian, Korean, Lithuanian, Malay, Norwegian Bokmål, Dutch, Polish, Portuguese (Brazil), Portuguese (Portugal), Russian, Slovak, Slovenian, Swedish, Thai, Turkish, Chinese (Traditional, Taiwan)
- Input types
- origin/destination coordinates (GeoJSON Point), waypoints (up to 150), viaWaypoints (up to 10 between each pair of waypoints), departure time (departAt), arrival time (arriveAt), travel mode (driving/truck/walking), vehicle profile (dimensions, weight, axle count, hazmat load type, max speed), avoid options (highways, toll roads, ferries, tunnels, border crossings, low-emission zones, unpaved roads), optimize route parameter (fastest/shortest/fastestWithTraffic), time budget (seconds) for isochrone, distance budget (meters) for isochrone, traffic mode (live/historical)
- Output types
- route geometry/polyline (GeoJSON MultiLineString), distance (distanceInMeters), duration (durationInSeconds), duration in traffic (durationTrafficInSeconds), turn-by-turn steps (itinerary/ManeuverPoints), traffic congestion level, optimized waypoint order, alternative routes (up to 6), isochrone polygon (GeoJSON Polygon), route matrix (travel time and distance for O-D pairs), arrival/departure timestamps, JSON, GeoJSON
- Webhooks
- ✗ No [7]
- Sandbox / test mode
- ✗ No
- SDK languages
- C# (.NET), Python, JavaScript/TypeScript, Java [8]
- MCP server
- ✗ No
Trust & compliance
- SOC 2
- SOC 2 Type II [9]
- HIPAA
- ✓ Yes [10]
- GDPR
- ✓ Yes [11]
- ISO 27001
- ✓ Yes [12]
- PCI DSS
- ✓ Yes [13]
- Published SLA
- ✓ Yes [14]
- Rate limits
- ["Route service (single request): 50 QPS on Gen2 and Gen1 S1; 50 QPS on Gen1 S0", "Route service (batch): 10 QPS on Gen2 and Gen1 S1; not available on Gen1 S0"] [15]
- Known restrictions
- Route matrix sync max size: 2,500 cells (origins × destinations); max 1,000 origins and 1,000 destinations; 100 origins × 100 destinations with live traffic within 400 km × 400 km bounding box, Route directions: maximum 150 waypoints per request; maximum 10 viaWaypoints between any two waypoints, Route range (isochrone): max timeBudgetInSec = 21,600 seconds (simplified polygon) or 3,600 seconds (non-simplified); max distanceBudgetInMeters = 500,000 m (simplified) or 90,000 m (non-simplified), Snap to Roads batch: max 100 queries per batch call; Route Directions Batch and Route Range Batch also supported, SAS token max rate limit: 1–500 requests per second, enforced per Azure location, Gen1 pricing tier deprecated; retires 9/15/26, Korea routing only supported in latest API version with data processing consent enabled, No maximum daily transaction limit (only per-second QPS limits apply), Async route matrix results stored for 24 hours only; polling required (no webhooks), Usage beyond 500,000 routing transactions/month requires contacting sales for custom pricing [16]
Developer surface
Integration
- API style
- rest
- Base URL
- https://atlas.microsoft.com
- Version
- 2025-01-01
- Versioning
- url
- Stability
- ga
- Auth methods
- api_key, oauth2
- Idempotency keys
- ✗ No
- Error format
- vendor-specific (MapsErrorResponse JSON: {error: {code, message, target, details[], innererror}})
- Rate limit
- 50 / second
Adoption & maturity
- Launched
- 2018-05-29
- GA
- 2018-05-29
Other Routing APIs
Route4Me
"Industrial Grade Route Planning And Route Optimization Software" that "automates and integrates mission-critical last mile workflows, empowering route planners, dispatchers, drivers, and managers to take your business to the next level."
HERE Routing API
"Plan stress-free journeys" with routing solutions "for various modes of transport" enabling last-mile delivery, fleet management, and freight logistics.
Radar Geocoding API
"Use Radar's geocoding APIs to convert addresses to latitude and longitude coordinates, or vice versa."
Routific
"Delivery management for growing businesses"
Google Routes API
"Compute Routes returns the ideal route between two locations, and Compute Route Matrix returns distances and travel times for a matrix of routes between different origin and destination locations."
GraphHopper Directions API
"Route Planning For Your Application"
References
- ↑Description: learn.microsoft.com
- ↑Pricing model: learn.microsoft.com · learn.microsoft.com
- ↑Free tier: learn.microsoft.com · learn.microsoft.com
- ↑Enterprise plan: learn.microsoft.com
- ↑Supported actions: learn.microsoft.com
- ↑Regions: learn.microsoft.com
- ↑Webhooks: learn.microsoft.com · learn.microsoft.com
- ↑SDK languages: learn.microsoft.com
- ↑SOC 2: learn.microsoft.com · learn.microsoft.com
- ↑HIPAA: techcommunity.microsoft.com · learn.microsoft.com
- ↑GDPR: learn.microsoft.com · learn.microsoft.com
- ↑ISO 27001: learn.microsoft.com
- ↑PCI DSS: learn.microsoft.com
- ↑Published SLA: microsoft.com
- ↑Rate limits: learn.microsoft.com
- ↑Known restrictions: learn.microsoft.com · learn.microsoft.com
Change history
- 2026-06-15 Score Agent Friendliness: 10 → 30
- 2026-06-14 Has Structured Data: (none) → Yes
- 2026-06-14 Robots Allows Agents: (none) → Yes
- 2026-06-14 Capabilities: {} → {"truck":true,"traffic":true,"isochrones":true,"map_matching":true,"optimizatio…
- 2026-06-14 Summary Md: (none) → Azure Maps Route is a REST API from Microsoft that calculates optimal routes fo…
- 2026-06-14 Score Procurement Friction: (none) → 90
- 2026-06-14 Best For: (none) → Prototypes and side projects - free to start, no sales call, Regulated or enter…
- 2026-06-14 Scoring Methodology: (none) → Scores are computed deterministically from this profile's published, sourced fi…
- 2026-06-14 Score Trust Readiness: (none) → 100
- 2026-06-14 Score Agent Friendliness: (none) → 10
- 2026-06-14 Score Pricing Transparency: (none) → 75
- 2026-06-14 Score Setup Speed: (none) → 85
- 2026-06-14 Score Docs Quality: (none) → 15
- 2026-06-14 Llms Txt Present: (none) → No
- 2026-06-14 Docs URL: (none) → https://learn.microsoft.com/docs
- 2026-06-14 Rendering: (none) → static
- 2026-06-14 Pricing Model: set to usage_based
- 2026-06-14 Has Published Pricing: set to Yes
- 2026-06-14 Free Tier Available: set to Yes
- 2026-06-14 Free Tier Details: set to Gen2 pricing includes a recurring monthly free allowance per service. Route ser…
- 2026-06-14 Self Serve Signup: set to Yes
- 2026-06-14 Requires Sales Call: set to No
- 2026-06-14 Enterprise Plan Available: set to Yes
- 2026-06-14 SOC 2: set to type_2
- 2026-06-14 HIPAA: set to Yes
- 2026-06-14 GDPR: set to Yes
- 2026-06-14 ISO 27001: set to Yes
- 2026-06-14 PCI DSS: set to Yes
- 2026-06-14 SLA Published: set to Yes
- 2026-06-14 SLA URL: set to https://www.microsoft.com/licensing/docs/view/Service-Level-Agreements-SLA-for-…
- 2026-06-14 Data Retention Policy URL: set to https://learn.microsoft.com/en-us/rest/api/maps/route/post-route-matrix-async?v…
- 2026-06-14 Documented Rate Limits: set to Route service (single request): 50 QPS on Gen2 and Gen1 S1; 50 QPS on Gen1 S0, …
- 2026-06-14 Rate Limit Requests: set to 50
- 2026-06-14 Rate Limit Window: set to second
- 2026-06-14 Known Restrictions: set to Route matrix sync max size: 2,500 cells (origins × destinations); max 1,000 ori…
- 2026-06-14 Auth Methods: set to api_key, oauth2
- 2026-06-14 Auth Docs URL: set to https://learn.microsoft.com/en-us/azure/azure-maps/azure-maps-authentication
- 2026-06-14 API Style: set to rest
- 2026-06-14 Base URL: set to https://atlas.microsoft.com
- 2026-06-14 API Version: set to 2025-01-01
- 2026-06-14 Versioning Scheme: set to url
- 2026-06-14 Stability: set to ga
- 2026-06-14 Deprecation Policy URL: set to https://learn.microsoft.com/en-us/azure/azure-maps/how-to-manage-pricing-tier
- 2026-06-14 Quickstart URL: set to https://learn.microsoft.com/en-us/azure/azure-maps/quick-demo-map-app
- 2026-06-14 Idempotency Supported: set to No
- 2026-06-14 Slug: set to azure-maps-route
- 2026-06-14 Requires Verification: set to No
- 2026-06-14 Price Basis: set to 1,000 transactions
- 2026-06-14 Launched At: set to 2018-05-29
- 2026-06-14 GA Date: set to 2018-05-29
Suggest an edit / leave a review
Leave a review or comment
curl -X POST https://apio.sh/api/feedback/azure-maps-route \
-H 'Content-Type: application/json' \
-d '{"kind":"review","rating":5,"body":"Your experience with this API…"}'Suggest a correction to a field (cite a source)
curl -X POST https://apio.sh/api/suggest/azure-maps-route/FIELD \
-H 'Content-Type: application/json' \
-d '{"value":"corrected value","citations":[{"url":"https://source.example/page","excerpt":"supporting quote"}],"note":"what changed and why"}'