MapQuest Developer
News & Updates

July 16, 2026 · 2 min

Extended Route Matrix: Up to 10,000×10,000

Many-to-many travel times and distances for very large stop sets — now up to 10,000×10,000 — for sequencing, dispatch, and territory planning at enterprise scale.

MT

MapQuest Team

MapQuest Blog

Extended Route Matrix: Up to 10,000×10,000 hero image

Cost matrices are the backbone of sequencing, dispatch, and territory planning. MapQuest's Async Route Matrix API now supports matrices up to 10,000×10,000 origin–destination pairs — enterprise-scale many-to-many travel times and distances without slicing the problem into dozens of smaller jobs by hand.

This capability is enterprise only. Full reference: Async Route Matrix — Submit.

How the async flow works

Large matrices take time. The API uses a three-step flow:

  1. Submit — POST origins, destinations, and options; receive a job id and status URL.
  2. Poll status — check progress until the job completes.
  3. Retrieve results — download the finished matrix (distances in meters, times in seconds).

Submit endpoint: https://www.mapquestapi.com/directions/v2/routematrix/jobs

What you can configure

  • origins / destinations: arrays of { lat, lng } — min 1, max 10,000 each
  • transport: car, truck, pedestrian, bicycle (default: car)
  • mode: fastest or shortest (default: fastest)
  • region: optional GeoJSON polygon to constrain routing (diameter under ~400 km)
  • departureTime: ISO 8601 (or "any") when a region is provided

Without a region, you can run unbounded large matrices (including 10,000×10,000). With a region, you get tighter geographic control and support for departure-time routing — best for focused regional jobs.

Example: submit a job

curl -X POST "https://www.mapquestapi.com/directions/v2/routematrix/jobs?key=YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "origins": [
      {"lat": 39.7392, "lng": -104.9903},
      {"lat": 40.7128, "lng": -74.0060}
    ],
    "destinations": [
      {"lat": 34.0522, "lng": -118.2437},
      {"lat": 41.8781, "lng": -87.6298}
    ],
    "options": {"transport": "car", "mode": "fastest"}
  }'

Response:

{
  "id": "YWJjMTIzLWRlZjQ1Ni1naGk3ODk6dXMtZWFzdC0xOm0",
  "status": "accepted",
  "href": "https://www.mapquestapi.com/directions/v2/routematrix/jobs/YWJjMTIzLWRlZjQ1Ni1naGk3ODk6dXMtZWFzdC0xOm0"
}

Billing snapshot

Transactions depend on origins (S) and destinations (D):

  • If S or D is less than 5: transactions = S × D
  • If both are 5 or greater: transactions = max(S, D) × 5

Example: a 100×100 matrix bills as 500 transactions.

Built for

  • Multi-stop sequencing and route optimization inputs
  • Dispatch and fleet assignment at city or national scale
  • Territory and coverage planning from large stop sets
  • Backend jobs that need a full cost matrix, not pairwise routing loops

Ready to try it? Review the Async Route Matrix docs and contact us if you need enterprise access for large-matrix workloads.

#directions#route-matrix#dispatch#optimization#enterprise

Keep reading