Each API request verifies quotas have not been exhausted and consumes quotas. If any quota is exhausted, the request fails with a relevant error message. Each Data API request checks several quota buckets.
Cloud Project Quotas
The Cloud Console shows quotas for a Cloud Project: https://console.cloud.google.com/apis/api/analyticsdata.googleapis.com/quotas. These are the quotas you will see there.
Quota Name | Limit |
---|---|
Core Requests Per Day | 50,000 |
Core Requests Per Minute | 1,200 |
Core Requests Per Minute Per User | 600 |
Realtime Requests Per Day | 50,000 |
Realtime Requests Per Minute | 1,200 |
Realtime Requests Per Minute Per User | 600 |
Schema Requests Per Day | 50,000 |
Schema Requests Per Minute | 1,200 |
Schema Requests Per Minute Per User | 600 |
- One Project can send API requests for many Analytics Properties.
- The Cloud Console's quotas do not show Analytics Property Quotas.
Project Quota Categories
For the purposes of quota, the Data API has three request categories: Core, Realtime, and Schema. API requests to Core methods charge Core quotas. API Requests to Realtime methods charge Realtime quotas. One request will not consume both Core & Realtime quotas. These are the API methods and categories:
Quota Category | API Methods |
---|---|
Core | runReport, runPivotReport, batchRunReports, batchRunPivotReports |
Realtime | runRealtimeReport |
Schema | getMetadata |
Analytics Property Quotas
In addition to project quotas, each Core or Realtime request consumes property quotas.
Quota Name | Standard Property Limit | Analytics 360 Property Limit |
---|---|---|
Core Tokens Per Property Per Day | 25,000 | 250,000 |
Core Tokens Per Property Per Hour | 5,000 | 50,000 |
Core Concurrent Requests Per Property | 10 | 50 |
Core Server Errors Per Project Per Property Per Hour | 10 | 50 |
Realtime Tokens Per Property Per Day | 25,000 | 250,000 |
Realtime Tokens Per Property Per Hour | 5,000 | 50,000 |
Realtime Concurrent Requests Per Property | 10 | 50 |
Realtime Server Errors Per Project Per Property Per Hour | 10 | 50 |
- Concurrent requests are measured by the number of requests being simultaneously executed. To reduce your request concurrency, wait for previous requests to complete before sending additional requests.
- Server Errors are 500 and 503 codes. Server Errors quotas are only charged when a request Server Errors. When the Server Errors quotas are exhausted for a project and property pair, all requests to the property from the project are blocked.
Properties are allowed 120 potentially thresholded requests per hour. The
dimensions userAgeBracket
, userGender
, brandingInterest
, audienceId
,
and audienceName
are potentially thresholded. Thresholds are applied to
prevent anyone viewing a report from inferring the demographics or interests of
individual users.
Property Tokens Quota
Tokens are calculated with each request depending upon the request's complexity to complete. Most requests will charge 10 or fewer tokens. When a large number of quota tokens are consumed by a request, these factors are often responsible:
- Large number of rows
- Large number of columns
- Complex filter criteria
- Long date range
With each API request, you can specify "returnPropertyQuota": true
in the
request body to return the current property quota tokens status. This status
contains both the amount consumed by this request and the amount remaining
for each quota group. For example, consider specifying this parameter in
RunReportRequest.