Skip to content
Get MCP AdsGet MCP Ads, home
Start free

Rate limits

What each advertising platform tolerates, what this gateway allows underneath it, and why a call is sometimes made to wait.

Every advertising API has a quota, and going past it does not fail politely. Meta blocks the ad account. Google Ads returns RESOURCE_EXHAUSTED for every customer of the same developer token at once. Pinterest throttles the whole application for the rest of the day.

So the gateway keeps its own ceilings underneath the platforms' own, and refuses a call before it can do that damage. A refusal here costs you nothing. Reaching the platform's limit costs you the account for an hour.

Three scopesLink to this section

ScopeProtectsWindow
Ad accountYour own account, which is what the platform blocks.Rolling hour
OrganisationYour neighbours, on the quotas every customer shares.Rolling hour
ApplicationEveryone, on quotas counted per developer token or per app.Hour or day

What each platform allows, and what we allowLink to this section

Requests, not tool calls. One tool call is worth several requests.

SourcePer ad account, per hourPer organisation, per hourApplication
Meta Ads180600not shared
Pinterest Ads100200800 per day
Google Ads30090012000 per day
TikTok Ads600180020000 per hour
Search Console6001800not shared
Google Analytics 44001200not shared

The platform limit behind each numberLink to this section

Meta AdsLink to this section

300 + 40 x active ads per ad account per hour for management calls, and 600 + 400 x active ads for insights, on the Development tier. Both are rolling one hour windows.

Going past it: Error 80000, 80003, 80004 or 80014, and the ad account is blocked until the window rolls.

Pinterest AdsLink to this section

Trial access allows 1,000 requests per day for the whole application. Standard access raises this to 100 requests per second per user, with 1,000 per minute on ads reads and 300 per minute on ads analytics.

Going past it: Requests are throttled for the rest of the day.

15,000 API operations per day per developer token on Basic access, shared by every customer of this gateway. Keyword planning is additionally capped at 1 request per second per customer.

Going past it: RESOURCE_EXHAUSTED, for every customer at once, until the day rolls over.

TikTok AdsLink to this section

10 queries per second, 600 per minute and 864,000 per day per developer app on the Basic level, shared by every customer of this gateway.

Going past it: Code 40100. A per-minute breach suspends calls for five minutes, a per-day breach until 00:00 UTC.

Search ConsoleLink to this section

1,200 queries per minute per site and per user for Search Analytics. URL Inspection is capped at 600 per minute and 2,000 per day per site, which no plan lifts.

Going past it: A quotaExceeded error until the window rolls.

Google Analytics 4Link to this section

40,000 core tokens per property per hour, 14,000 per project per property per hour, and 10 concurrent requests per property. Ten server errors per hour on a project and property pair block every request to that property.

Going past it: Quota exhausted, and on the error quota, a full block on the property.

How a call is countedLink to this section

A tool call is almost never one request. Clients paginate, cross several endpoints, and a health check makes a handful by design. So a call is charged an estimated cost rather than one, and the estimate is deliberately pessimistic: a report costs more than a list.

Kind of toolCharged as
list_accounts, *_list_*1 request
Most reads and writes2 requests
Health checks4 requests
Reports and insights5 requests
Detectors and monitors, which read a lot to answer once6 requests

When you are refusedLink to this section

  • The refusal names the scope that ran out, the number, and when it resets.
  • A refused call does not consume your monthly allowance.
  • Nothing queues. The gateway refuses rather than holding a request open, because a client that waits looks broken to the person using it.
  • Narrowing the date range is usually the fastest fix: a smaller report is fewer requests.
Esc

Type to search