This page lists various limits in the AdWords API along with the corresponding error that is thrown when the limit is exceeded. General product limits, such as the number of campaigns per account, is listed in the Google Ads Help Center.
Please note that UTF-8 encoding is used when calculating byte limits for string values.
Account
Description | Value | Error | Notes |
---|---|---|---|
Maximum number of Google Ads accounts in a manager account hierarchy | Varies | ManagedCustomerService |
See the following articles for details: |
Maximum number of test accounts in a manager account hierarchy | 50 | ManagedCustomerService |
N/A |
Maximum number of manager accounts a Google Ads account can be managed by | 5 | ManagedCustomerService |
See Manager account limits for additional details. |
Maximum number of levels in a hierarchy, from top-level manager account to bottom-most Google Ads account | 6 | ManagedCustomerService |
See Manager account limits for additional details. |
Maximum number of manager accounts that can directly manage another manager account | 1 | ManagedCustomerService |
See Manager account limits for additional details. |
Maximum number of pending manager account invitations in the same hierarchy | 20 | ManagedCustomerService |
See Manager account limits for additional details. |
Name length | 255 characters | ManagedCustomerService |
N/A |
Ad
Description | Value | Error | Notes |
---|---|---|---|
Headline length (normal / long) | 25 / 30 characters | PolicyViolationError or AdError.LINE_TOO_WIDE | Double-width characters count as two characters for the purpose of this limit. Longer text ads are allowed in some countries. Campaigns targeting countries that don't allow longer text ads will throw a PolicyViolationError with policyName "line_overflow" if the length is greater than normal maximum but smaller than the longer maximum. |
Description1 or description2 length (normal / long) | 35 / 38 characters | PolicyViolationError or AdError.LINE_TOO_WIDE | See above. |
Display URL length | 255 bytes | AdError.LINE_TOO_WIDE | Display URLs will be shortened if greater than 35 characters long, but this field allows for additional characters because the domain of the display URL and final URL must match. |
Final URL length | 2,047 bytes | AdError.URL_MALFORMED | A protocol prefix (such as "http://") is required for final URLs and is counted against this limit. |
Mobile Text Ad Final URL length | 500 bytes | AdError.TOO_LONG | See above. |
Mobile Image Ad Final URL length | 200 bytes | AdError.TOO_LONG | See above. |
Ad group
Description | Value | Error | Notes |
---|---|---|---|
Name length | 255 bytes | AdGroupServiceError. |
N/A |
Adwords user list
Description | Value | Error | Notes |
---|---|---|---|
Maximum number of members per Customer Match user list ID per request | 500,000 | CollectionSizeError. |
For efficient processing, pass no more than 500,000 members per Customer Match user list ID per request. |
Batch job
Description | Value | Error | Notes |
---|---|---|---|
Size of uploaded active batched operations in an account | 1 GB | BatchJobError. |
If you encounter this error, wait until the size of pending uploaded operations falls below the limit before creating new jobs. |
Maximum number of batch jobs created per day for a test account | 250 | N/A | N/A |
Budget
Description | Value | Error | Notes |
---|---|---|---|
Maximum number of shared budgets in an account | 11,000 | EntityCountLimitExceeded.ACCOUNT_LIMIT | The budgets limit is 1,000 more than the number of campaigns limit to allow for some room in reassigning budgets if needed. There is no restriction on the number of campaigns that can share a budget. |
Maximum number of unshared budgets in an account | 20,000 | EntityCountLimitExceeded.ACCOUNT_LIMIT | These are budgets that are associated with a specific campaign, and cannot be shared between campaigns. |
Campaign
Description | Value | Error | Notes |
---|---|---|---|
Maximum number of bidding strategies attached to ad groups per campaign | 1000 | EntityCountLimitExceeded. |
N/A |
Name length | 128 bytes | CampaignError.INVALID_ |
N/A |
Criterion
Description | Value | Error | Notes |
---|---|---|---|
Keyword length | 80 characters | CriterionError.KEYWORD_ |
N/A |
Placement URL length | 250 characters | CriterionError.PLACEMENT_URL_IS_TOO_LONG | Protocol prefixes (such as "http://") are stripped from placement URLs and are not counted towards this limit. |
Placement URL depth | 2 levels | CriterionError.INVALID_ |
Only applies to placements that target a site section (such as "www.example.com/foo/bar/"). Placements targeting a specific page are not subject to this limit (such as "www.example.com/foo/bar/hello/world.html"). |
Final URL length | 2,047 bytes | CriterionPolicyError.POLICY_ERROR | The protocol prefix (such as "http://") is counted towards this limit. |
Proximity radius | 800 km / 500 mi | CriterionError.INVALID_ |
N/A |
Maximum number of Shopping ad groups in a single request that modifies the structure of the
ProductPartition
tree. |
2 | AdGroupCriterionError. |
This limit does not apply to operations on ProductPartition criteria changes that
do not modify the structure of the tree. For example, a request that only modifies the bids of
existing partitions can contain operations for more than two Shopping ad groups.
If you want to modify the structure of the
|
Excluded IP blocks per campaign | 500 | EntityCountLimitExceeded. |
N/A |
Feed
Description | Value | Error | Notes |
---|---|---|---|
Feeds per account | 100 | EntityCountLimitExceeded.ACCOUNT_LIMIT | We recommend using only one feed per extension type whenever possible. |
Feed items per account | 5,000,000 | EntityCountLimitExceeded.ACCOUNT_LIMIT | N/A |
Feed attributes per feed | 30 | EntityCountLimitExceeded.ACCOUNT_LIMIT | N/A |
Feed items per matching function | 20 | EntityCountLimitExceeded.ACCOUNT_LIMIT | N/A |
General
Description | Value | Error | Notes |
---|---|---|---|
Operations per request | 5,000 | SizeLimitError.REQUEST_ |
For performance reasons we typically recommend passing no more than 2,000 operations per request. You can read more about batching operations in the Best Practices Guide. Since their data elements can be very large, extension setting services have a smaller 250 operations per request limit. |
Results per page | 10,000 | SizeLimitError.RESPONSE_SIZE_LIMIT_EXCEEDED | N/A |
Size of a POST request | 16 MB | HTTP Error 413 - Request entity too large | The maximum allowed content length for a POST body is 16MB. |
Start index of request | 100,000 | SelectorError.START_ |
To avoid this limit when retrieving a large result set,
|
Label
Description | Value | Error | Notes |
---|---|---|---|
Maximum number of labels that can be applied to accounts by a manager account | 200 | EntityCountLimitExceeded.ACCOUNT_LIMIT | N/A |
Maximum number of accounts a label can be applied to | 1,000 | EntityCountLimitExceeded.ACCOUNT_LIMIT | N/A |
Maximum number of labels that can be applied to entities (campaigns, ad groups, etc.) per account | 100,000 | EntityCountLimitExceeded.CAMPAIGN_LIMIT, EntityCountLimitExceeded.ADGROUP_LIMIT, etc. | Labels for all entity types count towards the same limit. |
Maximum number of labels that can be applied to a single entity (campaign, ad group, etc.) | 50 | EntityCountLimitExceeded.CAMPAIGN_LIMIT, EntityCountLimitExceeded.ADGROUP_LIMIT, etc. | N/A |
Offline Conversions
Description | Value | Error | Notes |
---|---|---|---|
Maximum number of offline click conversions that can be uploaded per API call | 2,000 | SizeLimitError.REQUEST_SIZE_LIMIT_EXCEEDED | For performance reasons, pass no more than 1,000 offline click conversions per API call. |
Targeting idea
Description | Value | Error | Notes |
---|---|---|---|
Seed keywords per stats request | 700 | CollectionSizeError. |
N/A |
Seed keywords per keyword ideas request | 200 | CollectionSizeError. |
N/A |
The maximum number of results for TargetingIdeaService.get() | 700 | N/A | N/A |
Keyword results returned by TargetingIdeaService | 800 | N/A | N/A |
Traffic estimator
Description | Value | Error | Notes |
---|---|---|---|
Keyword estimates per request | 2,500 | TrafficEstimatorError. |
N/A |
Sum of keywords x locations x languages in each campaign estimate request | 50,000 | TrafficEstimatorError. |
N/A |