Skip to content
Skip to main content

Agent Account usage limits

Last updated:

Agent Account usage is limited per plan across a few areas: how many accounts you run, storage, bandwidth, how much each account sends, message and attachment size, and retention. This page lists the limits for the Free and Full Platform plans, explains what counts toward each, and covers what your application sees when it hits one. For plan details and pricing, see Nylas pricing; to set stricter per-account caps yourself, use Policies, Rules, and Lists.

Agent Account limits are set per plan at the organization level, so they apply across every app in your organization. There are two plans: Free and Full Platform. The table lists what each one allows; for plan details and pricing, see Nylas pricing. You can set stricter per-account caps with a policy.

LimitFreeFull Platform
Agent Accounts (concurrent)320
Storage3 GB10 GB
Bandwidth (per month)3 GB10 GB
Emails sent (per month)3,00010,000
Emails sent (per account, per day)200Unlimited
Message size (inbound)50 MB100 MB
Message size (outbound)25 MB25 MB
Attachment size (inbound)50 MB50 MB
Attachments per message (inbound)1020
Inbox retention30 days365 days
Spam retention7 days30 days
Rules530
Lists1050
OveragesNoYes

Agent accounts, storage, bandwidth, and monthly emails are totalled across the whole organization; the daily send cap and retention apply to each account. The attachment-size and attachment-count limits apply to inbound mail; outbound messages have a single size limit, covered under Sending limits.

Every plan meters four resources, and the table above sets the ceiling for each.

  • Agent Accounts is the number you can have provisioned at once. It’s a concurrency limit rather than a running total, so you can delete and recreate accounts freely as long as you stay under the cap at any moment.
  • Storage is the most data your organization holds at rest at any one time: messages it receives and sends, attachments, drafts, and contact and calendar data. Deleting messages frees the space back up.
  • Bandwidth is the total data moved in and out over the month: attachments you upload, and the mail your accounts send and receive. Sending one message to many recipients counts once, not once per recipient, so a 100 MB attachment sent to 10 people is 100 MB, while 10 separate 100 MB messages are 1 GB.
  • Emails sent is every message your accounts send during the month, including calendar invitations. Both the per-account daily cap and the organization’s monthly count draw from this.

What happens at a limit depends on the plan. On Free, every limit is a hard cap: when you reach one, that activity stops until the period resets, so sends return HTTP 429, storage-bound actions return 403, and exhausting the bandwidth budget pauses inbound delivery. On Full Platform, the four metered resources can run past their included amounts and the overage is billed instead of being blocked. The daily send quota resets at 00:00 UTC; the monthly count and bandwidth budget reset on the first of each calendar month.

How each resource is measured for billing differs. Agent Accounts and storage are billed point-in-time: Nylas reads the value at the end of the billing month. Bandwidth is billed cumulatively, so the overage applies the moment you pass the included amount, because it’s metered continuously. Sent emails are totalled across the month for the whole organization.

ResourceIncludedHow the overage is billed
Agent Accounts20Point-in-time: account count at the end of the month.
Storage10 GBPoint-in-time: storage in use at the end of the month.
Bandwidth10 GB / monthCumulative: applies as soon as the included amount is exceeded.
Sent emails10,000 / monthTotalled across every account in the organization; volume pricing applies.

For current overage and volume pricing rates, see Nylas pricing.

How much an Agent Account can send is bounded by volume over time, by how fast you send, by the number of recipients on a message, and by message size. The three volume limits each run on their own counter and return HTTP 429 when exceeded: a per-account daily quota, an organization-wide monthly send allowance, and a monthly bandwidth budget. A per-second rate limit caps how fast your organization can send, applied separately to your Sandbox and production applications. Two per-message limits also apply: a recipient limit and a total size limit.

Every Agent Account has a daily send quota that resets at 00:00 UTC. When an account goes over it, send requests return HTTP 429 with the type too_many_requests until the counter resets. Nylas reserves the quota before sending and releases it if the send fails, so failed attempts don’t count against you. The Free plan caps each account at 200 sends per day; Full Platform has no daily per-account cap. You can set a stricter quota through a policy.

The quota counts every message an account sends, across these paths:

Beyond the per-account daily quota, your organization shares a monthly allowance that resets on the first of each calendar month (UTC): a total count of messages sent and a bandwidth budget for the data moved in and out. The send count tracks outbound messages only, while bandwidth covers both directions. On Free, exceeding either returns HTTP 429 on send, and exhausting the bandwidth budget pauses inbound delivery until the month resets. On Full Platform, the extra is billed as overage instead of being blocked. See the four metered resources for how bandwidth counts a message sent to many recipients.

Beyond the daily and monthly quotas, Agent Account sends are throttled by a per-second rate limit. Like your other limits, it applies at the organization level, and it’s pooled by application environment: all of your organization’s Sandbox applications share a combined 1 request per second, and all of your non-sandbox applications share a combined 5 requests per second. The cap is across every Agent Account and app of that environment in your organization.

When you exceed the per-second rate, send requests return HTTP 429 with the message "per-second rate limit exceeded". The limit is measured over a rolling one-second window, so a brief pause before retrying is enough to recover. If your application needs a higher rate, contact Nylas support to have your limit reviewed.

A single outbound message should address at most 50 recipients total across the to, cc, and bcc fields. To reach a larger audience, split the send into batches of 50 or fewer. Each batch still counts toward your daily and monthly send limits. If a message exceeds the recipient limit, it can be rejected by the sending infrastructure and surfaced as a send error.

Every outbound message must be 25 MB or less in total raw MIME. Raw MIME is the encoded message including its headers, body, and all attachments. This is the only size limit on sending: it’s the same on every plan and every send path, and separate from the plan-based size and attachment limits that apply to inbound mail (shown in the table above). Messages over the cap are rejected at send time.

Your storage limit is the most data your organization can hold at rest at any one time, enforced both per account and across the whole organization. It includes nearly everything an account keeps: received messages, the copies of messages it sends, attachments, drafts, and contact and calendar data. Deleting messages frees the space back up. On Free, reaching the cap blocks both sending and receiving with HTTP 403 until you free space; on Full Platform, storage past the included amount is billed as overage.

You can set a per-account storage cap below your plan maximum through a policy. See the configurable limits table for that field and the other per-account limits.

Retention controls how long mail stays in an Agent Account before Nylas deletes it, and it differs for the inbox and the spam folder. On the Free plan, inbox mail is kept for 30 days and spam for 7 days; on Full Platform, the inbox is kept for 365 days and spam for 30 days. Spam always clears sooner than the inbox so junk doesn’t sit against your storage.

Retention runs as a periodic prune that deletes messages older than the limit, and the spam period must be shorter than the inbox period. You can shorten either window per account with a policy, down from the plan default. See the configurable limits table for the policy fields.

Beyond the plan ceilings in the table above, a policy can set stricter per-account caps for attachment size and count, inbound message size, the number of messages received per day, and retention. The configurable limits table lists all nine policy fields and what each one controls.

Policies can also restrict the allowed attachment MIME types. Configure the attachment allowed-types policy field to allow or block specific types. An empty list allows every type, and wildcards such as image/* match a whole category.

Separately from quotas, Nylas can stop an Agent Account from sending in two cases that protect the wider sending ecosystem: a reputation-based pause triggered by a high bounce or complaint rate, and an abuse block applied by Nylas operations. Both are recoverable, and they surface differently in your application. For sender-reputation hygiene that applies to any mailbox, see Improving email deliverability and Email deliverability for Agent Accounts.

Nylas tracks the rolling bounce rate and complaint rate of mail sent from each Agent Account. When either rate climbs high enough, Nylas places the account under review; if the rate stays elevated, sending is paused until the issue is resolved. Nylas allows you to monitor deliverability in real time through the webhook triggers described below — subscribe to them to see the same delivery, bounce, and complaint events the rate calculation is based on.

  • Bounce rate is hard bounces divided by your recent representative send volume. Only hard bounces to addresses that don’t exist count. Transient soft bounces — full mailbox, temporary rejections, greylisting — do not. The denominator is a recent volume window, not a fixed time period, so the rate stays meaningful whether you send a hundred messages a day or a million.
  • Complaint rate is the number of times a recipient clicks Mark this email as spam or moves your email into the junk folder, divided by your recent representative send volume. Complaints are counted only against recipient domains that send complaint feedback to senders.
Bounce rateAccount stateWhat happens
Under 2%HealthyNormal sending.
5% or aboveUnder reviewSending continues; sustained elevated bounces will lead to a pause.
10% or aboveSending pausedOutbound send requests fail until Nylas clears the pause.
Complaint rateAccount stateWhat happens
Under 0.1%HealthyNormal sending.
0.1% or aboveUnder reviewSending continues; sustained complaints will lead to a pause.
0.5% or aboveSending pausedOutbound send requests fail until Nylas clears the pause.

What “under review” and “paused” look like to your code

Section titled “What “under review” and “paused” look like to your code”

Under review is silent to your application, while pausing returns immediate feedback through the send response. Here are the response shapes you may see:

StatusResponse bodyCause
400 Bad RequestForwarded message from the underlying infrastructure (for example, text mentioning an account-level suspension or that sending is paused for the account)Reputation enforcement paused sending
403 Forbidden"sender domain is not verified for sending"The from domain isn’t verified. Finish verification in Setup domains.
429 Too Many Requests"rate limit exceeded"A per-account or per-domain rate limit was hit — back off and retry, or raise quotas via policy
  • Validate recipient addresses before sending, and skip any address that has hard-bounced before.
  • Honor unsubscribe and list-removal requests immediately. The complaint threshold (0.1%) is small enough that even a handful of recipients reporting your mail can put a low-volume account under review.
  • Use double opt-in for any list you care about.
  • Wire up the four deliverability triggers (message.bounced, message.complaint, message.delivered, and message.rejected) and pause your own outbound logic if bounced, complaint, or rejected rates start climbing — you’ll see the problem in your own telemetry before Nylas tells you about it.
  • Authenticate your sending domain. Missing or misconfigured DKIM, SPF, or DMARC shows up as elevated bounces from recipient servers that refuse the mail outright.

Separately from reputation pauses, Nylas may apply an abuse restriction to a sender, sender domain, organization, application, or grant when our operations team identifies abusive or out-of-policy use. Active restrictions reject matching sends immediately. There is no threshold to stay under — restrictions are applied because of a signal we treat as abuse, not because of a quota you can wait out.

A restriction can target any of the following. When more than one matches, Nylas applies the most specific, with specificity running from most to least specific in this order:

  1. A single sender email address (most specific)
  2. A sender domain, including its subdomains
  3. An organization
  4. An application
  5. A specific Agent Account grant (least specific)

A more sender-specific restriction wins over a broader one: a restriction on a single sender address takes precedence over one on the whole domain. A restriction at the application level affects every Agent Account grant under that application, not just the one you happened to send from.

  • Contact support. Include the application ID, the grant ID, and one example error response so the abuse team can locate the restriction and walk through what triggered it.
  • Once the underlying issue is resolved, Nylas operations disables the restriction. Send requests start succeeding on the next attempt — there’s no propagation delay you have to wait through.