Why use the Distance Matrix API
You can use the Distance Matrix API to help determine the most efficient travel routes between multiple possible origins and destinations. For example, which workers to send to job sites, or from which warehouses to send packages.
What can you do with the Distance Matrix API
With the Distance Matrix API, you can provide travel distance and time for a matrix of origins and destinations. You can specify several options, including mode of transportation, such as driving, biking, transit or walking, as well as transit modes, such as bus, subway, train, tram, or rail.
The Distance Matrix API provides information based on the recommended route between start and end points. You can request these kinds of distance data:
- Distance for a selected travel mode
- Distance in kilometers or miles
- Estimated travel time in traffic
How the Distance Matrix API works
The Distance Matrix API uses any number of origins (starting points) and destinations, and returns the distance and travel time between each origin and all requested destinations, starting with the first origin in the request and proceeding step-wise to the next.
For example, if your request specifies A and B as origins, and C and D as destinations, it returns distances and travel time in this order:
- A to C
- A to D
- B to C
- B to D
The following example shows a request for two origins: Washington, DC and Boston, with a single destination, New York City, NY, in JSON format:
https://maps.googleapis.com/maps/api/distancematrix/json ?destinations=New%20York%20City%2C%20NY &origins=Washington%2C%20DC%7CBoston &units=imperial &key=YOUR_API_KEY
The following table summarizes the resources available through the Distance Matrix API along with the data it returns.
|Data resources||Data returned||Return format|
Supply origins and destinations in the form of place IDs, addresses, or latitude/longitude coordinates.
How to use the Distance Matrix API
|1||Get set up.||Start with Set up your Google Cloud project and complete the setup instructions that follow.|
|2||Try a distance matrix request||Once you have an API key, you can start testing out the Distance Matrix API directly from your browser. See Sample requests in the Get started guide for examples.|
|3||Compose a more complex request||Try a request that supplies multiple origins and destinations. Learn about optional parameters to constrain calculations, such as a specified departure time, or route restrictions. See Optional parameters in the Distance Matrix request and response guide.|
|4||Understand response basics||Explore the data responses to prepare to use distance matrix data for your app. See Distance matrix responses for details.|
|5||Incorporate distance matrix data into your own app!||You can use this data to calculate travel distance and time.|
Available client libraries
Call this API in the language of your choice through one of the following client libraries:
- Java Client for Google Maps Services
- Python Client for Google Maps Services
- Go Client for Google Maps Services
- Node.js Client for Google Maps Services
The Java Client, Python Client, Go Client and Node.js Client for Google Maps Services are community-supported client libraries, open sourced under the Apache 2.0 License. Download them from GitHub, where you can also find installation instructions and sample code.
- Start using the Distance Matrix: Go to Get Started.
- Get started with sample requests and responses: Go to Distance Matrix request and response
- Follow best practices: Go to Web Service Best Practices.