For a typical WordPress site that needs password resets and contact form notifications to arrive reliably, Mailgun is paying for tooling you will not use. Mailgun is developer-focused email infrastructure: HTTP API and SMTP relay for transactional email, plus inbound routing, email validation, and granular event webhooks – features that matter to application developers building on email as a platform, not to most WordPress operators. Sinch acquired it in 2020.
Mailgun works with WordPress. An official plugin connects via API, WP Mail SMTP has a native Mailgun integration, and any mailer plugin can connect via SMTP. The question is not whether it works but whether it is the right fit. The permanent free plan covers 100 emails/day; above that, paid pricing starts at $15/month – for the same budget, Postmark or SMTP2GO are better defaults for most sites. Mailgun makes sense for high-volume deployments or when the infrastructure features (inbound routing, email validation APIs) are actually part of the application design.
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: a WordPress 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. The same 500/month volume 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 surface 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.
When Mailgun is the right choice
Mailgun fits well in two scenarios:
Developer-led WordPress projects. If a WordPress site is part of a larger application stack where Mailgun is already the email infrastructure, handling transactional email, inbound routing, and event webhooks across multiple services, routing WordPress email through the same Mailgun account consolidates email operations. The per-domain credential model and API-first design serve this use case well.
High-volume WordPress sites. At Foundation-tier volumes (50,000+ emails/month), Mailgun’s pricing becomes competitive and the infrastructure features (dedicated IP on Scale, send time optimisation, email validation) start to matter. A large WooCommerce store or a WordPress multisite network sending at this scale is in Mailgun’s target market.
When Mailgun is not
For the typical WordPress site (a blog, a small business site, a WooCommerce store doing a few dozen orders per day), Mailgun’s paid plans are overpriced relative to the alternatives. The developer tooling is irrelevant and the API features go unused. The 100/day free allowance covers a quiet site indefinitely, but a site that needs the paid tiers has cheaper homes for transactional email.
Better fits for typical WordPress transactional email:
- SMTP2GO – free tier (1,000/month, 200/day cap), SMTP relay, no developer tooling overhead
- Brevo – free tier (300/day), also handles marketing email if needed
- Postmark – transactional-only with high deliverability, $15/month for 10,000 emails
- Amazon SES – $0.10/1,000 for sites already on AWS
Mailgun is a good email infrastructure service. Most WordPress sites will find better value elsewhere, but Mailgun earns its price at the volumes and complexity levels it targets.
For the broader setup that places Mailgun inside the WordPress email stack, see the WordPress email setup guide.
Pricing verified June 2026 (free 100/day plan confirmed permanent, replacing the prior trial-only framing). SMTP settings verified against Mailgun documentation.

