Skip to content

Rate limits

Each API key has a per-minute request limit. It applies to every /v1 request — submitting and polling tasks.

Every response includes your current limit state:

Header Meaning
X-RateLimit-Limit Requests allowed per minute for this key.
X-RateLimit-Remaining Requests left in the current window.
X-RateLimit-Reset Unix epoch second when the window resets.

Over-limit requests return 429 with code serpapi.rate_limited and a Retry-After header (seconds to wait):

HTTP/1.1 429 Too Many Requests
Retry-After: 12
X-RateLimit-Remaining: 0
  • Honor Retry-After when present.
  • Use exponential backoff with jitter on 429, rather than a fixed retry.
  • Keep polling loops gentle (see Task lifecycle) — aggressive polling is the most common way to hit the limit.

Need a higher limit? Contact us from your dashboard.