LeadStruct

We independently review everything we recommend. If you buy through affiliate links, we may earn commissions, which help support our review writing. Learn more

GoHighLevel Mailgun Setup Guide: Connect Custom SMTP the Right Way (2026)

August 26, 2026 · Esslam Mansour

GoHighLevel Mailgun Setup Guide: Connect Custom SMTP the Right Way (2026)

Connecting Mailgun to GoHighLevel takes about 20 minutes of active work, then a few hours of waiting for DNS to propagate. You create a Mailgun account, add a sending domain, publish the DNS records Mailgun gives you (SPF, DKIM, tracking, and MX), wait for verification, then plug the Mailgun credentials into GoHighLevel. This guide walks through every step, what it costs in 2026, and the setup mistakes that quietly send your email to spam.

LC Email vs Mailgun: which do you actually need

Before you set anything up, be honest about whether you need Mailgun at all. GoHighLevel ships with a built-in sender called LC Email (LeadConnector Email), which is powered by Mailgun's shared infrastructure. It works instantly, needs no DNS configuration, and bills at roughly $0.675 per 1,000 emails. For a lot of accounts, that is genuinely fine.

The tradeoff is that LC Email puts you on shared IP addresses alongside thousands of other GoHighLevel accounts, so your deliverability is partly tied to strangers' sending behavior. You connect your own Mailgun account when you want more control: consistent volume above a few hundred emails a day, detailed sending analytics, cleaner separation of your reputation from the shared pool, or agency setups where each client needs its own isolated sending domain. If you are still deciding whether the platform is right for you, read our full GoHighLevel review before you invest time in email infrastructure.

What Mailgun costs in 2026

Mailgun splits its lineup into a free tier and four paid Send plans. The free plan sends up to 100 emails per day with one sending domain and basic tracking, which is enough to test the integration but not to run real campaigns. Paid plans in 2026 run roughly: Basic at $15 per month for 10,000 emails, Foundation at $35 per month for 50,000 emails, Scale at $90 per month for 100,000 emails, and Enterprise with custom pricing. There is also pay-as-you-go pricing that lands near $0.80 per 1,000 emails at low volume, with the per-email rate dropping as you scale.

For most GoHighLevel agencies, the Foundation plan at $35 per month is the practical sweet spot: enough monthly volume to cover real campaigns and better support than the entry tier. Always confirm current numbers on the Mailgun pricing page, since email vendors adjust plans and overage rates regularly.

Before you start: what you need

Three things. First, a domain you own and can edit DNS for (through Cloudflare, GoDaddy, Namecheap, or wherever your records live). Second, a Mailgun account, which requires a credit card even on the free tier to verify you and unlock sending. Third, access to your GoHighLevel account settings at either the agency or sub-account level, depending on where you want the sending domain to apply. Decide upfront whether you will send from your root domain (yourbrand.com) or a subdomain (mg.yourbrand.com or send.yourbrand.com). The subdomain approach is the standard recommendation, and the reasons are covered further down.

Step 1: Create your Mailgun account and add a sending domain

Sign up at Mailgun and complete the verification. Inside the dashboard, open the Sending section and click Add New Domain. Enter your chosen sending domain or subdomain, for example mg.yourbrand.com, and pick your region. Mailgun offers a US region and an EU region, and this choice matters: the region sets which SMTP hostname and API endpoint you use later, and it cannot be changed after the domain is created. Most accounts sending to a North American audience should choose US. If you operate under EU data rules, choose EU and stay consistent everywhere.

Once the domain is added, Mailgun generates a set of DNS records unique to that domain. Keep this screen open, because the next step is copying those records into your DNS provider.

Step 2: Add the DNS records

Mailgun typically asks for five records: two TXT records, two MX records, and one CNAME. Here is what each one does and why it matters.

The first TXT record is your SPF record, which tells receiving mail servers that Mailgun is authorized to send on your domain's behalf. The second TXT record is your DKIM key, which cryptographically signs your messages so recipients can confirm they were not tampered with. The two MX records route bounce and reply handling through Mailgun. The CNAME is the tracking record that lets Mailgun measure opens and clicks. Copy each value exactly as shown, host and value, into your DNS provider.

Two cautions here. If you already send email from your root domain through another service, adding a second SPF record can break authentication, because a domain should have only one SPF record. In that case you merge the Mailgun include into your existing SPF entry rather than creating a new one. And if you use Cloudflare, set the tracking CNAME to DNS only (grey cloud), not proxied, or verification will fail.

Step 3: Wait for propagation, then verify

This is the step people rush, and rushing it is the single most common reason setups fail. DNS changes are not instant. After you save the records, wait at least 2 to 4 hours before you ask Mailgun to verify, and in some cases full propagation takes up to 24 to 48 hours. Come back, open your domain in Mailgun, and click Verify DNS Settings. When every record shows a green check, your domain is verified and ready. If some records are still failing after a day, recheck for typos, an extra SPF record, or a proxied CNAME.

Step 4: Connect Mailgun inside GoHighLevel

With the domain verified, grab your credentials from Mailgun. You can connect GoHighLevel in one of two ways. The native Mailgun integration uses your Mailgun private API key plus your verified sending domain. The generic SMTP option uses the SMTP hostname, port 587, and the SMTP username and password Mailgun lists under your domain's SMTP credentials. The API-key method is usually cleaner and gives GoHighLevel richer sending data.

In GoHighLevel, go to Settings and open the Email Services area (labeled around SMTP and Mailgun in most accounts). Click to add a service, choose Mailgun, then paste your API key and the exact sending domain you verified. Save. If you use the SMTP path instead, select the custom SMTP option and enter the host, port 587, username, and password. Match the region: a US Mailgun domain uses the US endpoint, an EU domain uses the EU endpoint. A region mismatch here is a frequent cause of authentication errors.

Step 5: Set your sending address and send a test

Your from address must sit on the domain you verified. If you verified mg.yourbrand.com, send as something like hello@mg.yourbrand.com, or configure the display so it reads cleanly to recipients while staying aligned with the authenticated domain. Then send a test email from a GoHighLevel workflow or a one-off email to an inbox you control, ideally one at Gmail and one at Outlook. Open the message, view the original or message details, and confirm SPF and DKIM both show as pass. If they pass and the email lands in the primary inbox rather than spam, your integration is working.

This same authenticate-then-verify discipline applies across GoHighLevel's other channels too. If you have not set up phone and SMS yet, our GoHighLevel Twilio setup guide covers the equivalent process for texting.

Common mistakes that break deliverability

Testing before DNS propagates is the number one failure. Add the records, then walk away for a few hours. Second is the duplicate SPF record: if your domain already has one, merge rather than add. Third is the proxied Cloudflare CNAME, which must be DNS only. Fourth is a region mismatch between your Mailgun domain and the endpoint GoHighLevel points at. Fifth, and easy to miss, is skipping warm-up. A brand new sending domain has no reputation, so blasting 10,000 cold emails on day one is the fastest way to get filtered. Start with small, engaged sends and increase volume gradually over one to two weeks.

One more: list hygiene. Mailgun and every inbox provider watch your bounce and complaint rates. Sending to old, unverified, or purchased lists tanks your reputation no matter how perfect your DNS is. Clean the list first.

Should you send from a subdomain?

Yes, in almost every case. Sending from a dedicated subdomain like mg.yourbrand.com instead of your root domain isolates your marketing and automation reputation from your primary business email. If a campaign runs into trouble, it does not drag down the deliverability of the messages your team sends from the root domain by hand. It also keeps DNS cleaner, since the Mailgun records live on the subdomain and do not collide with existing root-domain records for Google Workspace or Microsoft 365. Set up the subdomain once, and every future GoHighLevel campaign inherits that separation.

Where this fits in your GoHighLevel stack

Email is one piece of what GoHighLevel replaces. The platform bundles CRM, pipelines, funnels, calendars, SMS, and workflow automation, and its pricing gates client accounts rather than tools: Starter runs about $97 per month with 3 sub-accounts, Unlimited about $297 per month with unlimited sub-accounts and rebilling, and Agency Pro about $497 per month with SaaS Mode for reselling the platform. Mailgun plugs into any of those tiers. If you are weighing the platform against a funnel-first tool, our comparison of GoHighLevel vs ClickFunnels breaks down where each one wins.

The verdict

If you send low volume and want zero setup, LC Email is fine and you can skip all of this. The moment deliverability starts affecting revenue, or you are running email for multiple clients, connect your own Mailgun account so you control your sending reputation. The setup itself is not hard: add the domain, publish the five DNS records exactly, wait for propagation, verify, then connect the credentials in GoHighLevel and send a test. Do it on a subdomain, warm it up slowly, and keep your list clean. Get those basics right and your automation reaches the inbox instead of the spam folder.

Ready to try GoHighLevel?

Start the 14-day free trial and see if it replaces your tool stack.

Enjoyed this? Get the next one.

SaaS reviews, tutorials, and deals — straight to your inbox.

No spam. Unsubscribe anytime.

Get SaaS deals & tutorials in your inbox

Promotions, discounts, and new guides. Unsubscribe anytime.

No spam. Unsubscribe anytime.