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.