Skip to content
Pidgely Docs

Get started

Rate limits & quotas

The API allows 10 requests per second per account by default. Plans set daily and monthly sending quotas; deliveries are paced per account.

View as Markdown

Three different limits apply to an account. They protect the platform and your sender reputation, and each one fails in its own, recognizable way.

Limit Applies to When exceeded
Request rate API requests per second, per account 429 rate_limit_exceeded with Retry-After
Sending quotas Recipients accepted per UTC day and per month 429 daily_quota_exceeded / monthly_quota_exceeded
Delivery pacing How fast accepted mail leaves the MTA Nothing fails: deliveries are spread over time

Request rate

The default is 10 requests per second per account, with bursts up to twice that. The limit is shared by every API key and dashboard session of the account. When you exceed it:

HTTP
HTTP/1.1 429 Too Many Requests
Retry-After: 1
Content-Type: application/json

{"statusCode":429,"name":"rate_limit_exceeded","message":"Too many requests. Please limit the number of requests per second."}

Wait for the number of seconds in Retry-After, then retry. There are no ratelimit-* headers.

To send many emails, use POST /emails/batch: one request carries up to 100 emails, so 10 requests per second can submit up to 1,000 emails per second. If you need a higher request rate, contact support.

Sending quotas

Quotas count accepted recipients: an email to three recipients uses three. Recipients that are on your suppression list are not delivered and do not count.

  • The daily quota resets at 00:00 UTC.
  • The monthly quota follows the UTC calendar month.
  • A batch that would go over the daily quota is rejected as a whole.
  • Quota errors do not include Retry-After. Broadcasts that hit a quota pause and resume automatically the next UTC day (Broadcasts).

Plans

Plan Emails per month Daily cap Sending domains
Free 10,000 500 1
Starter 50,000 — 3
Growth 250,000 — 10
Scale 1,000,000 — Unlimited

Prices and overage are on pidgely.com/#pricing. New accounts start in a sandbox on the Free plan: the sandbox applies the Free plan's quotas and domain limit, with no other restriction on what you can send or to whom.

Delivery pacing

Accepting an email and delivering it are separate steps. Each account delivers at its own contracted rate: a burst from one customer is spread over time instead of starving everyone else, and receiving servers see a steady stream. You don't need to throttle on your side: send as fast as the request rate allows and Pidgely schedules the deliveries.

Reputation guard

To protect your domain and the shared IPs, sending is paused automatically when, over the last 7 days:

  • the bounce rate is above 4% (evaluated once at least 200 messages were delivered or bounced), or
  • the complaint rate is above 0.1% (evaluated once at least 1,000 messages were delivered).

While paused, new sends get 403 validation_error (sending is paused for this account: …) and queued messages wait. Clean your list (see Deliverability) and contact support to resume.