Plans & Limits
Every MisarMail plan limit, what happens when you reach one, and how to raise it.
Surprise limits generate support tickets; documented ones generate upgrades. This page lists what each plan allows, what happens when you reach a limit, and how to get more.
Reaching a limit never deletes anything. Contacts, campaigns, domains and history all stay exactly where they are — only new actions of that specific type pause.
Sending volume
| Free | Pro | Max | Enterprise | |
|---|---|---|---|---|
| Emails per day | 500 | 10,000 | 50,000 | Negotiated |
| Emails per month | 15,000 | 300,000 | 1,500,000 | Negotiated |
| Price | $0 | $24.99/mo | $99.99/mo | Custom |
Feature availability
| Feature | Free | Pro | Max |
|---|---|---|---|
| REST API + MCP access | ✅ | ✅ | ✅ |
| Bulk contact import | — | ✅ | ✅ |
| AI integrations (MCP, ChatGPT, Gemini) | — | ✅ | ✅ |
| Ecommerce tracking | — | ✅ | ✅ |
| Newsletter monetization | — | ✅ | ✅ |
| Custom SMTP relay | — | — | ✅ |
| Dedicated sending IPs | — | — | ✅ |
| Advanced attribution | — | — | ✅ |
| Scheduled + exported reports | — | — | ✅ |
| Custom contact scoring rules | — | — | ✅ |
Count-based limits (contacts, campaigns, templates, automations, custom domains, API keys) vary by plan. Read your exact numbers from the API rather than hard-coding them:
curl https://api.misar.io/mail/v1/plan \
-H "Authorization: Bearer msk_your_key"/api/v1/plan-limits returns the exhaustive machine-readable view if you need every column.
Knowing before you're blocked
Successful metered calls return your remaining allowance in response headers:
x-misar-usage-feature: contacts
x-misar-usage-used: 920
x-misar-usage-limit: 1000
x-misar-usage-remaining: 80
x-misar-plan: free
MCP clients read these automatically and print a one-line notice once you pass 80% — a
warning while your work is still succeeding, rather than an error afterwards. From an MCP
client, run the upgrade tool at any time to see the full picture.
What happens when you reach a limit
The call returns 403 with a machine-readable body:
{
"success": false,
"error": "Contacts limit reached (1000/1000). Upgrade your plan or enable overage billing.",
"code": "plan_limit_exceeded",
"feature": "contacts",
"upgrade": {
"feature_label": "Contacts",
"usage": { "used": 1000, "limit": 1000, "remaining": 0 },
"current_plan": { "slug": "free", "name": "Free" },
"plans": [{ "slug": "pro", "name": "Pro", "price": "$24.99/month", "url": "https://mail.misar.io/pricing?plan=pro" }],
"overage": { "available": true, "enabled": false, "hint": "Prefer pay-as-you-go? Enable overage billing instead of upgrading." }
}
}Check for code === "plan_limit_exceeded" rather than the status code. The legacy fields
(limit, current, feature, upgrade_url) remain for backward compatibility.
MCP clients render this as a formatted upgrade card automatically.
Raising a limit
Enable overage billing. For count-based features (contacts, campaigns, templates, automations, landing pages, AI generations, inbound emails) you can pay only for what you use past the limit instead of upgrading. Set a spend cap so it can't run away: Settings → Billing.
Upgrade. See pricing. Upgrades apply instantly to the current period, and you can downgrade at any time.
If overage billing is on and you reach your spend cap, sends pause with
overage_spend_limit_reached: true. Raise the cap or upgrade to resume.
Rate limits
Separate from plan limits and unrelated to your plan. Exceeding them returns 429 with a
Retry-After header and no plan_limit_exceeded code.