AI-generated Key Takeaways
-
Merchant API utilizes automatic quota adjustments for
productsandaccountsservices based on usage, tracking requests per-method and applying quotas to specific CSS groups or accounts. -
Updates are limited to twice per day for products and once per day for sub-accounts.
-
You can request quota increases for services other than
productsandaccounts, exceeding daily quotas, or requiring temporary increases by contacting Google Merchant Center support. -
Exceeding quotas results in specific errors, such as
quota/request_rate_too_high(per minute) andquota/daily_limit_exceeded(per day), with instructions for checking and requesting increases. -
Resource representations have inherent limits, notably affecting
shippingsettingswith restrictions on shipping services, groups, labels, and table dimensions.
Your Merchant account and your use of Merchant API are subject to quotas and limits.
Update policy
Merchant API enforces the following policies in terms of updates:
- You can only update your products up to twice per day.
- You can only update your sub-accounts once per day.
Method call quotas
Merchant API automatically adjusts call quotas for your
products and
accounts based on your usage.
Here's how we track your quota usage:
- Quotas are per-method. For example, the
getmethod has a separate quota from theupdatemethod. - Each request counts once, regardless of its type. For example, we count a
listrequest of 250 items once, not as 250getrequests. - Quota is charged based on the user who makes the API request. If the user is a direct member of an advanced account, the quota will be charged at the level of the advanced account.
- Quotas apply to the Comparison Shopping Services (CSS) group, CSS, account, or sub-accounts against which you authenticate when you make the call. For example, if you authenticate as an advanced account, calls count against your advanced account's quota, but if you authenticate as one of your sub-accounts, calls count against the sub-account's quota.
The diagram shows the hierarchy of CSS groups, CSS, accounts, and sub-accounts.

Method call quota changes from Content API for Shopping
If you used Content API for Shopping, note the following method call quota changes in Merchant API:
- The absence of custom batching doesn't affect quota calculation. For example, a batch request containing 500 insert requests is charged as 500 individual insert method requests.
- Quota automation for accounts and products remains in place.
- To determine your current quota usage and limits, including automation and overrides, use the Quota.list method.
Check your call quotas
To check the current call quota and usage for an account, call
quotas.list
with the name of the account.
Automatic quota only applies to the products and accounts services. If you
need an increased quota for any other service, you're hitting your daily quota
for the products or accounts services, or you need a temporary increase for
the accounts or products services, contact
us with the following information:
- Your Merchant Center ID
- The methods you've reached your quota limits on
- An estimate of the number of calls per day you need for those methods
- The reason you need a quota increase
- Whether it's a temporary or permanent increase
We recommend checking your quotas periodically to ensure you have sufficient quota for your implementation, or how your quota is adjusted automatically.
Errors
If you exceed the quotas, you receive the following errors:
- Per minute:
quota/request_rate_too_high - Per day:
quota/daily_limit_exceeded
To view your quotas and usage, and request a per-day or per-minute quota increase, see Check your call quotas.
The following errors can't be resolved by automatic quota increases, and require you to request additional quota of items, feeds or sub-accounts:
too_many_items: Merchant quota exceededtoo_many_subaccounts: Maximum number of sub-accounts reached
Account limits
The
accounts.limits.get
and
accounts.limits.list
methods let you check
limits on account-level entities.
You can use these methods to check product limits.
To retrieve a specific product limit, for example, to get the Ads EEA quota of
an account, you need to specify the account ID and limit ID in your call to
accounts.limits.get.
The limit ID is a combination of the limit type and scope. For example,
products~ADS_EEA for products targeting ads in EEA, and products~ADS_NON_EEA
for products targeting ads outside of EEA.
Here's an example request to get the products~ADS_EEA limit for a given
account:
GET https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/limits/products~ADS_EEA
To learn about the available limit IDs for your account use
accounts.limits.list
with a filter for type="products":
GET https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/limits?filter=type%3D%22products%22
For more information about product quotas, see Understanding quotas in Google Merchant Center.
Resource representation limits
The following limits describe notable restrictions for certain string values and array fields within the resource representations used in the Merchant API. These limits are the same for both the Merchant API and their corresponding feature in the Merchant Center.
Note that this list of limits may not be complete. We won't extend these limits.
| Resource | Field | Limit |
|---|---|---|
shippingsettings |
Shipping services per country ( Shipping groups per shipping service ( Labels per shipping group ( Subtables per shipping group ( Number of rows or columns in a single rate table. Length of shipping labels. |
20 20 30 100 150 100 |
The number of rows or columns in a rate table affects the following array fields:
- Array fields within
rowHeadersorcolumnHeaders:prices[]weights[]numberOfItems[]postalCodeGroupNames[]locations[]rows[]cells[]