RocketLauncher AI

Deliverability Guide

Why Your GoHighLevel Emails Go to Spam (and How to Fix It)

By Marnix Geerkens. Published 2026-05-31. Updated 2026-05-31.

DNS steps and warm-up schedule last verified 2026-05-31 against GoHighLevel's LC Email and Mailgun setup.

In short

Your GoHighLevel emails go to spam mostly because the new sending subdomain has no reputation yet, often made worse by missing SPF, DKIM, or DMARC. Authenticate the domain with all three records, then warm it slowly. Budget 6 to 8 weeks for full trust. This is the exact path we run on RocketLauncher.

  • A fresh LC Email subdomain has zero sender reputation, so Gmail treats it as a stranger.
  • Fix SPF, DKIM, and DMARC first, then warm the domain slowly. Plan 6 to 8 weeks for full trust.
  • A dedicated sending domain keeps your reputation in your own hands and protects your main domain.

Why this happens in the first place

When you turn on LC Email in GoHighLevel, your account sends through a fresh subdomain on Mailgun. That subdomain is brand new. Gmail, Outlook, and Yahoo have never seen it send a single message. To them it is a total stranger, and strangers get watched closely.

Here is the part most people get wrong. They assume their main domain's good reputation carries over. It does not. A subdomain earns its own trust from scratch.

"the lc subdomain is a fresh sender with zero reputation. Gmail doesnt carry over trust from the root domain so you are starting from scratch. warming takes longer than most people expect 6 to 8 weeks minimum"

So you have two jobs. First, prove the mail is really from you (that is SPF, DKIM, and DMARC). Second, build a track record slowly so the inbox providers learn to trust you (that is warm-up). Skip either one and you land in Promotions or Spam.

The drop people feel after switching

If you just migrated to LC Email or moved to a new sending domain, you might watch your inbox placement fall off a cliff. This is normal, and it is exactly the zero-reputation problem biting. One person who moved put it plainly:

"Since the migration, inbox placement has dropped significantly and most emails are now landing in Promotions or Spam, with recent open rates dropping as low as 5%."

A 5 percent open rate is a panic number. The good news: it climbs back as the new domain earns trust, as long as your records are right and you ramp volume the slow way. The rest of this guide is how to do that.

[HUMAN-TODO: before screenshot of inbox placement, the GlockApps or Gmail tab view showing mail landing in Promotions/Spam right after migration]

Step 1: Set up SPF, DKIM, and DMARC

These three records are how a receiving server checks that mail claiming to be from you really is. GoHighLevel sends through Mailgun, so the records point at Mailgun's signing. You add them once at your DNS host (Cloudflare, GoDaddy, Namecheap, or wherever your domain lives).

Open the domain setup

In GoHighLevel, go to Settings, then Email Services, then Dedicated Domain (newer accounts may just say Domain). Enter the subdomain you want to send from, for example mail.yourdomain.com. GoHighLevel then hands you the exact records to add.

SPF: who is allowed to send

SPF is a TXT record that lists the servers allowed to send for your domain. GoHighLevel gives you one that includes mailgun.org. Add it as-is. If you already have an SPF record, do not create a second one. Merge Mailgun into the existing record, because more than one SPF record breaks the check.

DKIM: a tamper-proof signature

DKIM signs every message with a private key. The matching public key sits in the CNAME records GoHighLevel gives you (usually two or three). When Gmail gets your email, it checks the signature. If it matches, the mail was not changed in transit and it is really from your domain. Add each CNAME exactly as shown, host and target both.

DMARC: the policy that ties it together

DMARC tells receivers what to do when a message fails SPF or DKIM, and it gives you reports. Create a TXT record at _dmarc.yourdomain.com. Start gentle so you do not block your own mail by accident:

  • Start with v=DMARC1; p=none; rua=mailto:you@yourdomain.com. This monitors only, and emails you the reports.
  • After a couple of weeks of clean reports, move to p=quarantine.
  • Once you are confident, tighten to p=reject for the strongest protection.
Do not send until all three show green.

DNS can take minutes to a few hours to spread. Wait for GoHighLevel to verify the records, then send one test to a Gmail inbox and one to an Outlook inbox. Open the message, view the details, and confirm it shows as signed and passing. Only then start real sends.

Join RocketLauncher University free

Free Skool community. Get the full deliverability setup checklist and ask questions.

Step 2: Warm the domain up, slowly

Records prove who you are. Warm-up earns trust. The idea is simple: start with a tiny number of sends to people who actually open and reply, then grow the volume a little at a time. Each good send tells Gmail you are a real sender that people want to hear from.

Below is a 14 day ramp to get you to a usable daily volume. Treat the numbers as a guide, not a law. If opens dip or spam complaints rise, hold at the current level for a day or two before you go higher.

DayDaily sendsWhat to watch
Day 110 to 20Send only to your warmest contacts who reply or open.
Day 220 to 30Same warm list. Watch that opens stay healthy.
Day 330 to 50Add a few engaged contacts. Keep the content useful.
Day 450 to 75Reply-friendly subject lines help here.
Day 575 to 100Pause the weekend if your audience is quiet then.
Day 6100 to 150Prune anyone who has not opened at all.
Day 7150 to 200Check your spam rate stays under 0.1 percent.
Day 8200 to 300Start mixing in slightly colder but valid contacts.
Day 9300 to 400Keep one clear call to action per email.
Day 10400 to 600Confirm Gmail and Outlook both still inbox you.
Day 11600 to 800Remove hard bounces right away.
Day 12800 to 1,000Hold steady if open rates dip below 20 percent.
Day 131,000 to 1,500You are building real history now. Stay consistent.
Day 141,500 to 2,000Ramp daily volume only as engagement holds.

Day 14 is not the finish line. It is the point where you can send useful daily volume without spooking the inbox providers. Full sender trust takes longer. Plan for 6 to 8 weeks of steady, engaged sending before you treat the domain as fully warmed and push large campaigns.

[HUMAN-TODO: after screenshot of inbox placement once the domain is warmed, showing mail back in the Primary tab and open rates recovered]

Step 3: Use a dedicated sending domain

Here is my clear take: if you send real volume, use a dedicated sending subdomain. Send from something like mail.yourdomain.com rather than a shared pool. Two reasons.

First, your reputation is your own. On a shared IP you inherit the habits of every other sender on it, good or bad. A dedicated domain means your inbox placement reflects your sending, not a stranger's. Second, it protects your main domain. If a campaign goes wrong, the address people reply to and the domain your website runs on stay clean.

The setup is the same SPF, DKIM, and DMARC work from Step 1, just on the subdomain. We wrote a full record-by-record walkthrough here: the dedicated sending domain guide (SPF, DKIM, DMARC).

Troubleshooting: still landing in spam

  • Two SPF records. A domain can have only one. If you added Mailgun as a second SPF record, both fail. Merge them into a single TXT record.
  • DKIM not verified. Double check each CNAME host and target match GoHighLevel exactly. A trailing dot or a wrong subdomain prefix breaks it. Re-verify after the DNS spreads.
  • Sending too fast. Blasting your whole list on day one is the fastest way to burn a fresh domain. Drop back to the warm-up volumes and rebuild.
  • Cold or stale list. Emailing people who never opted in, or have not engaged in a year, drives complaints. Clean the list and send only to people who want it.
  • Spammy content. All-caps subject lines, one giant image, link shorteners, and the word free everywhere all trip filters. Write like a normal email with a clear single ask.
  • No engagement signal. If nobody replies or opens, providers downrank you. Ask for replies early in the warm-up to send a strong positive signal.

If the problem is specifically cold outreach rather than your normal list, the rules are a bit different. We cover that in the email warm-up for cold outreach guide.

Join RocketLauncher University free

Free Skool community. Grab the deliverability checklist and the warm-up calendar template.

Frequently asked questions

Why are my GoHighLevel emails going to spam?

The most common reason is a brand new sending subdomain with zero sender reputation. When you set up LC Email, GoHighLevel sends from a fresh subdomain on Mailgun, and Gmail does not carry over any trust from your main domain. On top of that, missing or wrong SPF, DKIM, and DMARC records, sending too much too soon, and emailing a cold or unengaged list all push mail into Promotions or Spam. Fix the DNS records first, then warm the domain slowly.

How do I set up DKIM and SPF in GoHighLevel?

Go to Settings, then Email Services, then Dedicated Domain (or Domain in newer accounts) and start the setup. GoHighLevel gives you the exact DNS records to add: an SPF TXT record that includes mailgun.org, two or three CNAME records for DKIM signing, and a CNAME for tracking. Add those at your DNS host (Cloudflare, GoDaddy, Namecheap), wait for them to verify inside GoHighLevel, then add a DMARC TXT record at _dmarc with a policy of p=none to start. All three should show green before you send.

How long does domain warm-up take?

Plan for 6 to 8 weeks for full sender trust, not a few days. A 14 day ramp gets you to a usable daily volume, but Gmail and Outlook keep watching engagement well past two weeks before they fully trust a fresh subdomain. Start at 10 to 20 sends a day to your warmest contacts, roughly double every couple of days, and only push volume up while open rates stay healthy and spam complaints stay near zero.

Should I use a dedicated sending domain?

Yes, for almost everyone sending real volume. A dedicated sending subdomain (like mail.yourdomain.com) keeps your reputation in your own hands instead of sharing an IP pool with strangers. It also protects your main domain, so a bad campaign never burns the address people reply to. Set up SPF, DKIM, and DMARC on it, warm it slowly, and you control your own inbox placement. See our dedicated sending domain guide for the full record-by-record walkthrough.

Related reading

Dedicated Sending Domain: SPF, DKIM, DMARCThe full record-by-record setup for your own sending subdomain.Email Warm-Up for Cold OutreachHow warm-up and deliverability differ when you send cold.GoHighLevel SnapshotsPrebuilt setups you can load into a fresh sub-account.Honest GoHighLevel ReviewWhat GoHighLevel does well, and the real usage costs.RocketLauncher ProDone-for-you GoHighLevel setup, deliverability included.