Limits & Quotas
Overview of API rate limits, request payload limits, and daily Gmail quotas.
The following limits apply to accounts to ensure platform stability and protect fair usage. Pro plan upgrades increase these limits significantly.
API Rate Limits
| Endpoint | Free | Pro | Window | Keyed By |
|---|---|---|---|---|
POST /api/send | 30 req | 300 req | per minute | API key |
Gmail sender burst | 1 send/s personal · 2 sends/s Workspace | 1 send/s personal · 2 sends/s Workspace | 1-second sliding window | Connected Gmail account |
When a rate limit is hit, the API returns 429 Too Many Requests with a Retry-After header indicating how many seconds to wait.
The per-minute API-key limit and the Gmail sender burst limit are separate. Sendlib waits up to 3 seconds for a Gmail sender slot. If no slot becomes available, the request is recorded as failed and returns 429 with Retry-After: 1. Clients should serialize sends per connected Gmail account or retry 429 responses after the indicated delay. For larger recipient lists, use /api/batch.
Request Payload Limits
| Field | Free | Pro | Notes |
|---|---|---|---|
subject | 998 chars | 998 chars | RFC 2822 maximum |
html | 2 MB | 5 MB | UTF-8 encoded |
text | 1 MB | 2 MB | UTF-8 encoded |
to / cc / bcc | 50 each | 50 each | String or array of strings |
attachments | 5 files · 1 MB/file | 20 files · 10 MB/file | Base64-encoded. 25 MB total cap enforced by Gmail. |
Account & Daily Limits
| Resource | Free | Pro | Notes |
|---|---|---|---|
| Connected Gmail Accounts | 3 | 50 | Per Sendlib user account |
| Active API Keys | 5 | 100 | Per Sendlib user account |
| Monthly Sending Limit | 3,500 emails / month | Unlimited | Resets monthly based on your account sign-up date |
| Email Log Retention | 5 days | 90 days | Logs are automatically deleted after this period |
Personal Gmail (@gmail.com) | 200 emails / day | 500 emails / day | Resets daily at UTC midnight. Google hard cap is 500. |
| Google Workspace Account | 1,000 emails / day | 2,000 emails / day | Resets daily at UTC midnight. Google hard cap is 2,000. |
Daily sending quotas are set and enforced directly by Google's Gmail API. Sendlib monitors your send volume and resets your limit tracking daily at UTC midnight.
A successful Sendlib response means Gmail accepted the message and returned a message ID. It does not guarantee inbox placement: Gmail and the recipient's mail provider can still place the message in Spam based on sender reputation, message content, links, recipient engagement, and other signals. Use a consistent sender, include useful plain-text content, avoid link-heavy or image-heavy messages, and use an authenticated Google Workspace custom domain when dependable business deliverability is important.