Error: 9005 PLACES_API_RATE_LIMIT_EXCEEDED
The Places SDK for Android uses a pay-as-you-go pricing model. Places SDK for Android requests for the Places SDK for Android are billed by SKU. Along with the overall Google Terms of Use, there are usage limits specific to the Places SDK for Android. Manage your costs and usage with tools available in the Google Cloud Console.
How the Places SDK for Android is billed
The Places SDK for Android (New) and Places SDK for Android uses a pay-as-you-go pricing model. The Google Maps Platform APIs and SDKs are billed by SKU. Usage is tracked for each SKU, and any API or SDK may have more than one product SKU. Cost is calculated by:
Use our Pricing and Usage calculator to estimate your usage cost per API or SDK. For qualifying Google Maps Platform SKUs, a $200 USD Google Maps Platform credit is available each month for each billing account. This credit is automatically applied to the qualifying SKUs.
Pricing for the Places SDK for Android (New)
About field masks
Use field masks, also called field lists, in your 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.
Using a field mask is a good design practice to ensure that you don't request unnecessary data, which helps to avoid unnecessary processing time and billing charges.
About Autocomplete (New) sessions
An Autocomplete (New) session includes one or more Autocomplete (New) requests, and a Place Details (New) request or Address Validation request. The same session token is passed to the Autocomplete (New) request and to the subsequent Place Details (New) request or Address Validation request.
A session starts with the first Autocomplete (New) request. A Place Details (New) request or Address Validation request is then made when the user has selected one of the Autocomplete (New) suggestions. If a session is abandoned, meaning no Place Details (New) request or Address Validation request is made, Autocomplete (New) requests are charged as if no session token was provided.
After a user has selected a place (meaning a Place Details (New) request or Address Validation request is made), you must start a new session using a new session token.
A session token is good for one session and cannot be used for more than one session. If you reuse a session token, the session is considered invalid and the requests are charged as if no session token was provided.
SKU: Autocomplete Requests
An Autocomplete Requests SKU is charged for each request to the Autocomplete (New) API that does not include a session token.
It is also charged if you use session tokens and either:
- Terminate the sessions by a single request to Place Details (New) that
requests any fields defined by the SKU: Place Details (Location Only).
- Each Autocomplete (New) request, up to 12 requests, is billed using the SKU: Autocomplete Requests.
- Each subsequent Autocomplete (New) request is billed using the SKU: Autocomplete Session Usage.
- Abandon the session or end the session by making a call to the SKU: Place Details (IDs Only). All Autocomplete (New) requests are then billed using the SKU: Autocomplete Requests.
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.00283 USD per each (2.83 USD per 1000) |
0.00227 USD per each (2.27 USD per 1000) |
Contact Sales for volume pricing |
SKU: Autocomplete Session Usage
An Autocomplete Session Usage SKU is charged for each request to the Autocomplete (New) API that includes a session token.
This SKU is charged in these scenarios:
Autocomplete session terminated by a call to SKU: Place Details (Location Only):
- Each Autocomplete (New) request, up to 12 requests, is billed using the SKU: Autocomplete Requests.
- Each subsequent Autocomplete (New) request is billed using the SKU: Autocomplete Session Usage.
Autocomplete session terminated with a call to SKU: Place Details (Basic, Advanced, or Preferred).
A Place Details call that requests any field from the SKU: Place Details (Basic, Advanced, or Preferred) is billed at the SKU: Place Details (Preferred).
Autocomplete session terminated with a call to SKU: Address Validation Preferred.
For more information, see Autocomplete (New) and session pricing.
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.00 USD per each (0.00 USD per 1000) |
0.00 USD per each (0.00 USD per 1000) |
0.00 USD per each (0.00 USD per 1000) |
SKU: Place Details (IDs Only)
Using a field mask or field list in your Place Details (New) request, you can limit the response to only those fields specified. This SKU is triggered when you only request the following fields:
Android:
Place.Field.DISPLAY_NAME
,
Place.Field.ID
,
Place.Field.PHOTO_METADATAS
,
Place.Field.RESOURCE_NAME
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.0 USD per each (0.00 USD per 1000) |
0.0 USD per each (0.00 USD per 1000) |
0.0 USD per each (0.00 USD per 1000) |
SKU: Place Details (Location Only)
Using a field mask or field list in your Place Details (New) request, you can limit the response to only those fields specified. This SKU is triggered when you only request the following fields:
Android:
Place.Field.ADDRESS_COMPONENTS
,
ADR_FORMAT_ADDRESS
,
Place.Field.FORMATTED_ADDRESS
,
Place.Field.LOCATION
,
Place.Field.PLUS_CODE
,
Place.Field.SHORT_FORMATTED_ADDRESS
,
Place.Field.TYPES
,
Place.Field.VIEWPORT
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.005 USD per each (5.00 USD per 1000) |
0.004 USD per each (4.00 USD per 1000) |
Contact Sales for volume pricing |
SKU: Place Details (Basic)
Using a field mask or field list in your Place Details (New) request, you can limit the response to only those fields specified. This SKU is triggered when you only request the following fields:
Android:
Place.Field.ACCESSIBILITY_OPTIONS
,
Place.Field.BUSINESS_STATUS
,
Place.Field.GOOGLE_MAPS_URI
,
Place.Field.ICON_BACKGROUND_COLOR
,
Place.Field.ICON_MASK_URL
,
Place.Field.PRIMARY_TYPE
,
Place.Field.PRIMARY_TYPE_DISPLAY_NAME
,
Place.Field.SUB_DESTINATIONS
,
Place.Field.UTC_OFFSET
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.0170 USD per each (17.00 USD per 1000) |
0.0136 USD per each (13.60 USD per 1000) |
Contact Sales for volume pricing |
SKU: Place Details (Advanced)
Using a field mask or field list in your Place Details (New) request, you can limit the response to only those fields specified. This SKU is triggered when you only request the following fields:
Android:
Place.Field.CURRENT_OPENING_HOURS
,
Place.Field.CURRENT_SECONDARY_OPENING_HOURS
Place.Field.INTERNATIONAL_PHONE_NUMBER
,
Place.Field.NATIONAL_PHONE_NUMBER
Place.Field.OPENING_HOURS
,
Place.Field.PRICE_LEVEL
,
Place.Field.RATING
,
Place.Field.SECONDARY_OPENING_HOURS
,
Place.Field.USER_RATING_COUNT
Place.Field.WEBSITE_URI
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.020 USD per each (20.00 USD per 1000) |
0.016 USD per each (16.00 USD per 1000) |
Contact Sales for volume pricing |
SKU: Place Details (Preferred)
Using a field mask or field list in your Place Details (New) request, you can limit the response to only those fields specified. This SKU is triggered when you only request the following fields:
Android:
Place.Field.ALLOWS_DOGS
,
Place.Field.CURBSIDE_PICKUP
,
Place.Field.DELIVERY
,
Place.Field.DINE_IN
,
Place.Field.EDITORIAL_SUMMARY
,
Place.Field.EV_CHARGE_OPTIONS
,
Place.Field.FUEL_OPTIONS
,
Place.Field.GOOD_FOR_CHILDREN
,
Place.Field.GOOD_FOR_GROUPS
,
Place.Field.GOOD_FOR_WATCHING_SPORTS
,
Place.Field.LIVE_MUSIC
,
Place.Field.MENU_FOR_CHILDREN
,
Place.Field.OUTDOOR_SEATING
,
Place.Field.PARKING_OPTIONS
,
Place.Field.PAYMENT_OPTIONS
,
Place.Field.RESERVABLE
,
Place.Field.RESTROOM
,
Place.Field.REVIEWS
,
Place.Field.SERVES_BEER
,
Place.Field.SERVES_BREAKFAST
,
Place.Field.SERVES_BRUNCH
,
Place.Field.SERVES_COCKTAILS
,
Place.Field.SERVES_COFFEE
,
Place.Field.SERVES_DESSERT
,
Place.Field.SERVES_DINNER
,
Place.Field.SERVES_LUNCH
,
Place.Field.SERVES_VEGETARIAN_FOOD
,
Place.Field.SERVES_WINE
,
Place.Field.TAKEOUT
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.025 USD per each (25.00 USD per 1000) |
0.020 USD per each (20.00 USD per 1000) |
Contact Sales for volume pricing |
SKU: Nearby Search (Basic)
Using a field mask or field list in your Nearby Search (New) request, you can limit the response to only those fields specified. This SKU is triggered when you only request the following fields:
Android:
Place.Field.ADDRESS_COMPONENTS
,
Place.Field.BUSINESS_STATUS
,
Place.Field.ADDRESS
,
Place.Field.ICON_BACKGROUND_COLOR
,
Place.Field.ICON_URL
,
Place.Field.LAT_LNG
,
Place.Field.PHOTO_METADATAS
,
Place.Field.PLUS_CODE
,
Place.Field.PRIMARY_TYPE
,
Place.Field.PRIMARY_TYPE_DISPLAY_NAME
,
Place.Field.ID
,
Place.Field.NAME
,
Place.Field.TYPES
,
Place.Field.UTC_OFFSET
,
Place.Field.VIEWPORT
,
Place.Field.WHEELCHAIR_ACCESSIBLE_ENTRANCE
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.032 USD per each (32.00 USD per 1000) |
0.0256 USD per each (25.60 USD per 1000) |
Contact Sales for volume pricing |
SKU: Nearby Search (Advanced)
Using a field mask or field list in your Nearby Search (New) request, you can limit the response to only those fields specified. This SKU is triggered when you only request the following fields:
Android:
Place.Field.CURRENT_OPENING_HOURS
,
Place.Field.CURRENT_SECONDARY_OPENING_HOURS
Place.Field.INTERNATIONAL_PHONE_NUMBER
,
Place.Field.NATIONAL_PHONE_NUMBER
Place.Field.OPENING_HOURS
,
Place.Field.PRICE_LEVEL
,
Place.Field.RATING
,
Place.Field.SECONDARY_OPENING_HOURS
,
Place.Field.USER_RATING_COUNT
Place.Field.WEBSITE_URI
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.035 USD per each (35.00 USD per 1000) |
0.028 USD per each (28.00 USD per 1000) |
Contact Sales for volume pricing |
SKU: Nearby Search (Preferred)
Using a field mask or field list in your Nearby Search (New) request, you can limit the response to only those fields specified. This SKU is triggered when you only request the following fields:
Android:
Place.Field.ALLOWS_DOGS
,
Place.Field.CURBSIDE_PICKUP
,
Place.Field.DELIVERY
,
Place.Field.DINE_IN
,
Place.Field.EDITORIAL_SUMMARY
,
Place.Field.EV_CHARGE_OPTIONS
,
Place.Field.FUEL_OPTIONS
,
Place.Field.GOOD_FOR_CHILDREN
,
Place.Field.GOOD_FOR_GROUPS
,
Place.Field.GOOD_FOR_WATCHING_SPORTS
,
Place.Field.LIVE_MUSIC
,
Place.Field.MENU_FOR_CHILDREN
,
Place.Field.OUTDOOR_SEATING
,
Place.Field.PARKING_OPTIONS
,
Place.Field.PAYMENT_OPTIONS
,
Place.Field.RESERVABLE
,
Place.Field.RESTROOM
,
Place.Field.REVIEWS
,
Place.Field.SERVES_BEER
,
Place.Field.SERVES_BREAKFAST
,
Place.Field.SERVES_BRUNCH
,
Place.Field.SERVES_COCKTAILS
,
Place.Field.SERVES_COFFEE
,
Place.Field.SERVES_DESSERT
,
Place.Field.SERVES_DINNER
,
Place.Field.SERVES_LUNCH
,
Place.Field.SERVES_VEGETARIAN_FOOD
,
Place.Field.SERVES_WINE
,
Place.Field.TAKEOUT
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.040 USD per each (40.00 USD per 1000) |
0.032 USD per each (32.00 USD per 1000) |
Contact Sales for volume pricing |
SKU: Text Search (ID Only)
Using a field mask or field list in your Text Search (New) request, you can limit the response to only those fields specified. This SKU is triggered when you only request the following fields:
Android:
Place.Field.DISPLAY_NAME
,
Place.Field.ID
,
Place.Field.RESOURCE_NAME
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.0 USD per each (0.00 USD per 1000) |
0.0 USD per each (0.00 USD per 1000) |
0.0 USD per each (0.00 USD per 1000) |
SKU: Text Search (Basic)
Using a field mask or field list in your Text Search (New) request, you can limit the response to only those fields specified. This SKU is triggered when you only request the following fields:
Android:
Place.Field.ACCESSIBILITY_OPTIONS
,
Place.Field.ADDRESS_COMPONENTS
,
Place.Field.ADR_FORMAT_ADDRESS
,
Place.Field.BUSINESS_STATUS
,
Place.Field.FORMATTED_ADDRESS
,
Place.Field.GOOGLE_MAPS_URI
,
Place.Field.ICON_BACKGROUND_COLOR
,
Place.Field.ICON_MASK_URL
,
Place.Field.LOCATION
,
Place.Field.PHOTO_METADATAS
,
Place.Field.PLUS_CODE
,
Place.Field.PRIMARY_TYPE
,
Place.Field.PRIMARY_TYPE_DISPLAY_NAME
,
Place.Field.SHORT_FORMATTED_ADDRESS
,
Place.Field.SUB_DESTINATIONS
,
Place.Field.TYPES
,
Place.Field.UTC_OFFSET
,
Place.Field.VIEWPORT
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.032 USD per each (32.00 USD per 1000) |
0.0256 USD per each (25.60 USD per 1000) |
Contact Sales for volume pricing |
SKU: Text Search (Advanced)
Using a field mask or field list in your Text Search (New) request, you can limit the response to only those fields specified. This SKU is triggered when you only request the following fields:
Android:
Place.Field.CURRENT_OPENING_HOURS
,
Place.Field.CURRENT_SECONDARY_OPENING_HOURS
Place.Field.INTERNATIONAL_PHONE_NUMBER
,
Place.Field.NATIONAL_PHONE_NUMBER
Place.Field.OPENING_HOURS
,
Place.Field.PRICE_LEVEL
,
Place.Field.RATING
,
Place.Field.SECONDARY_OPENING_HOURS
,
Place.Field.USER_RATING_COUNT
Place.Field.WEBSITE_URI
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.035 USD per each (35.00 USD per 1000) |
0.028 USD per each (28.00 USD per 1000) |
Contact Sales for volume pricing |
SKU: Text Search (Preferred)
Using a field mask or field list in your Text Search (New) request, you can limit the response to only those fields specified. This SKU is triggered when you only request the following fields:
Android:
Place.Field.ALLOWS_DOGS
,
Place.Field.CURBSIDE_PICKUP
,
Place.Field.DELIVERY
,
Place.Field.DINE_IN
,
Place.Field.EDITORIAL_SUMMARY
,
Place.Field.EV_CHARGE_OPTIONS
,
Place.Field.FUEL_OPTIONS
,
Place.Field.GOOD_FOR_CHILDREN
,
Place.Field.GOOD_FOR_GROUPS
,
Place.Field.GOOD_FOR_WATCHING_SPORTS
,
Place.Field.LIVE_MUSIC
,
Place.Field.MENU_FOR_CHILDREN
,
Place.Field.OUTDOOR_SEATING
,
Place.Field.PARKING_OPTIONS
,
Place.Field.PAYMENT_OPTIONS
,
Place.Field.RESERVABLE
,
Place.Field.RESTROOM
,
Place.Field.REVIEWS
,
Place.Field.SERVES_BEER
,
Place.Field.SERVES_BREAKFAST
,
Place.Field.SERVES_BRUNCH
,
Place.Field.SERVES_COCKTAILS
,
Place.Field.SERVES_COFFEE
,
Place.Field.SERVES_DESSERT
,
Place.Field.SERVES_DINNER
,
Place.Field.SERVES_LUNCH
,
Place.Field.SERVES_VEGETARIAN_FOOD
,
Place.Field.SERVES_WINE
,
Place.Field.TAKEOUT
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.040 USD per each (40.00 USD per 1000) |
0.032 USD per each (32.00 USD per 1000) |
Contact Sales for volume pricing |
SKU: Place Photo
A Place Photo SKU is charged for each request to the API.
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.007 USD per each (7.00 USD per 1000) |
0.0056 USD per each (5.60 USD per 1000) |
Contact Sales for volume pricing |
Pricing for the Places SDK for Android
About Autocomplete sessions
An Autocomplete session includes some Autocomplete requests (to retrieve suggestions on a place as the user types), and at most one Places Details request (to retrieve details about the place selected by the user). The same session token is passed to the Autocomplete and the subsequent Place Detail request. A session starts with the first Autocomplete request (which typically happens when the user starts typing). A Places Details call is made when the user has selected one of the Autocomplete suggestions. If a user does not select a suggestion, no Places Details call is made.
After a user has selected a place (ie, a Places Details call is made), you must start a new session using a new session token.
Autocomplete sessions can be generated from the following APIs:
- The Places API Place Autocomplete service or the Maps JavaScript API’s Places Autocomplete service. You need to design your application to provide session tokens (you may need to change your existing code).
- The Maps JavaScript API’s Autocomplete widget. Session-based billing is automatically enabled on those widgets, without any code change required.
A session token is good for one user session and should not be used for more than one user session. If you reuse a session token, the session is considered invalid and the requests are charged as if no session token was provided.
The Autocomplete requests and the Places Details requests using sessions are billed on different SKUs.
About Places Data SKUs
The three Places Data SKUs are: Basic Data, Contact Data, and Atmosphere Data.One or more Data SKUs are triggered for:
- Android: each request to
fetchPlace()
orfindCurrentPlace()
- iOS: each call to
fetchPlaceFromPlaceID:
orfindPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
- Web service: each Places request depending on the fields specified in the request
Data SKUs are always charged in addition to the base SKU for the request triggering them. For example, a Place Details request including Basic Data fields will be charged both under the Basic Data SKU and the Place Details SKU.
SKU: Basic Data
Using the fields parameter in your Place Details or Find Place request, you can limit the response to only those fields specified. Fields in the Basic category are included in the base cost of the Places request and do not result in any additional charge. The Basic Data SKU is triggered when any of these fields are requested:
-
Android:
Place.Field.ACCESSIBILITY_OPTIONS
,Place.Field.ADDRESS_COMPONENTS
,Place.Field.BUSINESS_STATUS
,Place.Field.DISPLAY_NAME
,Place.Field.FORMATTED_ADDRESS
,Place.Field.ICON_BACKGROUND_COLOR
,Place.Field.ICON_MASK_URL
,Place.Field.ID
,Place.Field.LOCATION
,Place.Field.PHOTO_METADATAS
,Place.Field.PLUS_CODE
,Place.Field.TYPES
,Place.Field.VIEWPORT
, orPlace.Field.UTC_OFFSET
. -
iOS:
GMSPlaceFieldFormattedAddress
,GMSPlaceFieldBusinessStatus
,GMSPlaceFieldID
,GMSPlaceFieldCoordinate
,GMSPlaceFieldName
,GMSPlaceFieldPhotos
,GMSPlaceFieldPlusCode
,GMSPlaceFieldTypes
, orGMSPlaceFieldViewport
-
Web service:
address_component
,adr_address
,business_status
,formatted_address
,geometry
,icon
,name
,permanently_closed
,photo
,place_id
,plus_code
,type
,url
,utc_offset
,vicinity
, orwheelchair_accessible_entrance
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
Places request cost + 0.00 USD |
Places request cost + 0.00 USD |
Places request cost + 0.00 USD |
SKU: Contact Data
Using the fields parameter in your Place Details or Find Place request for web services, or
an array of Place.Field
s for Android or iOS, you can
limit the response to only those fields specified. Fields in the Contact
category result in an additional charge. The Contact Data SKU is triggered
when any of these fields are requested:
-
Android:
Place.Field.CURRENT_OPENING_HOURS
,Place.Field.INTERNATIONAL_PHONE_NUMBER
,Place.Field.OPENING_HOURS
,Place.Field.SECONDARY_OPENING_HOURS
, orPlace.Field.WEBSITE_URI
-
iOS:
GMSPlaceFieldOpeningHours
,GMSPlaceFieldPhoneNumber
, orGMSPlaceFieldWebsite
-
Web service:
formatted_phone_number
,international_phone_number
,opening_hours
,current_opening_hours
,secondary_opening_hours
, orwebsite
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
Places request cost + 0.003 USD per each (+ 3.00 USD per 1000) |
Places request cost + 0.0024 USD per each (+ 2.40 USD per 1000) |
Contact Sales for volume pricing |
SKU: Atmosphere Data
Using the fields parameter in your Place Details or Find Place request, you can limit the response to only those fields specified. Fields in the Atmosphere category result in an additional charge. The Atmosphere Data SKU is triggered when any of these fields are requested:
- Android:
Place.Field.CURBSIDE_PICKUP
,Place.Field.DELIVERY
,Place.Field.EDITORIAL_SUMMARY
,Place.Field.DINE_IN
,Place.Field.PRICE_LEVEL
,Place.Field.RATING
,Place.Field.RESERVABLE
,Place.Field.SERVES_BEER
,Place.Field.SERVES_BREAKFAST
,Place.Field.SERVES_BRUNCH
,Place.Field.SERVES_DINNER
,Place.Field.SERVES_LUNCH
,Place.Field.SERVES_VEGETARIAN_FOOD
,Place.Field.SERVES_WINE
,Place.Field.TAKEOUT
, orPlace.Field.USER_RATING_COUNT
- iOS:
GMSPlaceFieldPriceLevel
,GMSPlaceFieldRating
,GMSPlaceFieldUserRatingsTotal
,GMSPlaceFieldTakeout
,GMSPlaceFieldDelivery
,GMSPlaceFieldDineIn
,GMSPlaceFieldCurbsidePickup
,GMSPlaceFieldReservable
,GMSPlaceFieldServesBreakfast
,GMSPlaceFieldServesLunch
,GMSPlaceFieldServesDinner
,GMSPlaceFieldServesBeer
,GMSPlaceFieldServesWine
,GMSPlaceFieldServesBrunch
orGMSPlaceFieldServesVegetarianFood
. - JavaScript: See Fields (Place details)
- Web service:
curbside_pickup
,delivery
,dine_in
,editorial_summary
,price_level
,rating
,reservable
,reviews
,serves_beer
,serves_breakfast
,serves_brunch
,serves_dinner
,serves_lunch
,serves_vegetarian_food
,serves_wine
,takeout
, oruser_ratings_total
.
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
Places request cost + 0.005 USD per each (+ 5.00 USD per 1000) |
Places request cost + 0.004 USD per each (+ 4.00 USD per 1000) |
Contact Sales for volume pricing |
SKU: Autocomplete – Per Request
The Autocomplete – Per Request SKU is charged for any of these calls or requests that do not include a session token:
- Android:
findAutocompletePredictions()
- iOS:
findAutocompletePredictionsFromQuery:
- JavaScript: the Maps JavaScript API’s Place Autocomplete service
- Web service: the Places API Place Autocomplete service
Calls made from an invalid Autocomplete session (for example, a session that reuses a session token) are also charged an Autocomplete – Per Request SKU.
Autocomplete requests from the Maps JavaScript API’s Place Autocomplete Widget may be charged an Autocomplete – Per Request SKU in case calls are made from an invalid Autocomplete session. This may happen when a user is typing multiple different addresses or copy/pasting different addresses into the widget and not always selects an autocomplete prediction.
MONTHLY VOLUME RANGE (Price per REQUEST) |
||
---|---|---|
0.00283 USD per each (2.83 USD per 1000) |
0.00227 USD per each (2.27 USD per 1000) |
Contact Sales for volume pricing |
SKU: Autocomplete without Place Details – Per Session
The Autocomplete without Place Details – Per Session SKU is charged for an Autocomplete session that does not include a Place Details request (within a few minutes of the beginning of the session).
MONTHLY VOLUME RANGE (Price per SESSION) |
||
---|---|---|
0.017 USD per each (17.00 USD per 1000) |
0.0136 USD per each (13.60 USD per 1000) |
Contact Sales for volume pricing |
Example
If your application issues these two calls in a single session:
Android
- findAutocompletePredictions() (.setQuery(”par”), .setSessionToken(XYZ))
- findAutocompletePredictions() (.setQuery(”paris”), .setSessionToken(XYZ))
iOS
- placesClient?.findAutocompletePredictions(fromQuery: "par" ...
- placesClient?.findAutocompletePredictions(fromQuery: "paris" ...
Web service
- Place Autocomplete Request (input=”par”, session_token: XYZ)
- Place Autocomplete Request (input=”paris”, session_token: XYZ)
On your bill, you will see this SKU listed (when viewing your bill by SKU):
- Autocomplete without Place Details – Per Session (price starting at 0.017 USD per session)
SKU: Autocomplete (included with Place Details) – Per Session
The Autocomplete (included with Place Details) – Per Session SKU is charged for an Autocomplete session that includes any of:
- Android: a call to
fetchPlace()
- iOS: a call to
fetchPlaceFromPlaceID:
- Web service: a Place Details request
The autocomplete request is available at no charge, and the subsequent Place Details call gets charged based on regular Place Details pricing.
A Place Details request generates Data SKUs (Basic, Contact, and/or Atmosphere) – depending on the fields that are specified in the request.
If you do not specify fields in the Place Details request, all Data SKUs are triggered (Basic, Contact, and Atmosphere).
Place Details ID refresh requests (requests that specify only the place_id
field)
during an autocomplete session are billed as SKU: Autocomplete
without Place Details – Per Session.
MONTHLY VOLUME RANGE (Price per SESSION) |
||
---|---|---|
0.00 USD | 0.00 USD | 0.00 USD |
Example
If your application issues the following three calls in a single session:
Android
- findAutocompletePredictions() (.setQuery(”par”), .setSessionToken(XYZ))
- findAutocompletePredictions() (.setQuery(”paris”), .setSessionToken(XYZ))
- fetchPlace() (with a
FetchPlaceRequest
including the Place ID, and the ADDRESS field)
iOS
- placesClient?.findAutocompletePredictions(fromQuery: "par" ...
- placesClient?.findAutocompletePredictions(fromQuery: "paris" ...
- fetchPlaceFromPlaceID:
(including the Place ID, and the
GMSPlaceFieldFormattedAddress
field)
Web service
- Places Autocomplete Request (input=”par”, session_token: XYZ)
- Places Autocomplete Request (input=”paris”, session_token: XYZ)
- Places Details (place_id, session_token: XYZ, fields:formatted_address)
On your bill, you will see these SKUs listed (when viewing your bill by SKU):
- Autocomplete (included with Place Details) – Per Session (billed at 0.00 USD)
- Place Details (price starting at 0.017 USD per session)
- Basic Data (billed at 0.00 USD)
SKU: Places Details
Places Details calls are charged as follows:
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.017 USD per each (17.00 USD per 1000) |
0.0136 USD per each (13.60 USD per 1000) |
Contact Sales for volume pricing |
The Places Details SKU is generated from these APIs:
- Android: Places SDK for Android
(
fetchPlace()
) - iOS: Places SDK for iOS
(
fetchPlaceFromPlaceID:
) - JavaScript:
Maps JavaScript API’s Place Details service (
getDetails
) - JavaScript:
Maps JavaScript API’s Place Autocomplete widget (
getPlace
) - JavaScript:
Maps JavaScript API’s Place SearchBox widget:
getPlaces()
method after the user selects a place result (icon: pin), *not* a query (icon: magnifier), as illustrated here: - Web service: Places API Place Details service
With the web API and services, the Place Details SKU is charged whether a session token is provided or not.
A Place Details call or request also generates Data SKUs (Basic, Contact, and/or Atmosphere), depending on the fields that are specified in the call or request. If NO fields are specified in the Place Details call or request, ALL Data SKUs are triggered, and you are charged for the Place Details call or request plus the cost of all the data.
Examples
- Make one of these calls or requests:
- Mobile: call
fetchPlace()
on Android orfetchPlaceFromPlaceID:
on iOS, and specify just theADDRESS
field - Web API or service: make a Place Details request and specify just the address field:
getPlaceDetails(fields: formatted_address)
- Place Details (price starting at 0.017 USD per session)
- Basic Data (billed at 0.00 USD)
- Mobile: call
- Make one of these calls or requests:
- Mobile: call
fetchPlace()
on Android orfetchPlaceFromPlaceID:
on iOS, and specify just thePHONE_NUMBER
field - Web API or service: make a Place Details request and specify the phone number field:
getPlaceDetails(fields: formatted_phone_number)
- Place Details (price starting at 0.017 USD per session)
- Contact Data (price starting at 0.003 USD per request)
- Mobile: call
- Make one of these calls or requests:
- Mobile: call
fetchPlace()
on Android orfetchPlaceFromPlaceID:
on iOS, and specify all the fields - Web API or service: make a Place Details request and specify all the fields (this type of
request is the default if you do not specify any fields):
getPlaceDetails()
.
- Place Details (price starting at 0.017 USD per session)
- Basic Data (billed at 0.00 USD)
- Contact Data (price starting at 0.003 USD per request)
- Atmosphere Data (price starting at 0.005 USD per request)
- Mobile: call
SKU: Find Current Place
Find Current Place is charged for calls to
findCurrentPlace()
(Android)
or findPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
(iOS).
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.030 USD per each (30.00 USD per 1000) |
0.024 USD per each (24.00 USD per 1000) |
Contact Sales for volume pricing |
Calls to findCurrentPlace()
(Android) or
findPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
(iOS)
also generate Data SKUs (Basic, Contact, and/or
Atmosphere), depending on the fields that are specified in the call.
Specify data fields to limit the response to only those fields. You are billed for the Find Current
Place call as well as the data requested.
Examples
- You call
findCurrentPlace()
(Android) orfindPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
(iOS) and specify just theADDRESS
field. On your bill, you will see these SKUs listed (when viewing your bill by SKU):- Find Current Place (price starting at 0.030 USD per request)
- Basic Data (billed at 0.00 USD)
- You call
findCurrentPlace()
(Android) orfindPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
(iOS) and specify thePHONE_NUMBER
field. On your bill, you will see these SKUs listed (when viewing your bill by SKU):- Find Current Place (price starting at 0.030 USD per request)
- Contact Data (price starting at 0.003 USD per request)
- You call
findCurrentPlace()
(Android) orfindPlaceLikelihoodsFromCurrentLocationWithPlaceFields:
(iOS) and specify fields from all three data-type buckets. On your bill, you will see these SKUs listed (when viewing your bill by SKU):- Find Current Place (price starting at 0.030 USD per request)
- Basic Data (billed at 0.00 USD)
- Contact Data (price starting at 0.003 USD per request)
- Atmosphere Data (price starting at 0.005 USD per request)
SKU: Places Photo
A Places Photo SKU is charged for:
- Android: calls to
fetchPhoto()
- iOS: calls to
loadPlacePhoto:
- JavaScript: to Places Library, Maps JavaScript API’s
Place Photos service when requesting data from the URLs returned by
PlacePhoto.getUrl()
to load image pixel data - Web service: requests to the Places API Place Photos service
For the JavaScript service, invoking the PlacePhoto.getUrl()
method does not
cause billing until the URL is actually used to obtain pixel data.
MONTHLY VOLUME RANGE (Price per CALL) |
||
---|---|---|
0.007 USD per each (7.00 USD per 1000) |
0.0056 USD per each (5.60 USD per 1000) |
Contact Sales for volume pricing |
Terms of Use restrictions
For information on terms of use, see the License Restrictions section of the Google Maps Platform Terms of Service.
Manage your cost of use
To manage your cost of use of the Places SDK for Android or to meet the demands of your production traffic, set daily quota limits on all requests to any API. Daily quotas are reset at midnight Pacific time.
To view or change quota limits for the Places SDK for Android:
- In the Cloud Console, open the Google Maps Platform Quotas page.
- Click the APIs drop-down and select the Places SDK for Android.
- To view the quota limits, scroll down to the Requests
card.
A table lists the quota names and limits. - To change a quota limit, click the Edit icon for that limit.
In the dialog that appears, in the Quota Limit field, enter the preferred billable daily quota limit (up to the quota limit, if any, specified by Google) and select Save.
If your API usage reaches your billable quota limit on any given day, your application will not be able to access the API for the remainder of that day.