MigoSMTP applies sending limits at the workspace level — not per individual SMTP account. This means all SMTP accounts on your workspace share a common pool of monthly quota and daily/hourly limits. Understanding how this shared model works helps you plan your usage across multiple accounts and integrations without hitting unexpected blocks.
How Limits Are Shared Across Accounts
| Limit Type | Scope | How It Works |
|---|---|---|
| Monthly quota | Workspace-wide | All SMTP accounts and API sends combined draw from a single monthly pool. Account A sending 5,000 emails leaves less quota for Account B. |
| Daily limit | Workspace-wide | The combined total of all emails dispatched by all SMTP accounts within a calendar day counts against the single daily limit. |
| Hourly limit | Workspace-wide | All accounts together cannot exceed the hourly limit in any 60-minute window. If Account A sends 80 emails in one hour and Account B tries to send 80, the second batch is queued after 70 emails (30k plan: 150/hr). |
Viewing Usage Per SMTP Account
While limits are workspace-wide, usage attribution is tracked per account — so you can see exactly which account is consuming your quota:
- Go to MigoSMTP → SMTP Accounts.
- The accounts list shows Sent this month for each account.
- Click any account to open the detail view showing:
- Total sent all-time
- Sent this month (contribution to workspace quota)
- Delivery rate for this account
- Last used timestamp
- Sum all accounts' monthly usage to see total workspace consumption versus your plan quota.
Monitoring Combined Usage via the API
// Get workspace-level usage (all accounts combined)
GET https://api.migosmtp.com/v1/account/usage
Authorization: Bearer YOUR_API_KEY
// Response includes combined totals:
{
"monthly_quota": 30000,
"monthly_used": 18450, // All accounts combined
"daily_limit": 1500,
"daily_used": 342,
"hourly_limit": 150,
"hourly_used": 23,
"by_smtp_account": [
{ "account_id": "acc_abc", "name": "Production", "monthly_used": 16200 },
{ "account_id": "acc_def", "name": "Staging", "monthly_used": 2250 }
]
}
Strategies for Managing Shared Limits
Strategy 1 — Prioritise Transactional Over Marketing
Configure your bulk marketing sends to check remaining quota before submitting large batches:
// Before any bulk marketing send, verify enough capacity exists
async function checkCapacityForBulkSend(recipientCount) {
const usage = await getWorkspaceUsage();
const safeBuffer = 500; // Reserve 500 emails for transactional
const available = Math.max(0,
usage.daily_remaining - safeBuffer
);
if (available < recipientCount) {
// Schedule for next day instead
return {
canSendNow: false,
available,
scheduleFor: usage.daily_reset_at
};
}
return { canSendNow: true, available };
}
Strategy 2 — Separate Workspaces for High-Volume Mixed Sending
If you send both high-volume marketing email AND time-critical transactional email, the most reliable approach is to have separate MigoSMTP subscriptions:
- Workspace A — Transactional-only subscription (lower plan is fine — OTPs and password resets have low volume)
- Workspace B — Marketing/bulk subscription (higher plan for volume capacity)
This completely eliminates the risk of marketing sends consuming capacity needed for transactional delivery.
Strategy 3 — Schedule Marketing Sends Off-Peak
If using a single workspace, schedule marketing bulk sends overnight (11 PM – 5 AM IST) when transactional volume is low. This ensures the daily limit is fresh for peak transactional hours (9 AM – 9 PM).
Per-Account Limits — What Is Configurable
| Limit | Configurable Per Account? | Notes |
|---|---|---|
| Monthly quota | No — workspace-shared | Cannot be split or allocated per account |
| Daily limit | No — workspace-shared | All accounts count toward the same daily cap |
| Hourly limit | No — workspace-shared | All accounts share the same hourly throughput |
| Account enabled/disabled | Yes — per account | Each account can be independently enabled or disabled |