Skip to content
Mumara

Throughput · multi-layer · auto-pause

Hourly. Daily. Monthly. At every layer of the stack.

Sending quotas live at multiple layers in Mumara — per Sending Node, per Package, per User, per Administrator, per Campaign, per Drip, per Evergreen. Every quota uses the same hourly / daily / monthly model. -1 means unlimited. The most-restrictive cap wins at send time.

  • Three time windows — hourly speed, daily limit, monthly quota
  • -1 = unlimited at any layer, any field
  • Most-restrictive wins — every cap above the send is evaluated
  • Auto-pause + auto-resume when a limit is reached
quota stack · most-restrictive wins
Sending Node
5K/h
Package
2K/h · 25K/d · 250K/mo
User (override) binding
1.5K/h
Admin
inherit
Campaign
1.5K/h (matches User)

Result: the User's override at 1,500/h is the binding cap. The Package's 2K/h and Node's 5K/h are loose constraints. Mumara enforces the lowest applicable value.

The three time windows

Same model. Every layer. Every quota.

Every quota in Mumara uses the same hourly + daily + monthly trio. Set the values you care about; leave the rest at -1 (unlimited). Predictable shape across the platform — once you understand quotas at one layer, you understand them at every layer.

Hourly speed

Cap on emails per rolling hour. The primary throttle for deliverability — ISPs care less about your total volume than about your sends-per-hour. Use lower hourly caps during domain warmup, higher hourly caps once reputation is established. Most senders treat this as the actual throughput throttle.

Daily limit

Cap on emails per calendar day (resets at midnight in the installation timezone). The budget-discipline lever — caps how much a User can burn through in any 24-hour period regardless of their hourly rate. Hit it and sends pause until tomorrow. Optional auto-resume picks up where the campaign left off.

Monthly quota

Cap on emails per calendar month. The cost-discipline lever — the cap your reseller billing logic actually meters against. Combined with the Commercial-ESP credits feature, lets you offer overage with metered billing instead of hard cut-offs at the cap.

Where quotas live

Every layer that can cap your sends.

Sending quotas exist at every meaningful layer in the platform — node, package, user, admin, campaign, drip, evergreen. Each one solves a different problem. The most-restrictive cap among them wins at send time. Set what you need; leave the rest unlimited.

  • Per Sending Node

    Setup → Sending Nodes → Node detail

    Each SMTP / API gateway has its own hourly limit. Caps how much the platform tries to push through that specific provider — protects you from blowing past the ESP's own rate limit and getting throttled or banned.

  • Per Package

    Users → Packages → Package detail

    Hourly speed · daily limit · monthly quota at the tier level. Every User on this Package inherits these caps. The first place to put quota logic when running a multi-tenant operation — set the tier, assign Users.

  • Per User

    Users → User detail

    Inherit-from-package by default (the toggle on each limit field). Override per-User when one tenant needs a custom cap independent of their package. The escape hatch for exceptions to a tier policy.

  • Per Administrator

    Users → Administrators → Admin detail

    Each administrator account has its own hourly / daily / monthly send quotas. Useful when multiple admins share the same installation but should have different throughput allocations — bulk-sender admin caps vs transactional-sender admin caps.

  • Per Campaign

    Actions → Schedule → step 4 (Settings)

    Hourly Speed toggle on each scheduled campaign. Override the User's default rate for this specific send — slow it down for warmup, throttle for cold lists, ramp up for warm lists. Per-campaign control without changing the User's baseline.

  • Per Drip

    Actions → Drip Campaigns → drip detail

    Drips inherit User-level quotas by default. Each drip can also configure its own hourly speed so long-running sequences don't saturate the User's daily budget all at once.

  • Per Evergreen

    Actions → Evergreen Campaigns (addon)

    Each evergreen run honours an hourly-speed toggle independent of the User's base rate. Useful when running an evergreen on a fast cadence (hourly RSS-driven send) where you want each run rate-limited individually.

The cascade rule

The lowest cap that applies to the send wins.

When a User triggers a send, Mumara doesn't pick one quota and ignore the rest. Every cap along the path of that send is evaluated — Sending Node hourly, Package monthly, User daily, Admin hourly (if relevant), Campaign hourly. Whichever one is most restrictive at that moment becomes the binding constraint.

If the User's package allows 2,000/hour, but their override sets 1,500/hour, but the campaign sets 1,200/hour — the campaign's 1,200/hour wins. The User can't send faster than the campaign allows, the campaign can't send faster than the User allows, the User can't send faster than the package allows. The lowest applicable value is always the binding cap.

This sounds complicated but is actually the simplest possible model — you don't need to think about precedence or override ordering. Just set the cap at the layer that makes sense (Node for ESP-imposed limits, Package for tier policy, User for exceptions, Campaign for warmup). Mumara takes the minimum. If you want unlimited at any layer, set that layer's value to -1.

The auto-pause behaviour activates when a send hits its binding cap. The campaign pauses gracefully, the platform records which layer triggered the pause, and (if auto-resume is enabled in Application Settings) the campaign restarts when the binding window resets — next hour for hourly caps, next day for daily, next month for monthly. No manual intervention required for routine cap-hitting; explicit alerts when something unusual triggers it.

A real cascade in action

Same send. Three caps. The smallest one wins.

Walking through a concrete cascade — User Sarah on the Pro Package sends a campaign at 9am. Every layer's cap is evaluated against the current minute's outbound rate. The binding cap at this moment is the User's override.

  1. 1

    Sending Node · mumara-one-shared · 5,000/h

    Mumara ONE shared node configured for 5,000 sends/hour. Loose constraint — Sarah is nowhere near this.

  2. 2

    Package · Professional · 2,000/h · 25K/d · 250K/mo

    Pro tier defaults for every User on this package. Sarah inherits unless overridden.

  3. 3

    User override · [email protected] · 1,500/h

    binding cap

    Sarah's hourly inherit toggle is OFF; custom override at 1,500/h. This is below the Package and the Node, so it becomes the binding constraint.

  4. 4

    Campaign · "Q3 Newsletter" · hourly speed: inherit

    Sarah didn't toggle a per-campaign hourly speed, so this layer inherits the User's value. Effectively 1,500/h.

Result: Mumara sends at 1,500/hour. When Sarah's hour counter hits 1,500, the campaign pauses. The next hour (10am rolling-window reset) it resumes automatically (auto-resume ON in Application Settings). The daily counter (across all Sarah's campaigns) ticks up; when it hits 25,000 the campaign pauses for the day. Same logic, longer window.

What quotas buy you

The discipline layer between volume and reputation.

Sending quotas aren't a tax on volume — they're the mechanism that keeps high-volume sending sustainable. Without them, one runaway campaign can blow past ESP rate limits, exhaust your monthly budget mid-month, or saturate the queue for every other tenant on shared infrastructure.

quota enforcement
Multi-layer
quota enforcement
Node + Package + User + Admin + Campaign + Drip + Evergreen. Every layer can cap; the most restrictive wins at send time.
hourly / daily / monthly
Three windows
hourly / daily / monthly
Same model at every layer. Hourly is the deliverability throttle, daily is the budget cap, monthly is the billing cap.
opt-out convention
-1 unlimited
opt-out convention
Enter -1 in any quota field to disable the cap at that layer. Default behaviour is unlimited where you don't configure a value.
+ auto-resume
Auto-pause
+ auto-resume
Campaigns auto-pause when binding cap hits. Auto-resume is toggleable in Application Settings — campaigns restart when the cap window resets.

Why each layer matters

When each quota layer earns its keep.

Different layers solve different problems. Knowing which layer to set the cap at saves you from re-discovering the model under pressure.

  • Node hourly limit

    Layer
    Set on the Sending Node
    When to use
    When the ESP enforces a rate limit on its side and you want Mumara to respect it. Setting the cap below the ESP's stated rate prevents getting throttled or banned.
  • Package monthly quota

    Layer
    Set on the Package
    When to use
    When tier-based billing is the discipline. Pro tier = 250K/mo, Enterprise = unlimited. Every User on the tier inherits; assignments are package-driven, not per-User.
  • User custom override

    Layer
    Set on the User detail
    When to use
    When one specific User needs a different cap than their package allows. VIP client gets 500K/mo on the standard 250K Package; toggle off Inherit, enter the custom value.
  • Campaign hourly speed

    Layer
    Set in scheduling wizard step 4
    When to use
    When a single send needs a slower rate than the User's baseline — warming a cold list, ramping a new sending domain, cautious BFCM blast. Per-campaign throttle without changing the User.
  • Drip per-message rate

    Layer
    Set on the Drip definition
    When to use
    When a long drip sequence shouldn't saturate the User's daily budget all at once. Spread the sequence across the day by setting a lower hourly rate on the drip itself.
  • Evergreen run rate

    Layer
    Set on the Evergreen schedule
    When to use
    When evergreen runs fire on a fast cadence (hourly RSS-driven sends) and each individual run needs its own rate limit independent of the User's baseline.

What no-quota sending costs

The damage from not setting quotas anywhere.

Quotas feel like overhead until the first incident. Each of these is a real failure mode that quotas prevent at a stroke.

  • ESP throttle from unmetered node throughput

    Without a per-Node hourly limit, Mumara pushes as fast as it can — and gets throttled (or temporarily banned) by the ESP. Setting the Node's hourly limit BELOW the ESP's rate limit keeps you in good standing.

  • Monthly budget blown by mid-month

    Without a Package or User monthly quota, one User with a stale list and an evergreen campaign on hourly cadence can burn through their entire monthly budget by the 10th. Monthly caps are the discipline that prevents the "where did all our credits go" investigation.

  • One tenant saturates shared infrastructure

    Without per-Package hourly caps, one tenant can monopolise the sending queue for everyone else on shared nodes. Multi-tenant operators need tier-based hourly caps to ensure noisy neighbours don't become tenant-quality issues.

  • No warmup discipline = burned reputation on a new domain

    Without per-Campaign hourly speed, every new sending domain gets the same throughput as established ones — and the first ISP that sees a brand-new domain firing 5K/h flags it. Per-campaign warmup ramps are how senders introduce new domains without torching their reputation.

“We hit our monthly quota twice in the first 90 days on another platform. After moving to Mumara, the Package-level monthly cap plus per-User overrides means we know exactly which client is approaching their limit and we have headroom before incidents. The auto-pause on daily-limit-hit was the operational change that ended our overnight pager incidents.”

Verified review

Mumara customer

Trustpilot

Common questions

What buyers usually ask.

How does Mumara decide which cap applies when?

Every send checks every applicable cap. The lowest one binds. So if the Node says 5K/h, the Package says 2K/h, the User override says 1.5K/h, the Campaign says 'inherit' — Mumara sends at 1.5K/h, the User's override. Change any of those layers and the binding cap can change. The model is intentionally simple: take the minimum across all applicable caps. You don't need to think about precedence ordering.

What does -1 mean in a quota field?

Unlimited. -1 is the sentinel value for 'no cap at this layer'. Use it on Enterprise-tier Packages or for trusted internal Users where you don't want to enforce a numeric ceiling. Empty fields default to the platform-wide default (usually conservative); -1 explicitly disables the cap. The difference matters when Users hit zero limits unexpectedly.

What happens when a campaign hits its hourly limit?

The campaign pauses. Mumara records which layer's cap triggered the pause (visible in the campaign's stats and the activity log). If 'Automatically resume auto-paused campaigns' is enabled in Application Settings, the campaign resumes at the start of the next hour (rolling window). If auto-resume is disabled, the User has to manually resume from the campaign list. Notification settings let you alert the User by email when the pause happens.

How are daily and monthly windows calculated?

Daily is per calendar day in the installation's timezone, resetting at midnight. Monthly is per calendar month, resetting on the 1st. These are wall-clock windows, not rolling — so a User who hits daily at 11:55pm gets new headroom at 12:00am five minutes later. Hourly is rolling, so it's 'sends in the last 60 minutes' not 'sends since the top of the hour'.

Can Users see their own quota status?

Yes — the User's Dashboard shows current-period sending against their cap. Per-User reporting also surfaces how close they're approaching daily/monthly limits. For operators monitoring multi-tenant setups, the Admin dashboard aggregates quota utilisation across Users on each Package — useful for spotting which Users are approaching limits before they incident-out.

What about the Commercial-ESP "Allow overuse" toggle?

Commercial-ESP-only feature on Packages. When enabled, Users can send beyond their monthly quota by drawing down on credits (Enable Credits must also be toggled on). The credits-based billing pattern: meter overage instead of hard-stopping at the cap. Useful when you want to bill per-1K-emails-over-the-cap rather than enforce a hard ceiling. See [User Packages](/campaigns/features/user-packages/) for the Commercial-ESP feature set.

Does Mumara enforce ESP rate limits automatically?

No — you set the per-Node hourly limit explicitly to match whatever rate limit your ESP imposes. The platform doesn't auto-detect ESP rate limits because every ESP exposes them differently (or not at all). Best practice: when adding a new Sending Node, check the ESP's stated rate limit in their documentation and set the Node's hourly limit to ~80-90% of that value. Leaves headroom for the ESP's per-second smoothing.

Do drip and evergreen campaigns get their own quota windows?

Drips and Evergreen runs draw against the User's hourly / daily / monthly quotas like any other send. Each can ALSO configure its own hourly speed for finer rate control — useful when a long drip sequence would otherwise burn through the User's daily quota in a single execution. The drip/evergreen rate becomes another cap in the cascade; the most-restrictive still wins.

Do bounces and unsubscribes count against quota?

Every attempted send counts against quota when it leaves the platform — whether or not the recipient eventually opens, bounces, unsubscribes, or marks as spam. The quota meters attempted sends. If you want a bounce-aware throttle, the Commercial-ESP 'stop campaigns at bounce-rate threshold' on the Package does that — auto-pauses campaigns at a configurable bounce rate, separate from the numeric quota.

How do quotas interact with sending speed during warmup?

Warmup is about ramping volume on a new sending domain over days/weeks. Use per-Campaign hourly speed to throttle individual sends during warmup, then ratchet up over time. Some senders also reduce the User's daily limit during the warmup period and increase it as the domain establishes reputation. Both layers cooperate — the per-Campaign throttle handles immediate rate control, the per-User daily limit handles cumulative volume discipline.

Mumara Campaigns · Sending Quotas & Limits

Multi-layer throughput discipline. Hourly. Daily. Monthly.

Sending Quotas & Limits ship at every layer of Mumara Campaigns — Self-Hosted and Mumara Machine. Per-Node, per-Package, per-User, per-Admin, per-Campaign, per-Drip, per-Evergreen. The most-restrictive cap wins; auto-pause + auto-resume keep operations smooth.