Klaviyo · Rate Limits

Klaviyo Rate Limits

Klaviyo enforces rate limits per account using a fixed-window algorithm with two windows running simultaneously: a 1-second BURST window and a 1-minute STEADY window. Each endpoint is assigned one of five tiers (XS through XL) and both of that tier's windows apply. The tier for a given endpoint is published on that endpoint's reference page, so there is no single account-wide number.

Klaviyo Rate Limits is the machine-readable rate-limit profile for Klaviyo on the APIs.io network, in the API Commons Rate Limits shape.

It captures 11 rate-limit definitions, across the XS, S, M, L, and XL tiers, measuring requests_per_second, requests_per_minute, and requests.

Limit state is signalled in the onSuccess, onExhaustion, retryAfter, and spelling_note response headers, and an exhausted limit returns HTTP 429.

The profile also includes response codes documented for throttled and throttled_title.

Tagged areas include Rate Limiting, Email, and SMS.

11 Limits Exhausted: HTTP 429 onSuccessonExhaustionretryAfterspelling_note
Transcribed from the provider's documentation on 2026-08-13 — developers.klaviyo.com/en/docs/rate_limits_and_error_hand....
View Source
Rate LimitingEmailSMS

Limits

XS tier — burst account/endpoint
requests_per_second · second
1
XS tier — steady account/endpoint
requests_per_minute · minute
15
Applied to the most expensive/sensitive endpoints. The API Keys API introduced in the 2026-07-15 revision is explicitly XS.
S tier — burst account/endpoint
requests_per_second · second
3
S tier — steady account/endpoint
requests_per_minute · minute
60
M tier — burst account/endpoint
requests_per_second · second
10
M tier — steady account/endpoint
requests_per_minute · minute
150
L tier — burst account/endpoint
requests_per_second · second
75
L tier — steady account/endpoint
requests_per_minute · minute
700
XL tier — burst account/endpoint
requests_per_second · second
350
XL tier — steady account/endpoint
requests_per_minute · minute
3500
Query-parameter limit (include / additional-fields) account/global
requests
Requests using the `additional-fields` or `include` query parameters are subject to a stricter limit that is enforced GLOBALLY across every endpoint using those parameters — not per endpoint. Klaviyo documents the existence and the global scope of this limit but does not publish the numeric value, so `limit` is null rather than guessed. Practical consequence: adding `include` to a high-volume loop can throttle unrelated calls elsewhere in your integration.

Sources

Work with this as data

Every rate limit here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for rate limits

4 MCP tools reach this
  • find_rate_limitsBrowse and filter every rate limit in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This rate limit
curl "https://apis.io/api/v1/rate-limits/klaviyo-rate-limits"
All rate limits
curl "https://apis.io/api/v1/rate-limits?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.