Limits

Request, size, batch and rate limits enforced by the MailingCore API.

MailingCore enforces a small set of limits to protect deliverability and keep the platform fair. Each one returns a clear error when exceeded.

Request limits

LimitValueOn exceed
Recipients per batch send100400 BATCH_LIMIT_EXCEEDED
Built message size10 MB413 EMAIL_TOO_LARGE
Subject length998 characters400 validation
Contacts per bulk import1 000400 validation

A batch counts each recipient against your quota, so a batch of 100 uses 100 emails.

Monthly email quota

Every plan includes a monthly email allowance. Usage is checked on projected usage — a batch of N counts as N up front:

UsageBehavior
< 80%OK
80–100%OK + X-Quota-Warning header
100–110%Grace period — still sent, the owner is warned
> 110%Hard block — 429 QUOTA_EXCEEDED

Every send returns X-Quota-Limit, X-Quota-Used and X-Quota-Percentage. See Plans for per-plan allowances and Quota enforcement for the details.

Rate limits

ScopeLimit
Authenticated requests300 / minute per user
Auth endpoints (login, register, 2FA, password reset)15 attempts / 15 minutes

Rate-limited requests return 429. See Rate limits for headers and retry guidance.

Per-plan resource limits

Domains, team members and stored templates are capped per plan (for example Free: 1 domain / 1 member / 5 templates; Business: 20 / 50 / 500). See Plans for the full table.