---
title: "DKIM record not verifying? Fix your sending domain"
date: "2026-11-06"
author: RocketCart
url: "https://getrocketcart.com/docs/troubleshooting/sending-domain-not-verifying/"
type: docs
---

If RocketCart shows a record as **Missing** after you added it, the cause is almost always one of these: the record hasn’t spread yet, it was added at the wrong DNS provider, the host is wrong, or the value changed on the way. Work through the causes below in order, then click **Verify DNS** again.

Pro plan

Sending from your own domain needs the Pro plan. On the Free plan, **Custom Domain Configuration** under **Settings > Email Settings** is blurred and shows an **Upgrade your plan** button, so there is nothing to verify. See [Free and Pro plans](/docs/plans-and-billing/free-and-pro-plans/).

## What does it look like?

In **Settings > Email Settings**, the **DNS records** panel shows one or more of the **SPF**, **DKIM** and **DMARC** tabs as **Missing**, with **No record found** under **Current value**. The status line says less than 3/3, for example **Status: 2/3 DNS records verified.**, and the **Enable custom domain** switch doesn’t appear.

## Likely causes, most common first

### 1. The record hasn’t spread yet, or you didn’t check again

DNS changes take time to reach the whole internet. Often it’s minutes, but it can take up to 24 hours. RocketCart doesn’t check in the background; it only checks when you click **Verify DNS**.

**Fix:** wait 15 minutes, then click **Verify DNS**. If it still fails after a few hours, go on to the next causes.

### 2. The records are at the wrong company

Records only count at the company your domain’s nameservers point to. That is often not where you bought the domain. For example, a domain bought at GoDaddy that uses Cloudflare nameservers must have its records in Cloudflare.

**Fix:** look up your domain’s nameservers with any online “NS lookup” tool. Add the records at the company they belong to.

### 3. The host is wrong

This is the most common mistake with DKIM and DMARC. Most DNS providers add your domain to the host by themselves. If you type the full name, it ends up doubled, for example `_dmarc.yourstore.com.yourstore.com`.

**Fix:** edit the record so the host is only the prefix:

| Record | Host to enter | Wrong |
| --- | --- | --- |
| SPF | `@` (or empty, depending on the provider) | `yourstore.com` at providers that add the domain |
| DKIM | `<selector>._domainkey`, with your store’s selector, for example `my-store._domainkey` (see [Step 2](/docs/sending-domain/set-up-sending-domain/#step-2-add-the-three-txt-records-at-your-dns-provider)) | the literal word `<selector>`, anything without `_domainkey`, or your domain added twice |
| DMARC | `_dmarc` | `dmarc`, `_dmarc.yourstore.com` at providers that add the domain |

If your From address uses a subdomain, such as `hello@mail.yourstore.com`, the records belong to `mail.yourstore.com`. The hosts then become `mail`, `<selector>._domainkey.mail` and `_dmarc.mail`.

### 4. The value isn’t exactly what RocketCart shows

The DKIM value is long, and it breaks if a single character is missing. Some editors also add spaces, line breaks or quote marks.

**Fix:** delete the record, click **Copy value** on the tab in RocketCart and paste it again in one go. If your provider splits the DKIM value into several quoted parts by itself, that’s fine; RocketCart joins them when it checks.

Warning

Shopify’s own DNS (for domains bought in Shopify) only accepts TXT values of up to 255 characters. RocketCart’s DKIM value is about 410 characters, so it can’t be saved there. See [Shopify domains](/docs/sending-domain/shopify-domains/).

### 5. The SPF record doesn’t include Mailgun

RocketCart looks for an SPF record (a TXT record starting with `v=spf1`) that contains `include:mailgun.org`. If you edited a different record, or the include got lost, SPF stays **Missing**.

**Fix:** make sure you have one SPF record, and that it contains `include:mailgun.org` before the `~all` or `-all` at the end:

`v=spf1 include:_spf.google.com include:mailgun.org ~all`

Don’t create a second SPF record. Two SPF records make both fail at the receiving mail servers, even when RocketCart shows **Verified**.

### 6. You changed the From address to another domain

The records belong to the domain in your From address. If you switch to an address on a different domain, the custom domain turns off and the records must be added for the new domain.

**Fix:** check the domain in **From Email Address**, and add the three records for that domain.

## How do I check what RocketCart sees?

RocketCart looks your records up through a public DNS server. Any online TXT lookup tool shows you the same thing. Or run these commands in a terminal:

```
dig +short TXT yourstore.com
dig +short TXT <selector>._domainkey.yourstore.com
dig +short TXT _dmarc.yourstore.com
```

If a command prints nothing, the record isn’t visible yet or sits under a different host.

## What do the error messages mean?

| Message | What to do |
| --- | --- |
| **DNS records are not properly configured. Please verify SPF, DKIM, and DMARC records.** | Not all three records are verified. Fix the ones that show **Missing**. |
| **Please set a sending email before enabling custom domain.** | Enter an address in **From Email Address** and click **Update Email**. |
| **Failed to check DNS:** followed by a reason | The check itself didn’t run. Wait a minute and click **Verify DNS** again. |

## Related pages

- [Set up a custom sending domain](/docs/sending-domain/set-up-sending-domain/)
- [Recovery emails going to spam](/docs/troubleshooting/emails-in-spam/)
