Mailgun is mature developer-focused email infrastructure for transactional email: HTTP API and SMTP relay for outbound, inbound routing for reply-parsing and one-click actions, an email validation API, and granular event webhooks (delivered, opened, clicked, bounced, complained, unsubscribed). The permanent free tier covers 100 emails/day with one custom domain and API access; paid pricing starts at $15/month for 10,000. It was founded in 2010 and acquired by Sinch in 2020, and remains one of the reference implementations of API-first transactional email.
Mailgun works with WordPress three ways: an
official Mailgun plugin that connects via API, a native WP Mail SMTP integration, and standard SMTP for any mailer plugin. The per-domain credential model, the inbound routing engine, and the send-time event webhooks are the parts that distinguish Mailgun from a bare relay; they are the reason to reach for it.
Where Mailgun fits
High-volume developer-led projects. WordPress installs that are one part of a larger application (a headless build, a WooCommerce site backed by an API, a membership platform with a companion mobile app) can consolidate sending across the whole stack on one Mailgun account. The API-first design and per-message event webhooks match how application developers already think about email.
Sites that want inbound routing and validation on the same platform. Mailgun’s inbound routing accepts email at a subdomain and forwards it to a URL, a mailbox, or a stored message queue – useful for reply-parsing on notifications, ticket ingestion, or one-click email actions. Its email validation API scores addresses before you send. A site that needs either of these alongside outbound sending gets them on the same account, with the same credentials, and the same billing.
Agencies that run per-domain sending reputation. Mailgun’s credentials are per sending domain rather than per account, and Foundation and Scale plans include up to 1,000 sending domains. An agency running many client sites can isolate reputation per client without spinning up separate provider accounts, and per-domain webhooks feed each client’s own logging.
SMTP settings
| Setting | Value |
|---|---|
| Host | smtp.mailgun.org |
| Port | 587 (TLS/STARTTLS, recommended) |
| Encryption | TLS |
| Authentication | Login |
| Username | Domain-specific (found in Mailgun dashboard under your sending domain) |
| Password | Domain-specific SMTP password (not the account API key) |
Alternative ports: 465 (SSL) and 2525 (if your host blocks 587).
Mailgun uses per-domain SMTP credentials, not account-level credentials. Each sending domain has its own username and password, which you find in the Mailgun dashboard under the domain’s settings. Add Mailgun’s SPF and DKIM records to your domain’s DNS before sending production email. After configuring DNS, verify with swaks that messages authenticate correctly.
Pricing
Mailgun runs a permanent free plan capped at 100 emails/day. That is roughly 3,000/month, useful for a low-traffic informational site or for evaluation. Above that, every additional email goes to a paid plan.
| Plan | Price | Volume | Key inclusions |
|---|---|---|---|
| Free | $0/mo | 100 emails/day (~3,000/mo) | RESTful API, SMTP, 1 custom domain, tracking |
| Basic | $15/mo | 10,000 emails/mo | Webhooks, 1 custom domain, 2 API keys |
| Foundation | $35/mo | 50,000 emails/mo | Email templates, 1,000 sending domains, 5-day log retention |
| Scale | $90/mo | 100,000 emails/mo | 5,000 email validations, dedicated IP, send time optimisation, 30-day logs |
| Enterprise | Custom | Custom | SLA, dedicated support, custom infrastructure |
Overages on paid plans are billed pay-as-you-go: $1.80/1,000 on Basic, declining to $1.10/1,000 on Scale.
For context on where Mailgun’s paid entry sits: a site sending 500 transactional emails per month fits inside Mailgun’s free 100/day allowance. A site doing 12,000/month would pay $15/month on Basic. For the same outbound-only delivery need, Postmark is $15/10K and SMTP2GO’s Starter is $10/10K; both are cheaper if outbound is all a site needs. Mailgun’s $15 also buys the inbound routing and email validation capabilities that a typical WordPress site does not exercise. On the free-tier axis, 500/month costs nothing on Brevo’s free tier (300/day) or SMTP2GO’s free tier (1,000/month, 200/day cap), and approximately $0.50/month on Amazon SES ($0.10/1,000).
Mailgun’s free tier is daily-rate-shaped rather than monthly-cap-shaped: an evening burst of 150 password resets exhausts the day’s allowance even if the monthly average is well under the cap.
Free tier
The free tier is permanent. 100 emails/day (approximately 3,000/month) with full RESTful API and SMTP access, one custom sending domain, and Mailgun’s tracking dashboard. No trial expiry – Mailgun rewrote its free tier as a permanent tier in 2024, replacing the earlier trial-only framing this review previously used.
The exclusions matter for planning. Webhooks are on Basic and up, email templates are on Foundation, log retention is 5 days on Foundation and 30 on Scale, and email validation is a Scale-tier feature. At the free tier a WordPress operator gets sending and the dashboard, not the developer-tooling capabilities Mailgun is priced for. Sending stays on Mailgun’s shared IP pool. The catch buried in the shape: 100/day is a daily bucket, not a monthly average. An evening password-reset burst of 150 messages exhausts the day and the next 50 are rejected until the daily window rolls, even on a site that averages 30/day the rest of the month.
The tier fits a low-traffic informational site (a blog with contact form, a five-page business site) that never approaches the 100/day ceiling, or an evaluation account for a developer sizing up Mailgun before committing to Basic. It does not fit a WooCommerce store or membership site whose busy days routinely produce more than 100 messages; a single flash sale or an activation-day membership import breaks it.
WordPress integration
Three paths:
Official Mailgun plugin – The
Mailgun for WordPress plugin uses Mailgun’s HTTP API by default (not SMTP). Enter your API key and sending domain, and the plugin replaces wp_mail() to route all WordPress email through Mailgun’s API endpoint. API mode is generally more reliable than SMTP on hosts that restrict outbound connections, since it uses standard HTTPS rather than SMTP ports. See our list of WordPress plugins that connect to Mailgun for other compatible options.
WP Mail SMTP – WP Mail SMTP includes a native Mailgun integration. Select “Mailgun” as the mailer, enter the API key and sending domain. This is the better choice if you want WP Mail SMTP’s email logging, deliverability tracking, and fallback features alongside Mailgun’s sending infrastructure.
Generic SMTP – Any mailer plugin (Post SMTP, FluentSMTP, or WP Mail SMTP in “Other SMTP” mode) can connect to smtp.mailgun.org using the credentials above. This is the lowest-common-denominator path; it works everywhere but does not use Mailgun’s API features.
Verdict
Mailgun’s fit case is developer-led WordPress projects, agencies isolating sending reputation per client domain, and any site that wants inbound routing or email validation on the same platform as outbound. The per-domain credential model, the API-first design, the 1,000 sending domains on Foundation and above, and the inbound routing engine are its distinguishing features, and $15/mo covers all of them at 10,000 messages. At Foundation volumes (50K+ /mo), the pricing tightens further and Scale-tier features (dedicated IP, send-time optimisation, 5,000 monthly validations) start to matter.
Other shapes have other homes. A WordPress site that only needs outbound transactional email finds cheaper delivery-per-dollar on Postmark ($15/10K, transactional focus and high deliverability) or SMTP2GO ($10/10K, plain SMTP relay). A site that also needs newsletter or marketing email can consolidate on Brevo. AWS-native stacks route through Amazon SES at $0.10/1K. A WordPress-only operation with no external stack to unify may prefer a WordPress-native sending service whose interface lives inside wp-admin.
For the broader setup that places Mailgun inside the WordPress email stack, see the WordPress email setup guide.
Pricing verified 2026-08-06 against mailgun.com/pricing. SMTP settings verified against Mailgun documentation.

