Google Maps Platform provides a range of options for controlling your consumption and ensuring that your usage aligns with your budget. Options include:
- Stop charges by capping the number of billing events your app triggers.
- Get notified when your usage approaches specific budget or API limits.
- Build your apps more cost effectively.
The following table shows your options.
Stop Charges | Get Notified | Build for Lower Cost |
Quotas and quota alerts
Quota limits help you control your API usage and prevent unexpected charges.
Set quota limits
By setting a quota limit, you can define the maximum number of requests allowed for a specific API or service within a given timeframe.
Once requests in your project reach that limit, your service stops responding to requests. It's up to you to balance the trade-off between an outage and a larger bill.
Open the Google Maps Platform Quotas page in the Cloud Console.
and select the target project.
In the APIs drop-down, choose the specific API for quota modification.
If you want to edit more than one type of quota, select the checkbox next to the ones you want to enable.
Click the three-dot menu, then click Edit quota.
In the side panel that appears, enter new quota values and click Submit request.
Use the Google Maps Platform pricing calculator to estimate costs based on estimated request volume.
Set quota alerts
Quota alerts notify you when your API usage approaches a defined threshold.
Open the Google Maps Platform Quotas page in the Cloud Console.
and select the target project.
In the APIs drop-down, choose the specific API for quota modification.
Select the endpoints to edit.
Click the three-dot menu, then click Create usage alert.
The side panel that slides out contains a description of the default alert policy. If you want to change the policy, click the three-dot menu and Customize alert policy to display the policy configuration window. Use the Next links in the window to move through the configuration, which includes the ability to configure notification channels, such as SMS, email, chat, webhooks, PagerDuty, and Pub/Sub.
After you add a notification channel, select it in the Notification Channels field and click OK.
Perform this step only if you didn't modify the alert policy in the previous step. Under Configure notifications in the panel, add and configure the types of notifications you want to receive, then select one or more of those channels in the Notification Channels field and click OK.
Click Create.
Adjust quota as needed
Regularly review and adjust your API quotas to optimize usage and costs while finding a balance between preventing excessive spending and ensuring your application functions properly.
- Monitor your API usage patterns in the Google Cloud Console. Set quotas that align with your budget and prevent overspending.
- Ensure quotas can handle peak usage periods.
- Make gradual adjustments and test your application thoroughly after each change to avoid disruptions.
Budgets and budget alerts
If you have a specific budget for your Google Maps Platform use, you can avoid surprises in your bill by creating Cloud Billing budgets and alerts.
You can set budget alerts to notify you when you've reached a certain percentages of your total budget, so that you can see how your usage costs are trending over time.
See the Google Cloud docs for instructions on creating and managing budgets and budget alerts.
Strategic cost management
Effective budgeting involves using free or lower-cost options whenever possible. This section explores various strategies for minimizing costs.
Use Maps Static API whenever possible
The following situations work well with static maps, which support simple map displays that only need a single marker:
- You are starting with a prototype that doesn't yet have a lot of features.
- You don't have any map customizations.
- You use at most one marker.
- You don't need to support user interaction using dynamic maps or dynamic street view.
Use thumbnails
Thumbnails can be used as an even cheaper alternative to the Maps Static API. Thumbnails are billed at a lower rate, and can take users to a dynamic version of Google Maps on-click, so that you only pay for dynamic map loads for engaged users.
Use cheaper pricing categories
Google provides a different number of free usage events for each pricing category. You can optimize your application to use capabilities in the "Essentials" or "Pro" categories, where you have more free monthly usage events. Learn more about pricing categories.
Consolidate multiple maps
If you have an implementation that displays multiple maps, follow these guidelines:
- Load maps only when necessary, minimizing unnecessary resources.
- Reuse a single map by updating its viewport, zoom, and markers as needed.
- Use the Store Locator Plus solution if you're displaying multiple maps to show store locations.
- Use a single map per user-interface screen, as users generally only interact with one map at a time.
Cache content when permitted
Most Google Maps Platform products prohibit caching content. However, some exceptions allow you to cache their results for up to 30 days. See the Google Maps Platform terms for details.
Cost-effective strategies for the Places API
This section provides ways to optimize your usage and reduce costs associated with the Places API.
Use field masks
Using field masking ensures that you don't request unnecessary data, which helps reduce latency and billing charges.
For Place Details (New),
Nearby Search (New), and
Text Search (New), use the FieldMask
header in API
requests to specify the list of fields to return in the response.
You are then billed at the highest SKU applicable to your request. That means if you select fields in both the Basic SKU and the Advanced SKU, you are billed based on the Advanced SKU.
Use session pricing with Place Details (New)
If your applications have a monthly call
volume of
See the Place Autocomplete (New) session pricing documentation for details.
Cost-effective strategies for the Routes API
This section provides ways to optimize your usage and reduce costs associated with the Routes API.
Limit Compute Routes waypoints
Limit user entries in a query to a maximum of 10 waypoints. Requests containing more than 10 waypoints are billed at a higher rate.
Use Compute Routes optimization for optimal routing
Requests using the waypoint optimization argument are billed at a higher rate.
The optimization argument sorts waypoints to ensure optimal routing. This means that travel from A to E is a better experience when optimized (A-B-C-D-E) versus the random sequence of a non-optimized route, such as A-D-B-C-E.
Use real-time traffic models in Compute Routes and Distance Matrix API (Legacy)
Compute Routes and Distance Matrix API (Legacy)
requests that include real-time traffic models are billed at a higher rate.
If traffic models are omitted from a request, the results are based solely on
physical factors: roads, distance, and speed limits. Enable real-time traffic
models by setting the departure time to now
.
Use Route Traveled & Nearest Road when GPS data is imprecise
The Maps Roads API features, Route Traveled and Nearest Road, are included in the advanced tier and are billed at a higher rate. Use these features where GPS data is imprecise and the Roads API can help determine the correct road. Speed Limits, another feature of the Roads API, is available only to Asset Tracking customers.