API Limits and Quotas

This document describes the limits and quotas for the Management and Reporting APIs.

Overview

Google Analytics is used by millions of sites. We put limits and quotas on API requests to protect the system from receiving more data than it can handle, and to ensure an equitable distribution of system resources. Our policies are as follows and are subject to change.

This video discusses the best practices for general Google Analytics API quotas, that are shared between APIs, as well as quotas that are specific to either the Management APIs or the Reporting APIs.

General Quota Limits

The following quota limits are shared among the Management API, Core Reporting API, MCF Reporting API, Metadata API, and Real Time Reporting API.

  • 50,000 requests per project per day, which can be increased.
  • 10 queries per second (QPS) per IP.
    • In the Developers Console this quota is referred to as the per-user limit. By default, it is set to 1 query per second (QPS) and can be adjusted to a maximum value of 10.
    • If your application makes all API requests from a single IP address (i.e., on behalf of your users) you should consider using the userIP or quotaUser parameter with each request to get full QPS quota for each user. See the standard query parameters summary for details.

Management API

Write Requests

This quota applies to write (e.g., insert, update, patch, and delete) requests:

Write request errors

When implementing exponential backoff you can retry if you get 500 or 503 responses. This quota applies to failed write requests:

  • 50 failed write requests per hour.

Data Import

These quotas are specific to the Uploads resource:

  • Lifetime Extended Data Import storage limit (does not apply to hit data sent from the Collection APIs and SDKs.
  • 50 Data Sets per property.
  • 50 upload operations per property per day.
  • 1 GB per uploaded file.
  • Cost Data specific limits:
    • 100 MB per date (ga:date) per data set. For example, if you upload 50 MB of data for 2014-10-10 in one upload and 50 MB of data for 2014-10-10 in a second upload, then you will have reached the 100MB limit for 2014-10-10 for that data set.

Experiments

This quota is specific to Experiments:

  • 12 Experiments per view (profile). Experiments with the following status count towards this limit: count towards this limit: DRAFT, READY_TO_RUN, and RUNNING. Experiments that have a status of ENDED for more than one day don't count towards this limit.

Unsampled Reports

These quotas are specific to Unsampled Reports:

  • Requests creating unsampled reports are counted against the general Write Requests quota.
  • The API uses the same per-property, per-day token system as when creating an unsampled report through the web interface.

User Permission

This quota is specific to User Permissions:

  • 100 linked accounts per user.

These limits are applicable to user permissions in batched write (delete, insert, update) requests

  • 300 user permissions requests per batch request.
  • 30 batched user permission requests count as 1 write request.

Provisioning API

Write Requests

This quota applies to write requests (e.g. createAccountTicket) for the Provisioning API:

  • 50 requests per project per day.

Reporting APIs

Core and Realtime Reporting APIs V3

These quotas are specific to the Core Reporting API and Realtime Reporting API:

  • 10,000 requests per view (profile) per day.
  • 10 concurrent requests per view (profile).

MCF Reporting API

These quotas are specific to the Multi-channel Funnel Reporting API V3:

  • 10 concurrent requests per view (profile).

Exceeding Quota Limits

If quota is exceeded, the Google Analytics API returns an error for additional requests (HTTP status code 403 Forbidden) and a message indicating that the specific account has insufficient quota to proceed. See the terms of service for more information.

Requesting Additional Quota

You may only request quota increases for the number of daily project requests and daily write requests. If you think that your application requires additional daily quota, you can request more by following the instructions below.

To view or change usage limits for your project, or to request an increase to your quota, open the API Library in the Developers Console.

If you have enabled billing for your project, you can see the quota percentage for each API. You can view and change quotas from the API section's API Library and Enabled APIs links. Selecting an API from the API Library list or from the Enabled APIs page takes you to a page with overview, usage, and quota links for that API. Choosing Quotas lets you view and change quota-related settings. Choosing Usage provides you with usage statistics as well as response code and method information.

Make sure to review the information and follow the instructions in the quota request form before submitting an increase request.

For more details on quota management and how to fine-tune your application for quota usage, see Monitoring APIs and capping usage.