Docs

Limits

Plan limits, rate limits and size limits enforced by the API.

View as Markdown

Plan limits

PlanInboxesCustom domainsSends per daySends per monthFooter
Free311003,000Yes
Builder1051,00010,000No
Growth50202,50040,000No
Team1505015,000150,000No
EnterpriseCustomCustomCustomCustomNo

Inbox and domain limits return 403 limit_exceeded; send limits return 429 limit_exceeded. Receiving mail is not counted against send limits. See Pricing.

Every refused limit also carries resolution, the action that unblocks it, and resolution_endpoint, the call that performs it: upgrade with POST /v1/billing/checkout for a plan limit, delete with the call that removes one of the things the limit counts (a rule, a blocklist entry), retry when the only answer is to wait. The code and the status do not change, so an integration that branched on limit_exceeded keeps working and one that reads resolution can act instead of asking a person.

Request limits

LimitValue
API requestsPer organization token bucket, 20 requests per second with bursts up to 40 by default. Over the limit: 429 rate_limit_exceeded with Retry-After.
Send burst10% of the daily send limit per 5 minutes: Free 10, Builder 100, Team 1,500. Over the limit: 429 rate_limited with Retry-After.
Failed authenticationsThrottled per client address.
JSON request body8 MB
Attachments per sent message6 MB in total
Recipients per sent message50 across to, cc and bcc
Inbound message size25 MB
Page sizelimit from 1 to 100, default 20
Idempotency-KeyUp to 256 characters, remembered for 24 hours
Webhook inbox_idsUp to 10 per webhook
Open event streams5 per API key
Draft send_atIn the future, at most 365 days ahead
MCP get_attachment5 MB; use REST for larger files
Inbox display_name200 characters