Business Email

How to Enable and Verify DKIM in cPanel: Step-by-Step Guide

Learn how to enable DKIM in cPanel in two clicks and verify that the DNS record is correctly published so your emails don't land in spam.

Close-up of a laptop with an open e-commerce website, surrounded by modern office decor.

To enable DKIM in cPanel, go to Home → Email → Email Authentication and click "Enable" next to DKIM. cPanel generates the key automatically and shows you the TXT record to add to your DNS. With that, your emails carry a digital signature proving they came from your server.

DKIM (DomainKeys Identified Mail) is one of the three pillars of email authentication alongside SPF and DMARC. Without it, any server can send emails pretending to be your domain, and major providers like Gmail and Outlook are getting stricter: since 2024, Google and Yahoo require DKIM from medium-to-high-volume senders.

What DKIM Is and Why It Matters

DKIM adds a cryptographic signature to the headers of every outgoing email. The receiving server queries your domain's DNS, retrieves the public key, and verifies that the signature matches. If it matches, the email is authentic; if not, it's suspicious.

The practical benefits are:

  • Fewer emails in spam: Gmail, Outlook, and others evaluate DKIM when calculating sender reputation.
  • Spoofing protection: prevents third parties from forging your email address.
  • Foundation for DMARC: DMARC can only "pass" if SPF or DKIM is approved; without DKIM, your DMARC policy is incomplete.
  • Better delivery rates for email marketing campaigns.

If your domain has email on a professional hosting plan with cPanel, enabling DKIM is free and takes less than ten minutes.

Step 1 — Enable DKIM from cPanel

Access Email Authentication

  1. Log in to your cPanel (usually yourdomain.com/cpanel or the URL your provider gave you).
  2. In the Email section, click Email Authentication.
  3. You'll see two blocks: DKIM and SPF. Check the current DKIM status.

Enable DKIM with One Click

If DKIM shows as Disabled, click the Enable button. cPanel will automatically generate an RSA key pair (private key on the server, public key for DNS).

Once active, you'll see something like:

  • Status: DKIM is enabled on this server.
  • Record name: default._domainkey.yourdomain.com
  • TXT record value: a long string starting with v=DKIM1; k=rsa; p=MIGf...

Copy that full value — you'll need it in Step 2.

Note: if cPanel also manages your DNS (internal DNS zone), the record is added automatically and you can skip to Step 3. If you use external DNS (Cloudflare, GoDaddy, your registrar), you must add it manually.

Step 2 — Publish the DKIM Record in Your DNS

If you use external DNS, log in to your DNS provider's dashboard and create a new record with these values:

Field Value
Type TXT
Name / Host default._domainkey (without the domain; some panels require the full FQDN)
Value / Content v=DKIM1; k=rsa; p=MIGf... (the value you copied from cPanel)
TTL 3600 (1 hour) or the minimum your provider allows

Cloudflare: An Important Detail

If you use Cloudflare, make sure the default._domainkey record has the proxy disabled (grey cloud, not orange). Email authentication TXT records must not go through Cloudflare's proxy.

Propagation Time

DNS changes can take anywhere from 15 minutes to 48 hours to propagate globally. In most cases the record is visible from the majority of servers within an hour.

Step 3 — Verify That DKIM Is Correctly Configured

There are several ways to confirm the record is published and valid:

Option A: Online verification tool

Use MXToolbox (mxtoolbox.com/dkim.aspx) or mail-tester.com:

  1. In MXToolbox, enter your domain and the selector (usually default).
  2. Click DKIM Lookup.
  3. If the result shows the public key and appears in green, DKIM is correct.

Option B: Send a test email and inspect headers

  1. Send an email from your corporate account to a Gmail account.
  2. In Gmail, open the message, click the three dots (⋮) → Show original.
  3. Look for the Authentication-Results line. It should include dkim=pass.

Option C: dig command from terminal

dig TXT default._domainkey.yourdomain.com +short

If the record is published, you'll see the v=DKIM1; k=rsa; p=... string in the response.

Common Problems and How to Fix Them

DKIM active in cPanel but emails still not signed

Check that the DNS record is actually published (use the dig command or MXToolbox). If DNS hasn't propagated yet, wait an hour and try again.

TXT record too long and my registrar won't accept it

Some panels limit TXT record value length. Split the value into two quoted strings; DNS servers concatenate them automatically. Example:

"v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQ"
"KBgQC2... (rest of key) ...IDAQAB"

Email shows dkim=fail (signature did not verify)

This happens when the DNS record doesn't match the server's private key. It can occur if you regenerated the key in cPanel without updating DNS, or if you copied the value incompletely. Go back to cPanel, copy the full value, and update the TXT record.

I have multiple domains in the same cPanel

You must enable DKIM domain by domain. Go to Email Authentication for each additional domain and repeat the process. Each one gets its own key pair.

DKIM, SPF, and DMARC: The Complete Trio

DKIM alone is just one part of email authentication. For complete protection you need all three:

Record What it does Required since 2024
SPF Lists servers authorized to send email from your domain Yes (Gmail/Yahoo)
DKIM Cryptographic signature on every outgoing email Yes (Gmail/Yahoo)
DMARC Policy for what to do if SPF or DKIM fail Recommended

You can find guides for all three in our business email guides section, or let the specialists at elenlace.com configure everything correctly from the start.

Key Takeaways

  • DKIM is enabled in cPanel under Email → Email Authentication with a single click.
  • If you use external DNS (Cloudflare, GoDaddy), you must manually publish the TXT record cPanel generates.
  • Verify it works with MXToolbox, by sending a test email to Gmail, or with the dig command.
  • In Cloudflare, keep the default._domainkey record with the proxy disabled (grey cloud).
  • DKIM alone, SPF alone, or DMARC alone isn't enough: all three work together.
  • Since 2024, Gmail and Yahoo require DKIM from high-volume senders.

If you need help configuring DKIM, SPF, or DMARC for your business domain, the team at elenlace.com can review your setup and get it working correctly — contact us today.

FAQ

Do I need advanced technical knowledge to enable DKIM in cPanel?

No. cPanel generates the key automatically; the only technical step is copying and pasting the TXT record into your DNS panel. If cPanel manages your DNS, it publishes the record automatically — no manual step needed.

Does DKIM guarantee my emails won't end up in spam?

DKIM significantly improves deliverability, but it's not an absolute guarantee. Where an email lands also depends on your IP reputation, message content, SPF, DMARC, and blacklists. It's an essential piece, not a complete solution on its own.

What happens if I change hosting providers?

When migrating, the new server will generate a new DKIM key pair. You'll need to update the TXT record in your DNS with the new value. If you don't update it, emails from the new server will fail DKIM verification.

Can I have more than one DKIM selector on my domain?

Yes. You can publish multiple DKIM records with different selectors (e.g., default._domainkey, mail._domainkey, s1._domainkey). This is useful if you send email from multiple services: your hosting server uses one selector and your email marketing platform uses another.

Further reading

Other providers and guides worth comparing:

← All