Mailgun Alternative

The email API that won'tchange hands again

Mailgun has changed ownership four times. Each transition brought new priorities, new pricing, and uncertainty. If you're building a platform where your customers send email through you, you need infrastructure you can count on. Ark is bootstrapped, profitable, and built from scratch for multi-tenant email.

api.arkhq.io/v1/tenants
Healthy

Acme Corp

12,480emails/mo

3 domains

Healthy

StartupXYZ

4,210emails/mo

1 domain

Healthy

Agency Pro

31,090emails/mo

5 domains

DNS issue

ShopFront

8,750emails/mo

2 domains

Every tenant gets isolated domains, credentials, analytics, and suppression lists

Why platform teams look for Mailgun alternatives

Mailgun was born at Rackspace in 2010. Since then, it's changed hands repeatedly: Rackspace sold it to Thoma Bravo in 2017, who rebranded it under Pathwire, which was then acquired by Sinch in 2021. Each transition brought new management, new pricing models, and shifting product priorities.

For platform teams who depend on their email infrastructure daily, that kind of instability matters. You don't want to migrate your entire customer base off a provider because the new ownership decides to sunset features, raise prices, or stop investing in the product.

On the technical side, Mailgun's subaccount system was designed for internal separation, not true multi-tenant isolation. There's no guided domain onboarding, suppression lists operate at the account level, and building a proper multi-tenant email layer on top of Mailgun means writing a lot of glue code yourself.

Ark is bootstrapped and profitable. No investors, no acquisition roadmap. And multi-tenancy isn't bolted on — it's the entire architecture.

Multi-tenant architecture

Mailgun's approach to multi-tenancy is subaccounts. Each subaccount gets its own sending domain and API key, but the architecture is essentially flat. Subaccounts sit directly under your main account with limited hierarchy. There's no nested structure for organizing tenants by domain, no built-in per-tenant webhook routing, and no guided onboarding flow for customer domains.

Worse, Mailgun's multi-tenant features aren't available on lower-tier plans. The Foundation plan at $35/month doesn't include subaccounts at all. You need to move to Scale ($90/month) or higher to get the infrastructure you need for platform use cases, and even then the isolation is limited.

Ark takes a fundamentally different approach. The entire system is organized as a white label email API hierarchy: Platform, Tenants, Domains, and Email. When you create a tenant in Ark, everything is scoped to that tenant — their domains, credentials, webhooks, suppression lists, and analytics. There's no artificial limit on tenant count beyond what your plan allows for domains.

Mailgun approach

Main Account
Sub 1
Sub 2
Sub 3

Flat hierarchy · Limited isolation · Scale plan required

Ark approach

Your Platform

Tenant A

Domains
Webhooks
Suppressions

Tenant B

Domains
Webhooks
Suppressions

Tenant C

Domains
Webhooks
Suppressions

No tenant limit · Isolated by default · All plans

Mailgun subaccounts

  • Requires Scale plan ($90/mo+)
  • Flat hierarchy with limited isolation
  • Account-level suppression lists
  • No guided domain onboarding for customers

Ark tenants

  • Available on all plans (from $29/mo)
  • Hierarchical: Platform → Tenants → Domains → Email
  • Per-tenant domains, credentials, suppressions & logs
  • Guided DNS onboarding per provider

Domain management and onboarding

With Mailgun, adding a sending domain means authenticating it through the dashboard or API, getting a set of DNS records, and handing those to your customer. Mailgun gives you the records, but there's no guidance on where or how to add them. Your customers are left to figure out Cloudflare vs. GoDaddy vs. Route 53 on their own.

Ark provides guided domain onboarding. When a tenant adds a domain, Ark detects their DNS provider and shows them the exact steps for their specific provider. There are dedicated setup guides for Cloudflare, Vercel, Namecheap, Porkbun, GoDaddy, DigitalOcean, Netlify, and more.

After the records are added, your customer calls the verify endpoint. Ark checks the DNS configuration and confirms everything is set up correctly. If something is wrong, the API tells you what's missing. There's also a DomainDNSError webhook event that fires if DNS records become invalid after initial setup.

For a complete walkthrough of DNS setup and reputation isolation for multi-tenant platforms, see our guide to sending email from your customer's domain.

Domain Setup

Sending domain

notifications.acmecorp.com
CF
Cloudflare detected

We'll show Cloudflare-specific DNS instructions

Required DNS records

TXTSPF Verified
CNAMEDKIM Verified
CNAMEReturn PathPending
CloudflareVercelGoDaddyNamecheapRoute 53Porkbun+5 more
Suppression Lists — Per Tenant
Acme Corp3 suppressed
[email protected]Spam complaint
StartupXYZ1 suppressed

Each tenant's suppression list is independent — Acme's bounces don't affect StartupXYZ

Hard bounce

Instant suppression

Spam complaint

Instant suppression

Soft bounce

18 retries over 48h

Deliverability and reputation isolation

Mailgun's shared infrastructure means your tenants' sending reputation is partially tied to the behavior of other senders on the same IP pool. One bad actor on a shared IP can drag deliverability down for everyone. Mailgun offers dedicated IPs, but they start at additional cost and require warming.

More importantly, Mailgun's suppression lists operate at the account level. If a recipient bounces for one subaccount, that suppression can bleed across to others. For platform teams managing hundreds of customers, this creates a real deliverability management headache.

Ark handles suppression per-tenant by default. Hard bounces trigger immediate suppression scoped to the tenant that sent the email. Spam complaints result in instant suppression. Soft bounces are retried up to 18 times over roughly 48 hours before the address is suppressed. None of this crosses tenant boundaries.

On the Scale plan, tenants can get dedicated IPs if they need full IP reputation control. But for most platforms, the combination of per-tenant domains and automatic per-tenant suppression is what actually keeps deliverability healthy.

Pricing comparison

Mailgun doesn't include multi-tenant features at lower tiers. Ark includes everything on every plan.

Mailgun Foundation

No multi-tenant features

$35/month

50K emails · Scale plan at $90/mo for subaccounts

  • 50,000 emails included
  • ~$0.80 per 1K overage
  • 5-day log retention
  • Email validation API (extra)
  • Subaccounts (Scale plan only)
  • Guided DNS onboarding
  • Per-tenant analytics
  • Two-level webhooks
Recommended

Ark Starter

Full multi-tenant features

$29/month

50K emails · 10 domains · Unlimited tenants

  • Unlimited tenants
  • Up to 10 domains
  • Unlimited team members
  • Full message logs per tenant
  • Guided DNS onboarding
  • Per-tenant analytics
  • Two-level webhooks
  • 50K emails/month

As you scale, Ark's Growth plan ($99/month) supports 100 domains and 250K emails. The Scale plan ($499/month) supports 1,000 domains and 2M emails with dedicated IP options.

Send an email via Ark API

$ curl -X POST \

https://api.arkhq.io/v1/tenants/{id}/messages

{

"to": "[email protected]",

"from": "[email protected]",

"subject": "Order confirmed",

"html": "<h1>Thanks!</h1>"

}

# 200 OK — message queued

Official SDKs

66 REST endpoints
/emails/emails/batch/tenants/{id}/domains/tenants/{id}/suppressions/tenants/{id}/webhooks/tenants/{id}/credentials/tenants/{id}/usage/platform/webhooks

Developer experience

Mailgun has a mature API that developers generally like. It was one of the first email APIs to prioritize developer experience, and the documentation is solid. Their client libraries cover Python, Ruby, PHP, Java, Go, and C#. That's a genuine strength of a product that's been around since 2010.

The challenge is that Mailgun's API wasn't designed for multi-tenant use cases. There's no tenant-scoped endpoint structure. You end up building your own routing layer to map customers to subaccounts, track usage per customer, and manage credentials across your customer base.

Ark's API is tenant-scoped from the ground up. There are 66 endpoints covering the full lifecycle: tenants, domains, credentials, messages, webhooks, suppressions, usage tracking, and logs. Official SDKs are available for Python, Node.js, Ruby, and Go.

Ark also ships with SMTP support for platforms that need it. Self-hosted tools like Listmonk, Coolify, or Metabase can send through Ark by changing one SMTP configuration.

AI-native: MCP support

26 MCP tools for AI assistants. Manage email infrastructure using natural language.

Per-customer analytics and debugging

When a customer asks "why didn't my email get delivered?", you need to answer that question fast. With Mailgun, log retention depends on your plan — the Foundation plan gives you 5 days, and even the Scale plan only retains logs for 30 days.

Ark provides per-tenant message logs, delivery status tracking, and bounce analysis out of the box. Every message sent by a tenant is queryable through the API with full delivery details.

Webhooks are where Ark really differentiates for platforms. You get two levels: tenant-level webhooks that fire for a specific tenant's events, and platform-level webhooks that fire for all tenants with a tenant_id field in the payload. With Mailgun, you get a single webhook endpoint per event type, with no built-in tenant routing.

Message Events — Tenant A
Last 24 hours
delivered[email protected]2m ago
opened[email protected]5m ago
bounced[email protected]12m ago
delivered[email protected]18m ago
clicked[email protected]23m ago
Platform webhook payload

{ "event": "delivered",

"tenant_id": "ten_abc123",

"message_id": "msg_xyz",

"recipient": "alice@..." }

1

Mailgun webhook URL per event type

Ark webhooks (per-tenant + platform)

Who should switch to Ark

Platform teams worried about stability

You've watched Mailgun change hands from Rackspace to Thoma Bravo to Pathwire to Sinch. You want email infrastructure from a company that isn't for sale.

Teams managing many subaccounts

You've hit the limits of Mailgun's flat subaccount model. You need true tenant isolation with per-tenant domains, credentials, webhooks, and suppression lists.

Teams building multi-tenant layers

You've built your own multi-tenant email management on top of Mailgun's API. You want infrastructure where multi-tenancy is native, not something you construct yourself.

Teams needing guided domain onboarding

Your customers struggle with DNS setup. You need a system that detects their DNS provider and walks them through the exact steps to authenticate their sending domain.

When Mailgun is still the right choice

We're not going to pretend Ark is the right tool for everyone. Mailgun has genuine strengths that make it the better choice for certain use cases.

If you need inbound email parsing, Mailgun has a robust inbound routing engine that can receive emails, parse them, and forward the parsed content to your application via webhooks. This is a core Mailgun feature that Ark doesn't offer. If inbound email processing is central to your product, Mailgun is a strong choice.

If you need advanced email routing, Mailgun's routes feature lets you define rules for incoming messages — matching by recipient, header, or catch-all patterns, then forwarding, storing, or triggering webhooks. This is particularly useful for helpdesk and ticketing applications.

If you need an email validation API, Mailgun offers a dedicated email validation service that checks addresses for deliverability before you send. It's a separate product with its own pricing, but it integrates well with their sending API. Ark focuses on sending and doesn't offer validation.

If you're sending from a single domain and it's working, don't switch for the sake of switching. Mailgun is a capable email API for single-tenant use cases. Ark is for teams that need multi-tenant infrastructure and have outgrown what Mailgun's subaccounts can provide.

What migrating from Mailgun looks like

Switching email providers is never trivial, but the migration from Mailgun to Ark is straightforward because the concepts map cleanly.

1

Create your Ark account and set up tenants

Map your Mailgun subaccounts to Ark tenants. Each tenant gets created via the API or dashboard. Attach metadata to store your internal customer IDs.

2

Add sending domains per tenant

Use the API to add each customer's domain to their tenant. Ark returns exact DNS records needed. Customers follow guided setup for their specific DNS provider.

3

Update your API integration

Replace Mailgun API calls with Ark's REST API or SMTP endpoint. The message format is similar. If you use SMTP, it's a configuration change.

4

Set up webhooks

Configure platform-level webhooks for all tenants, or per-tenant webhooks for customers that need their own endpoints. Events cover delivery, bounces, opens, clicks, and complaints.

5

Run both in parallel, then cut over

Send a percentage of traffic through Ark while keeping Mailgun active. Monitor deliverability and events. Once confident, move all traffic to Ark.

Most teams complete the migration in a few days for the integration work, plus whatever time their customers need to update DNS records.

FAQ

Tired of ownership changes?

Try the email API built by a team that isn't going anywhere. Bootstrapped, profitable, and purpose-built for platforms. Start your 7-day free trial. No credit card needed.