Google Maps Route Optimization API to OnTerra RouteSavvy API PLUS - Comparison and Migration Guide
The Google Maps Route Optimization API is a recently released service from Google. The Google Maps Route Optimization API returns an optimized route for one or more vehicles and multiple locations to be visited i.e. stops. This multi-vehicle optimization API is becoming more popular in the logistics industry as it allows organizations to balance work across multiple field workers and optimize the individual routes.
RouteSavvy API PLUS is an excellent alternative to Google Maps Route Optimization API and has all the important features (i.e.: time windows) that are needed for most route itinerary optimization scenarios. RouteSavvy API PLUS offers a simple, easy-to-use set of input parameters, features high performance with fast API response times, and has cost-effective pricing.
RouteSavvy API Plus | Google Maps Route Optimization API | |
---|---|---|
Simple and Easy to Use | Yes | No |
High Performance | Yes | No |
Cost Effective Pricing | Yes | No |
RouteSavvy API PLUS Feature Highlights:
- Easy-to-use API and API key-based authentication to quickly develop, test and release your applications to production
- Up to 1,000 locations (route stops) can be optimized across a maximum of 50 vehicles (resultant routes) in a single request
- Ability to specify unique, friendly names for stops and vehicles in the API request
- Support for optimizing routes based on multiple availability time windows for a given stop location
- Detailed driving instructions steps are conveniently included in the API response, eliminating the need to make additional API requests to get driving directions for the route
- GET and POST request options are available for making the API requests
RouteSavvy API PLUS features powerful functionality, and it’s significantly more cost-effective than the Google Maps Route Optimization API.
Google Maps Route Optimization API:
Google Maps Fleet Routing API transactions are calculated based only on the number of itinerary items i.e. stops in the request. For a calculation of 2 agents (vehicles) and 15 locations (stops), that would result in 15 billable transactions. The cost of this example would be $0.450.
RouteSavvy API PLUS:
A RouteSavvy API PLUS transactions calculation is based on the number of vehicles multiplied by the number of stops
in the request, equating to 30 billable transactions. Despite a larger number of calculated transactions, RouteSavvy API PLUS offers a much lower per-transaction rate than Google Maps. For the same calculation with RouteSavvy API Plus, the comparable cost would be $0.018.
This is a relatively small example and only illustrates pricing for one individual API calculation. The following table models this same example if the same calculation were to be made once a day for an entire year. Additional examples of daily calculations are included, with increasingly larger numbers of both agents (vehicles) and locations (stops), similarly extrapolated for an entire year to show more real-world cost
comparisons.
Daily API Call | Google Maps RO | RouteSavvy API PLUS | |||||
#Vehicles | #Stops | Annual Transactions | Rate/ Transaction | Total$ | Annual Transactions | Rate/ | Total$ |
2 | 15 | 5,475 | $0.0300 | $164.25 | 10,950 | $0.0006 | $6.57 |
5 | 50 | 18,250 | $0.0300 | $547.50 | 91,250 | $0.0006 | $54.75 |
20 | 250 | 91,250 | $0.0300 | $2,737.50 | 1,825,000 | $0.0006 | $1,095.00 |
50 | 1000 | 365,000 | $0.0300 | $10,950.00 | 18,250,000 | $0.0003 | $5,475.00 |
Get Started with RouteSavvy API PLUS Today:
Here are the resources to get started with RouteSavvy API PLUS:
This simple scenario example has two service technicians and six customer locations that need to be serviced for the day. Each service technician has a specified availability start and end time, as well as starting and ending locations – specifically, a depot location where the technicians start and end their workdays. Each customer location has a time window of when the customer can be serviced and a visit duration (in minutes) for the type of service needed.
Google Maps Route Optimization API POST Request Example:
Request URL:
https://routeoptimization.googleapis.com/v1/projects/YourProjectName:optimizeTours
Request Body:
{
“model”: {
“shipments”: [
{
“deliveries”: [
{
“arrivalLocation”: {
“latitude”: 39.761975,
“longitude”: -104.907292
},
“duration”: “1800s”,
“timeWindows”: [
{
“startTime”: “2024-07-08T10:00:00Z”,
“endTime”: “2024-07-08T15:00:00Z”
}
]
}
],
“label”: “Customer001”
},
{
“deliveries”: [
{
“arrivalLocation”: {
“latitude”: 39.765176,
“longitude”: -104.919965
},
“duration”: “3600s”,
“timeWindows”: [
{
“startTime”: “2024-07-08T10:00:00Z”,
“endTime”: “2024-07-08T15:00:00Z”
}
]
}
],
“label”: “Customer002”
},
{
“deliveries”: [
{
“arrivalLocation”: {
“latitude”: 39.781996,
“longitude”: -105.021899
},
“duration”: “1800s”,
“timeWindows”: [
{
“startTime”: “2024-07-08T10:00:00Z”,
“endTime”: “2024-07-08T15:00:00Z”
}
]
}
],
“label”: “Customer003”
},
{
“deliveries”: [
{
“arrivalLocation”: {
“latitude”: 39.750206,
“longitude”: -104.933919
},
“duration”: “3600s”,
“timeWindows”: [
{
“startTime”: “2024-07-08T10:00:00Z”,
“endTime”: “2024-07-08T15:00:00Z”
}
]
}
],
“label”: “Customer004”
},
{
“deliveries”: [
{
“arrivalLocation”: {
“latitude”: 39.762898,
“longitude”: -104.934401
},
“duration”: “1800s”,
“timeWindows”: [
{
“startTime”: “2024-07-08T10:00:00Z”,
“endTime”: “2024-07-08T15:00:00Z”
}
]
}
],
“label”: “Customer005”
},
{
“deliveries”: [
{
“arrivalLocation”: {
“latitude”: 39.763766,
“longitude”: -104.946255
},
“duration”: “3600s”,
“timeWindows”: [
{
“startTime”: “2024-07-08T10:00:00Z”,
“endTime”: “2024-07-08T15:00:00Z”
}
]
}
],
“label”: “Customer006”
}
],
“vehicles”: [
{
“startLocation”: {
“latitude”: 39.712797,
“longitude”: -104.987282
},
“startTimeWindows”: [
{
“startTime”: “2024-07-08T10:00:00Z”
}
],
“endTimeWindows”: [
{
“endTime”: “2024-07-08T15:00:00Z”
}
],
“label”: “Vehicle01”
},
{
“startLocation”: {
“latitude”: 39.712797,
“longitude”: -104.987282
},
“startTimeWindows”: [
{
“startTime”: “2024-07-08T10:00:00Z”
}
],
“endTimeWindows”: [
{
“endTime”: “2024-07-08T15:00:00Z”
}
],
“label”: “Vehicle02”
}
],
“globalStartTime”: “2024-07-08T10:00:00Z”,
“globalEndTime”: “2024-07-08T15:00:00Z”
}
}
RouteSavvy API PLUS POST request:
Request URL:
https://api.routesavvy.com/plus/RSAPI.svc/POSTOptimize=
Request Body:
{
“Locations”: [
{
“Name”: “Depot”,
“Latitude”: 39.712797,
“Longitude”: -104.987282
},
{
“Name”: “Customer001”,
“Latitude”: 39.761975,
“Longitude”: -104.907292,
“VisitDurationInMinutes”: 30,
“Time_Window”: [
{
“earliest”: “10:00”,
“latest”: “15:00”
}
]
},
{
“Name”: “Customer002”,
“Latitude”: 39.765176,
“Longitude”: -104.919965,
“VisitDurationInMinutes”: 60,
“Time_Window”: [
{
“earliest”: “10:00”,
“latest”: “15:00”
}
]
},
{
“Name”: “Customer003”,
“Latitude”: 39.781996,
“Longitude”: -105.021899,
“VisitDurationInMinutes”: 30,
“Time_Window”: [
{
“earliest”: “10:00”,
“latest”: “15:00”
}
]
},
{
“Name”: “Customer004”,
“Latitude”: 39.750206,
“Longitude”: -104.933919,
“VisitDurationInMinutes”: 60,
“Time_Window”: [
{
“earliest”: “10:00”,
“latest”: “15:00”
}
]
},
{
“Name”: “Customer005”,
“Latitude”: 39.762898,
“Longitude”: -104.934401,
“VisitDurationInMinutes”: 30,
“Time_Window”: [
{
“earliest”: “10:00”,
“latest”: “15:00”
}
]
},
{
“Name”: “Customer006”,
“Latitude”: 39.763766,
“Longitude”: -104.946255,
“VisitDurationInMinutes”: 60,
“Time_Window”: [
{
“earliest”: “10:00”,
“latest”: “15:00”
}
]
}
],
“OptimizeParameters”: {
“AppId”: “16723941d05144bea3e952a1e77eb7cb”,
“OptimizeType”: “time”,
“Departure”: “2020-05-23T08:00:00”,
“MinimizeVehicle”: “false”,
“Vehicles”: [
{
“vehicle_id”: “Vehicle01”,
“StartLocation”: “Depot”,
“EndLocation”: “Depot”,
“DriverAvailabilityFrom”: “10:00”,
“DriverAvailabilityTo”: “15:00”
},
{
“vehicle_id”: “Vehicle02”,
“StartLocation”: “Depot”,
“EndLocation”: “Depot”,
“DriverAvailabilityFrom”: “10:00”,
“DriverAvailabilityTo”: “15:00”
}
]
}
}
Benefits of the RouteSavvy API
EASY TO USE
The RouteSavvy API is built on RESTFUL code standards, making it an easy tool to use.
STREAMLINES DEVELOPMENT TIME
RouteSavvy’s Route API helps speed development time in many ways.
FASTER LAUNCH OF NEW SOFTWARE
The RouteSavvy API helps developers bring new software solutions to market faster.
FREE CODE SAMPLES
The RouteSavvy team has done the heavy lifting for developers. Access our free code samples in C#, Java, JavaScript, Python & VB.NET.
SCALABLE ROUTING
Our Routing APIs are scalable, from a modest amount of stops per route up to 500 stops for the standard RouteSavvy API & up to 1000 stops for RouteSavvy API PLUS.
TRULY ROBUST ROUTING API OFFERING
The RouteSavvy API developers are long-time routing software experts who have built affordable & robust routing APIs.