Google Maps Route & Distance Matrix Scraper
Get driving, walking, bicycling or transit routes between two locations - distance, duration, traffic and turn-by-turn steps - or build a travel-time matrix across many origins and destinations in one run.
Open in Apify Store$0.99 / 1K on Free
Short answer
Google Maps Route & Distance Matrix Scraper is an Apify Store Actor for Google Maps data that returns 35 published output fields, including routeName, origin, destination, originResolved. It lists $0.99 per 1,000 results on the Free plan (pay per event), $0.49 on the Business plan. It takes 19 input settings, none required. It covers 1 of the 9 core Google Maps fields this site tracks. Last updated Nov 5, 2026.
From the public Store listing and published build schema, synced 2026-11-12.What it returns
35 fields from the published dataset schema. Export as JSON, CSV or Excel, or read the dataset through the Apify API.
recordTypeorigindestinationoriginResolveddestinationResolvedrouteNamerouteIndexisRecommendedtravelModedistancedistanceMetersdurationdurationSecondsdurationInTraffictypicalDurationnoTrafficDurationtrafficRangetrafficConditiondepartureTimearrivalTimefareavailableModesgoogleMapsUrlsourceUrlscrapedAtstepsnotesoriginIndexdestinationIndexpairIndex
Show the other 5 fields
routesAvailabletransitLinetransitVehicletransitHeadsigntransit
Not in the schema among the core Google Maps fields: address, phone, website, rating, reviews, hours, latitude, longitude. The field matrix shows which other tools return them.
How it differs from the other Google Maps Actors
Among the 17 catalogue Actors for Google Maps with a published schema, only this one returns origin, destination, isRecommended, durationInTraffic, typicalDuration, noTrafficDuration, trafficRange, trafficCondition.
Pick another Actor if you need
| Actor | Fields it adds | Price / 1K |
|---|---|---|
| Google Maps Review & Contributor Activity Scraper | reviewId, reviewerName, reviewerAvatarUrl, reviewerProfileUrl | $0.99 |
| Google Maps Business Lead Finder with Email & Social Links | title, categoryName, address, phone | $0.99 |
| Google Maps Popular Times & Live Busyness Scraper | businessName, placeId, featureId, cid | $0.99 |
| Google Maps Business Finder with Hours, Ratings & Location | categoryName, categories, totalScore, reviewsCount | $0.99 |
| Google Maps Radius Search Around a Coordinate | categoryName, totalScore, reviewsCount, address | $0.99 |
Input
| Setting | Type | Required | Default | What it does |
|---|---|---|---|---|
| mode | string | No | route | What to scrape: one route (with optional waypoints), a distance matrix, or a list of Google Maps directions URLs. |
| stops | array | No | – | Ordered stops for route mode: 2–10 locations. The first is the origin, the last is the destination, and everything in between becomes a waypoint. |
| origins | array | No | – | Starting locations for matrix mode. Each origin is paired with every destination below. |
| destinations | array | No | – | Ending locations for matrix mode. Each destination is paired with every origin above. |
| directionsUrls | array | No | – | Google Maps directions links for URLs mode. Canonical /maps/dir/ links and short share links are both accepted; waypoints and travel mode are read from the link when present. |
| maxPairs | integer | No | 100 | Maximum number of origin × destination pairs to request in matrix mode. Pairs beyond this cap are left out. |
| travelMode | string | No | driving | How to travel between the stops. |
| avoidTolls | boolean | No | false | Driving only — ask Google Maps to avoid toll roads. If no toll-free route exists, Google may still return a toll route. |
| avoidHighways | boolean | No | false | Driving only — ask Google Maps to avoid highways and motorways. If no practical alternative exists, Google may still return a highway route. |
| avoidFerries | boolean | No | false | Driving only — prefer routes without ferry crossings. If every route uses a ferry, the result is still returned and marked with avoidanceUnmet. |
Show the other 9 settings
| Setting | Type | Required | Default | What it does |
|---|---|---|---|---|
| departureTime | string | No | – | Optional ISO 8601 departure time as local time at the origin, for example 2026-06-16T10:30:00. Used for driving traffic estimates and transit schedules. A timezone offset is accepted but ignored; walking and bicycling ignore the field. |
| maxAlternatives | integer | No | 5 | Maximum number of route alternatives to return per trip, including Google's recommended route. Applies to route and URLs modes. Google usually supplies up to 3 alternatives. |
| maxItems | integer | No | 50 | Global cap on the number of records pushed to the dataset. |
| includeSteps | boolean | No | true | Add turn-by-turn steps with instruction, distance, duration, maneuver, coordinates and route geometry for every returned route. |
| includeStreetView | boolean | No | false | Add a Street View panorama ID and thumbnail URL to each step where Google publishes one. This also enables step details. |
| language | string | No | en | Language for instructions and other localized text. |
| units | string | No | metric | Preferred distance units for the formatted distance fields. Meter values stay unchanged. |
| requestDelayMs | integer | No | 250 | Pause between directions requests. A small delay keeps large matrix runs polite and reduces rate limiting. |
| proxyConfiguration | object | No | – | Optional fallback proxy. The actor first requests Google Maps directly and only retries through this proxy if the direct request is blocked. |
Example input
Built from the input form's published example values and defaults.
{
"mode": "route",
"stops": [
"Times Square, New York, NY",
"Central Park, New York, NY"
],
"origins": [
"Times Square, New York, NY",
"Grand Central Terminal, New York, NY"
],
"destinations": [
"Central Park, New York, NY",
"Brooklyn Bridge, New York, NY",
"JFK Airport, New York, NY"
],
"maxPairs": 100,
"travelMode": "driving",
"avoidTolls": false,
"avoidHighways": false,
"avoidFerries": false,
"maxAlternatives": 1,
"maxItems": 5,
"includeSteps": false,
"includeStreetView": false,
"language": "en",
"units": "metric",
"requestDelayMs": 250
} Run it from code or an AI agent
The same run through the Apify API, with the example input. You need an Apify API token; the run is billed to your account at the Store price.
Python
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
"mode": "route",
"stops": [
"Times Square, New York, NY",
"Central Park, New York, NY"
],
"origins": [
"Times Square, New York, NY",
"Grand Central Terminal, New York, NY"
],
"destinations": [
"Central Park, New York, NY",
"Brooklyn Bridge, New York, NY",
"JFK Airport, New York, NY"
],
"maxPairs": 100,
"travelMode": "driving",
"avoidTolls": False,
"avoidHighways": False,
"avoidFerries": False,
"maxAlternatives": 1,
"maxItems": 5,
"includeSteps": False,
"includeStreetView": False,
"language": "en",
"units": "metric",
"requestDelayMs": 250
}
run = client.actor("vexaloom-labs/google-maps-route-and-distance-matrix-scraper").call(run_input=run_input)
if run is None:
raise RuntimeError("The Actor run was not found.")
for item in client.dataset(run.default_dataset_id).iterate_items():
print(item) pip install apify-client
JavaScript
import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "<YOUR_APIFY_TOKEN>" });
const input = {
"mode": "route",
"stops": [
"Times Square, New York, NY",
"Central Park, New York, NY"
],
"origins": [
"Times Square, New York, NY",
"Grand Central Terminal, New York, NY"
],
"destinations": [
"Central Park, New York, NY",
"Brooklyn Bridge, New York, NY",
"JFK Airport, New York, NY"
],
"maxPairs": 100,
"travelMode": "driving",
"avoidTolls": false,
"avoidHighways": false,
"avoidFerries": false,
"maxAlternatives": 1,
"maxItems": 5,
"includeSteps": false,
"includeStreetView": false,
"language": "en",
"units": "metric",
"requestDelayMs": 250
};
const run = await client.actor("vexaloom-labs/google-maps-route-and-distance-matrix-scraper").call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items); npm install apify-client
cURL
curl -X POST "https://api.apify.com/v2/actors/vexaloom-labs~google-maps-route-and-distance-matrix-scraper/run-sync-get-dataset-items" -H "Authorization: Bearer $APIFY_TOKEN" -H "Content-Type: application/json" -d '{"mode":"route","stops":["Times Square, New York, NY","Central Park, New York, NY"],"origins":["Times Square, New York, NY","Grand Central Terminal, New York, NY"],"destinations":["Central Park, New York, NY","Brooklyn Bridge, New York, NY","JFK Airport, New York, NY"],"maxPairs":100,"travelMode":"driving","avoidTolls":false,"avoidHighways":false,"avoidFerries":false,"maxAlternatives":1,"maxItems":5,"includeSteps":false,"includeStreetView":false,"language":"en","units":"metric","requestDelayMs":250}' Waits for the run and returns the dataset items (runs over 300 seconds return HTTP 408; start an async run instead).
MCP (AI agents)
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=vexaloom-labs/google-maps-route-and-distance-matrix-scraper",
"headers": {
"Authorization": "Bearer <YOUR_APIFY_TOKEN>"
}
}
}
} Adds this Actor as a tool in an MCP client that takes a remote server URL (Cursor, VS Code, Claude Code) through Apify's hosted MCP server. OAuth sign-in also works without the header. Clients that only start local servers can wrap the URL with npx mcp-remote.
What a run costs
The result rate falls on higher Apify plans. Each figure is the published per-result rate times the number of results.
| Apify plan | Per 1,000 | 10,000 results | 100,000 results |
|---|---|---|---|
| Free plan | $0.99 | $9.90 | $99 |
| Starter plan | $0.82 | $8.20 | $82 |
| Scale plan | $0.66 | $6.60 | $66 |
| Business plan | $0.49 | $4.90 | $49 |
- Every run also has a start event, charged per GB of memory (minimum one): $0.10 on Free, $0.03 on Business. At its default memory of 4 GB a run starts at $0.40 on Free. Fewer, larger runs keep this small.
- The Free plan includes $5 of monthly usage (Apify pricing, checked 2026-11-11); at the Free rate that covers at most about 5,050 results, less start events and platform usage.
- Worked example: 10,000 results in one run on the Free plan cost $10.30 ($9.90 for results + $0.40 start), plus Apify platform usage (compute), billed separately by Apify.
- Pay per event. Platform usage (compute) is billed by Apify on top of the event prices. Compare other tools in the cost estimator.
Where it fits among Google Maps routes
It ranks 17 of 17 catalogue Actors for Google Maps on the published formula (fields, price, reliability, freshness). Its line is highlighted on the map.
- 1 Google Maps Review & Contributor Activity Scraper 96 output fields, pay per event 9 of 9 core fields
$0.99 / 1K - 2 Google Maps Business Lead Finder with Email & Social Links 34 output fields, pay per event 7 of 9 core fields
$0.99 / 1K - 3 Google Maps Popular Times & Live Busyness Scraper 46 output fields, pay per event 7 of 9 core fields
$0.99 / 1K - 17 Google Maps Route & Distance Matrix Scraper 35 output fields, pay per event 1 of 9 core fields
$0.99 / 1K - + 7 other Store tools, combined Reference only 9 of 9 core fields
from $0.04 / 1K - API Google Maps Platform Places API Public API fields not compared
Stops are fields. A ring means the field is in that route's published output schema; no ring means the line passes without it. Bold labels are the core fields for this website, the rest are fields that differ between routes. A white capsule means every data line stops there. The red line is the official API; its field coverage is not compared. A crossed red line means there is no open official API.
Official route: Google Maps Platform Places API
Public API. The Places API (New) supports text search, nearby search, place details, autocomplete and photos. A billing account and API key are required.
SKU-based pay-as-you-go. Place Details Essentials is $5.00 per 1,000 after 10,000 free calls per month at the published first paid tier; other SKUs differ.
Other Store tools for Google Maps
Reference only, from their public listings.
| Tool | Fields | Price / 1K |
|---|---|---|
| Google Maps Scraper | 94 | $0.50 |
| Google Maps Scraper | 114 | $1.00 |
| Google Maps Reviews Scraper | 56 | $0.60 |
| Google Maps Reviews Scraper | 7 | $0.04 |
| 20+ Million Business Leads With Emails (From Google Maps) | 19 | $1.90 |
What people use it for
Google Maps route records include origins, destinations, distance, duration, traffic estimates and optional turn-by-turn steps, while matrix records identify each origin and destination pair. Choose it for comparing journeys or building travel-time matrices; the catalogue's other Google Maps tools focus on businesses, reviews, contributors or busyness.
No input is required by the published schema.
- Compare distanceMeters, durationSeconds and durationInTraffic across journeys to assess travel options.
- Build a travel-time matrix using originIndex, destinationIndex and pairIndex to identify each pair.
- Review transit journeys using transitLine, transitVehicle, transitHeadsign and fare where returned.
- Compare travel times
- Build distance matrices
Tips
- Order stops with the origin first, the destination last and any waypoints between them.
- Set maxPairs to cap the origin and destination combinations requested in matrix mode.
Other catalogue Actors for Google Maps
Google Maps Review & Contributor Activity Scraper
Get reviews for any Google Maps business or place, or switch to author mode to pull everything one Google reviewer has written. Includes ratings,…
Google Maps Business Lead Finder with Email & Social Links
Search Google Maps by business type and location and get back listing details enriched with email addresses and social profiles pulled from each…
Google Maps Popular Times & Live Busyness Scraper
Scrape Google Maps Popular Times: hourly busy hours, live busyness vs usual, open/closed status, newest reviews with closure mentions and…
Google Maps Business Finder with Hours, Ratings & Location
Find public Google Maps businesses by search term or place URL and get name, address, phone, website, category, rating, review count, hours and…
Google Maps Radius Search Around a Coordinate
Find Google Maps places within a set radius of an exact latitude/longitude, with rating, reviews, address, phone, website, coordinates, and…
Google Maps Top List & Ranked Places Extractor
Pull the ranked places from a Google Maps Top list query like 'Top hotels in Paris', or from a list/search URL, with optional full place-page…
Similar Actors
Google Maps Hours, Open-Now Status & Holiday Schedule
Get structured opening hours for all 7 days, live open/closed status, holiday schedules and a next open/close countdown from any Google Maps place…
Google Maps Timezone & Local Time Lookup
Resolve the IANA timezone, current local time, UTC offset, and daylight-saving information for any coordinate. Accepts single or batch lat/lng inputs.
Google Maps Address & Coordinate Geocoding Lookup
Convert addresses to coordinates or coordinates back to addresses using Google Maps, in batch, with structured address components, place IDs, plus…
Google Maps Photo Gallery Extractor by Category
Collect public photos and videos from Google Maps places by URL, Place ID, feature ID, CID or search query. Each row carries the image and video…
Google Maps Related Place & Competitor Finder
Find the related and 'people also search for' places Google Maps shows on a business, hotel, or landmark page. Get each related place's name,…
Google Maps Restaurant Menu & Popular Dish Extractor
Extract a restaurant's menu items from its Google Maps place page - dish name, photo, Popular badge, menu section, and an external menu link when…
Questions people ask
Can I collect existing Google Maps directions links?
directionsUrls accepts canonical directions links and short share links in URLs mode. Waypoints and travel mode are read from the link when present.
Can I include directions steps and Street View previews?
Enable includeSteps to add instructions, distances, durations, maneuvers, coordinates and route geometry. includeStreetView also enables step details and adds panorama identifiers and thumbnail URLs wherever Google publishes them.
How much does Google Maps Route & Distance Matrix Scraper cost?
The published result rate depends on your Apify plan: $0.99 per 1,000 on Free, $0.82 per 1,000 on Starter, $0.66 per 1,000 on Scale, $0.49 per 1,000 on Business. So 10,000 results cost about $9.90 on the Free plan and $4.90 on Business, plus a start fee of $0.10 per run per GB of memory on Free. Platform usage is billed separately.
What data does Google Maps Route & Distance Matrix Scraper return?
Its published output schema lists 35 fields: recordType, origin, destination, originResolved, destinationResolved, routeName, routeIndex, isRecommended, travelMode, distance, distanceMeters, duration, and 23 more. A listed field is not guaranteed to be filled in every row.
What input does Google Maps Route & Distance Matrix Scraper need?
No input is strictly required; the defaults run as is. Common settings: mode, stops, origins, destinations, directionsUrls, maxPairs.
What are the alternatives to Google Maps Route & Distance Matrix Scraper for Google Maps?
17 catalogue Actors cover Google Maps. Close alternatives: Google Maps Review & Contributor Activity Scraper; Google Maps Business Lead Finder with Email & Social Links; Google Maps Popular Times & Live Busyness Scraper. The Google Maps page compares all of them field by field.
How do I run Google Maps Route & Distance Matrix Scraper from Python or the API?
Use the Apify API client: in Python, ApifyClient(token).actor("vexaloom-labs/google-maps-route-and-distance-matrix-scraper").call(run_input=...), then read the run's default dataset (run.default_dataset_id); in JavaScript the same call is client.actor("vexaloom-labs/google-maps-route-and-distance-matrix-scraper").call(input). Without a client, POST the input JSON to https://api.apify.com/v2/actors/vexaloom-labs~google-maps-route-and-distance-matrix-scraper/run-sync-get-dataset-items with your API token. Ready-to-paste code with the example input is on this page.
Sources
- Google Maps Route & Distance Matrix Scraper on Apify Store
- Published build with input and output schema (JSON)
- Google Maps Platform Places API documentation
Cite this page
Scraper Finder. "Google Maps Route & Distance Matrix Scraper." https://scraperfinder.com/catalogue/google-maps-route-and-distance-matrix-scraper/ (data checked 2026-11-12).
Run Google Maps Route & Distance Matrix Scraper
$0.99 per 1,000 results. Paste the example input above, set your Google Maps query, then export the dataset. Still choosing? Compare every Google Maps route.