To set up Mailgun DNS records on your GoDaddy domain, sign in to your GoDaddy Domain Portfolio, locate your domain, and access its DNS management settings. Add the required TXT, MX, and CNAME records provided by Mailgun. This process typically takes about 15-30 minutes for initial setup, with DNS propagation taking longer.
Key Takeaways
✓Always use a subdomain for Mailgun if your main domain already handles email (e.g., with GSuite).
✓Carefully copy the unique hostnames and values for the second TXT (DKIM) and CNAME records directly from Mailgun.
✓The first TXT record (SPF) and both MX records have standard, universal values for all Mailgun setups.
✓DNS changes require propagation time; allow up to 48 hours before expecting full verification in Mailgun.
✓Accurate DNS configuration is critical for GoHighLevel to send emails reliably and avoid spam filters.
Prepare Your GoDaddy Domain for Mailgun DNS Setup
Before you can send emails reliably through GoHighLevel using Mailgun, you must configure your domain's DNS records on GoDaddy. This foundational step links your domain to Mailgun, ensuring proper email authentication and delivery. Follow these initial steps to access your domain's DNS settings.
1
Sign In to GoDaddy — Open your web browser and sign in to your GoDaddy account. You need access to your domain portfolio to manage DNS records.
0
2
Access Domain Portfolio — Once logged in, navigate to your Domain Portfolio. This section lists all the domains registered under your GoDaddy account.
1
3
Select Your Domain — Locate the specific domain you want to set up with Mailgun. Click the three dots (options menu) next to your domain name.
2
4
Edit DNS Settings — From the dropdown menu, select Edit DNS. You might need to scroll down to find this option. This action opens your domain's DNS management page.
3
🔥 Pro Tip
Deciding on your Mailgun hostname: If setting up `mg.yourdomain.com`, the host is `mg`. For `replies.yourdomain.com`, the host is `replies`. If using the main domain `yourdomain.com`, the host is `@` (an 'at' symbol).
Add the First Mailgun TXT Record (SPF)
The first TXT record is an SPF (Sender Policy Framework) record. This record tells receiving mail servers which IP addresses are authorized to send email on behalf of your domain, significantly reducing the chance of your emails being marked as spam. Every Mailgun setup includes this standard SPF record.
1
Add a New Record — On your GoDaddy DNS management page, click Add New Record. A new row or pop-up appears for entering record details.
0
2
Set Record Type to TXT — From the Type dropdown menu, select TXT. This specifies that you are adding a text record.
1
3
Enter the Hostname — For the Host field, refer to the 'Pro Tip' in the previous section to determine the correct hostname for your specific domain or subdomain. Do not include your root domain name here.
2
4
Enter the TXT Value — In the TXT Value field, paste the following exact string: `v=spf1 include:mailgun.org ~all`. This is the universal SPF record for Mailgun.
3
5
Save the Record — Click Save to add the first TXT (SPF) record to your GoDaddy DNS settings. This change will begin propagating across the internet.
4
Add the Second Mailgun TXT Record (DKIM)
The second TXT record provides DKIM (DomainKeys Identified Mail) authentication. DKIM adds a digital signature to your outgoing emails, allowing receiving servers to verify that the email was not altered in transit and truly came from your domain. This record has a unique hostname and value provided by Mailgun.
1
Add Another New Record — Click Add New Record again on your GoDaddy DNS management page. You are adding a second, distinct TXT record.
2
Set Record Type to TXT — Select TXT from the Type dropdown menu for this record as well. Both authentication records are TXT type.
0
3
Copy Mailgun Hostname — Navigate back to your Mailgun domain settings. Copy the specific hostname provided for the second TXT record. This value is unique to your Mailgun setup; typically, it's a long string of characters.
4
Paste Hostname into GoDaddy — Paste the copied Mailgun hostname into the Host field in GoDaddy. Ensure you copy only the hostname part, excluding your root domain.
1
5
Copy Mailgun TXT Value — In Mailgun, copy the corresponding TXT Value for this second record. This is usually a very long, complex string.
6
Paste TXT Value into GoDaddy — Paste this long string into the TXT Value field in GoDaddy. Accuracy is crucial for DKIM to function correctly.
2
7
Save the Record — Click Save to add your second TXT (DKIM) record. This completes the TXT record setup for Mailgun.
✅ You must obtain the exact hostname and TXT value for this record directly from your Mailgun account's 'DNS records' section for the domain you are configuring. These are not universal values.
Add the First Mailgun MX Record
MX (Mail Exchanger) records tell other mail servers where to send emails for your domain. Mailgun requires two MX records to ensure reliable inbound email routing, especially for replies to your GoHighLevel communications. The first MX record points to Mailgun's primary mail exchange server.
1
Add a New Record — Click Add New Record on your GoDaddy DNS management page. You are now adding an MX record.
2
Set Record Type to MX — From the Type dropdown, select MX. This indicates a mail exchange record.
0
3
Enter the Hostname — For the Host field, use the same hostname you determined for your TXT records (e.g., `@`, `mg`, or `replies`). This ensures the MX records apply to the correct domain or subdomain.
4
Set Points To Value — In the Points to field, enter `mxa.mailgun.org`. This is the standard primary Mailgun mail server address.
1
5
Set Priority to 10 — Set the Priority field to `10`. This priority level is standard for Mailgun and indicates its preference in mail routing.
6
Save the Record — Click Save to add the first MX record. This configures the primary inbound mail route for your Mailgun domain.
2
⚠️ If your main domain already uses another email service (like GSuite or Microsoft 365) for incoming mail, it is crucial to use a subdomain for Mailgun. Adding Mailgun's MX records to a main domain already configured for GSuite will cause email delivery issues for your primary email service.
Try GoHighLevel Free
Start your 30-day GoHighLevel free trial
Everything in this guide is in your free trial. 30 days, no credit card — the platform behind 78+ revenue systems.
Some links are affiliate links — if you sign up we may earn a commission, at no extra cost to you. We only recommend GoHighLevel because we build on it every day.
Add the Second Mailgun MX Record
Mailgun uses a secondary MX record as a backup. If the primary mail server (mxa.mailgun.org) is unavailable, the secondary server (mxb.mailgun.org) ensures that incoming emails are still received without interruption. This provides redundancy for your email deliverability.
1
Add Another New Record — Click Add New Record once more on your GoDaddy DNS management page. You are adding the secondary MX record.
0
2
Set Record Type to MX — Select MX from the Type dropdown menu. Both Mailgun mail exchange records are of this type.
1
3
Enter the Hostname — For the Host field, use the same hostname as your first MX record (e.g., `@`, `mg`, or `replies`). Consistency here is vital for correct routing.
2
4
Set Points To Value — In the Points to field, enter `mxb.mailgun.org`. This is Mailgun's secondary mail server address.
3
5
Set Priority to 10 — Set the Priority field to `10`. Both Mailgun MX records use the same priority level.
4
6
Save the Record — Click Save to add the second MX record. You have now configured both necessary MX records for Mailgun.
5
Add the Mailgun CNAME Record
The CNAME (Canonical Name) record is used for tracking opens, clicks, and other engagement metrics within your GoHighLevel campaigns. It creates an alias, allowing Mailgun to provide detailed analytics on your email performance through a custom tracking domain.
1
Add a New Record — Click Add New Record on your GoDaddy DNS management page. This is the final record you need to add.
2
Set Record Type to CNAME — From the Type dropdown menu, select CNAME. This record creates an alias for tracking.
3
Copy Mailgun Hostname — Go back to your Mailgun domain settings. Copy the specific hostname provided for the CNAME record. This will typically be `email` or `email.mg` or `email.replies` depending on your setup.
4
Paste Hostname into GoDaddy — Paste the copied Mailgun hostname into the Host field in GoDaddy. Ensure you only copy the specific prefix, not your full domain.
5
Set Points To Value — In the Points to field, enter `mailgun.org`. This is the universal target for Mailgun's CNAME tracking record.
6
Save the Record — Click Save to add the CNAME record. You have now added all five required DNS records for Mailgun on GoDaddy.
🔥 Pro Tip
For `mg.yourdomain.com`, the CNAME host is `email.mg`. For `replies.yourdomain.com`, it's `email.replies`. If using `yourdomain.com`, the CNAME host is simply `email`.
Verify Your Mailgun DNS Settings and Test Email Sending
After adding all five DNS records, the final crucial step is to verify them within Mailgun. This confirms that your GoDaddy domain is correctly configured and ready to send emails via GoHighLevel. DNS changes can take time to propagate globally.
1
Return to Mailgun — Go back to your Mailgun account and navigate to the Domain Settings page where you found the DNS records. You will verify them here.
2
Click Verify DNS Settings — Locate and click the Verify DNS Settings button. Mailgun will check if it can detect your newly added records.
3
Re-verify if Needed — If some records do not show a green checkmark immediately, click Verify DNS Settings again after a few minutes. DNS propagation can take minutes to hours, sometimes up to 48 hours.
4
Locate Mailgun API Key — Once all records are verified, you can find your Mailgun API key within your Mailgun account. This key is necessary for integrating Mailgun with GoHighLevel.
5
Send a Test Email — After integrating the API key into GoHighLevel, send a test email from within the platform. This confirms that your Mailgun and GoDaddy setup is fully functional and emails are sending successfully.
🔥 Pro Tip
If verification fails after several hours, double-check each record for typos, correct hostnames, and exact values. Even a single extra space can prevent verification.
Troubleshooting Common Issues
⚠️ Mailgun DNS verification shows 'Pending' or 'Not Detected' for a record after several hours.
Recheck the specific record in GoDaddy for any typos in the Type, Host, or Value fields. Ensure no extra spaces are present. DNS propagation can take up to 48 hours; allow more time before re-checking.
⚠️ Emails sent from GoHighLevel are going to spam or not being delivered.
Verify all five DNS records (2 TXT, 2 MX, 1 CNAME) are correctly added and verified in Mailgun. Incorrect SPF or DKIM (TXT records) are common causes of deliverability issues. Also, check your Mailgun account status for any suspension notices.
⚠️ Mailgun's unique hostname or value for the second TXT or CNAME record seems incorrect.
Ensure you are copying these values directly from your Mailgun domain settings page. Do not attempt to guess or modify them. These are unique to your Mailgun domain configuration.
⚠️ I already use GSuite for email on my main domain and want to use Mailgun.
You must use a subdomain (e.g., `mg.yourdomain.com` or `replies.yourdomain.com`) for Mailgun. Do not add Mailgun's MX records to your main domain if GSuite (or another email provider) is already configured there, as this will break your primary email service.
⚠️ The 'Host' field in GoDaddy is confusing for subdomains like 'mg.yourdomain.com'.
For `mg.yourdomain.com`, the host is simply `mg`. For `replies.yourdomain.com`, the host is `replies`. For the root domain `yourdomain.com`, the host is `@`. Always omit the root domain itself from the host field.
Common Mistakes to Avoid
→Including the root domain in the 'Host' field (e.g., entering `mg.yourdomain.com` instead of just `mg`).
→Failing to copy the exact unique hostnames and values for the second TXT (DKIM) and CNAME records from Mailgun.
→Forgetting to set the 'Priority' for both MX records to `10`.
→Not allowing sufficient time (up to 48 hours) for DNS changes to propagate before expecting Mailgun verification.
→Attempting to use Mailgun on a main domain that already has MX records configured for another email provider like GSuite.
Frequently Asked Questions
QWhy are there two TXT records and two MX records required for Mailgun setup?
The two TXT records are for email authentication: one for SPF (Sender Policy Framework) and one for DKIM (DomainKeys Identified Mail). These records help prevent your emails from being marked as spam. The two MX records provide redundancy for incoming mail, ensuring that if one Mailgun server is down, the other can still receive emails for your domain.
QWhat is the difference between `@`, `mg`, and `replies` for the Host field in GoDaddy?
The `@` symbol in the Host field refers to your root domain (e.g., `yourdomain.com`). `mg` refers to the `mg.yourdomain.com` subdomain, and `replies` refers to `replies.yourdomain.com`. You choose the correct host based on whether you are setting up Mailgun for your main domain or a specific subdomain.
QHow long does it take for DNS changes to take effect and for Mailgun to verify them?
DNS changes typically propagate across the internet within a few minutes to a few hours. However, in some cases, it can take up to 48 hours for changes to be fully updated and detected by Mailgun. If verification fails initially, wait a few hours and try again.
QCan I use my main domain for Mailgun if I already use GSuite for email?
No, it is strongly recommended to use a subdomain for Mailgun if your main domain already handles email via GSuite or another provider. Adding Mailgun's MX records to a domain with existing GSuite MX records will conflict and cause email delivery failures for your primary GSuite email accounts. Use a subdomain like `mg.yourdomain.com` instead.
QWhat should I do if Mailgun's DNS verification fails after I've added all records?
First, wait at least a few hours for DNS propagation. If it still fails, carefully re-check each record in your GoDaddy DNS settings. Look for typos, incorrect hostnames (especially for unique Mailgun values), missing periods, or extra spaces. Ensure the record type, host, points to/value, and priority (for MX records) match Mailgun's requirements exactly. If issues persist, contact Mailgun support.
Try GoHighLevel Free
Start your 30-day GoHighLevel free trial
Everything in this guide is in your free trial. 30 days, no credit card — the platform behind 78+ revenue systems.
Some links are affiliate links — if you sign up we may earn a commission, at no extra cost to you. We only recommend GoHighLevel because we build on it every day.
Arsalan Zaffar
Revset Labs · Revenue Systems · 78+ GHL Builds
Arsalan writes GHL guides from real build experience — 78+ systems, $9.2M in client pipeline. Wharton, CXL & Google certified.