WebHostPune
Call WhatsApp Get Quote

Hosting

SPF, DKIM and DMARC: Why Your Business Emails Go to Spam, and How to Fix It

Ajit Sahane
· · 9 min read
SPF, DKIM and DMARC: Why Your Business Emails Go to Spam, and How to Fix It

TL;DR (quick answer)

  • SPF lists which servers may send email for your domain. DKIM adds a digital signature that proves the email was not changed. DMARC tells receivers what to do when SPF or DKIM fails, and sends you reports.
  • Gmail and Yahoo have required authentication from all senders since February 2024 (and SPF, DKIM and DMARC from bulk senders). Outlook.com started enforcing similar rules for high-volume senders in May 2025.
  • All three are TXT records in your DNS. On cPanel hosting, the Email Deliverability screen can create SPF and DKIM for you. DMARC you add once yourself.
  • Test by sending to a Gmail address and opening Show original: you want SPF, DKIM and DMARC all marked PASS.

Why do my business emails go to spam?

Anyone can type any "From" address into an email. Spammers use this all the time to pretend to be banks, couriers and businesses like yours. So big mailbox providers now check whether an email really comes from the domain it claims, and they send unproven mail to spam or reject it.

If your domain has no SPF, DKIM or DMARC records, or the records are wrong, your genuine quotes and invoices look exactly like those fakes.

  • Missing or incorrect SPF, DKIM or DMARC records (the most common cause).
  • Two SPF records on one domain, or an SPF record with too many lookups.
  • A website contact form or software sending mail "from" your domain through a server not listed in SPF.
  • Bulk promotions sent from your everyday mailbox, which damages its reputation.
  • A server IP on a blacklist, often after a hacked website sent spam.

What are SPF, DKIM and DMARC in simple words?

You need all three. SPF and DKIM prove where an email came from; DMARC ties that proof to the address your customer actually sees, and tells providers to block fakes.

RecordSimple meaningWhat it checksWhere it lives
SPFThe guest listIs the sending server allowed to send for this domain?TXT record on yourdomain.com
DKIMThe wax sealWas the email signed by the domain and left unchanged?TXT record on selector._domainkey.yourdomain.com
DMARCThe house rulesDoes SPF or DKIM pass for the visible From domain? If not, what should happen?TXT record on _dmarc.yourdomain.com

What do Gmail, Yahoo and Outlook require from senders?

Gmail and Yahoo introduced these rules in February 2024. Microsoft started enforcing SPF, DKIM and DMARC for high-volume senders to Outlook.com, Hotmail and Live addresses in May 2025. Even if you send only a few emails a day, setting up all three is the simplest way to stay out of spam everywhere.

RequirementAll sendersBulk senders (around 5,000+ emails a day to one provider)
SPF or DKIMAt least oneBoth SPF and DKIM
DMARCRecommendedRequired (policy can start at p=none)
From domain aligned with SPF or DKIMRecommendedRequired
Valid reverse DNS for sending IPRequiredRequired
Encrypted connection (TLS)RequiredRequired
Low spam complaint rateKeep under 0.3%Keep under 0.3%, ideally under 0.1%
One-click unsubscribeNot requiredRequired for marketing email

How do I set up SPF?

SPF is one TXT record on your main domain. It lists your mail server and any services that send email for you (your email provider, website contact forms, billing or CRM software, newsletter tools).

Example for a domain that sends from its hosting server and one email service:
v=spf1 a mx include:_spf.mailprovider.example ~all

  • Only one SPF record per domain. If you add a new service, edit the existing record; never add a second one.
  • Maximum 10 DNS lookups: every include, a and mx counts. Remove services you no longer use.
  • End with ~all (soft fail) while testing. Move to -all only when you are sure every sender is listed.
  • Your email provider gives you the exact include value to use.

How do I set up DKIM?

On cPanel hosting, open Email, Email Deliverability. It shows whether SPF and DKIM are valid for each domain and offers a Repair button that creates the correct records when your DNS is on the same server.

  1. Your email service creates a key pair. The private key stays on the mail server; the public key goes in your DNS.
  2. Add the public key as a TXT record at selector._domainkey.yourdomain.com. The selector name (for example default or google) comes from your provider.
  3. Turn on DKIM signing in the email service, if it is not automatic.
  4. Repeat for every service that sends mail as your domain, each with its own selector.

How do I set up DMARC?

DMARC is one TXT record at _dmarc.yourdomain.com. Start in monitoring mode, read the reports, then tighten the policy step by step.

Step 1, monitor:
v=DMARC1; p=none; rua=mailto:dmarc-reports@yourdomain.com

Step 2, after a few weeks of clean reports:
v=DMARC1; p=quarantine; pct=100; rua=mailto:dmarc-reports@yourdomain.com

Step 3, full protection:
v=DMARC1; p=reject; rua=mailto:dmarc-reports@yourdomain.com

  • p=none only collects reports. Nothing is blocked, so it is safe to start.
  • p=quarantine sends failing mail to spam.
  • p=reject blocks failing mail completely, the strongest protection against people faking your domain.
  • Reports arrive as XML files. A free DMARC report reader makes them easy to understand.

Emails still going to spam?

We set up SPF, DKIM and DMARC for your domain, fix website and software senders, and move you to reliable business email hosting. Pune team, quick turnaround.

How do I test SPF, DKIM and DMARC?

  1. Send an email from your business address to a Gmail account.
  2. Open it, click the three dots, then Show original.
  3. Check the top lines: SPF: PASS, DKIM: PASS and DMARC: PASS, each with your domain.
  4. Repeat for every system that sends as your domain: website forms, billing software, CRM, newsletter tool.
  5. If you send larger volumes to Gmail users, register your domain in Google Postmaster Tools to watch spam rate and reputation.
ResultLikely causeFix
SPF: FAIL or SOFTFAILSending server not in SPFAdd the service's include to your one SPF record
SPF: PERMERRORTwo SPF records or more than 10 lookupsMerge into one record, remove unused includes
DKIM: FAIL or noneKey missing in DNS or signing offAdd the TXT record and enable signing
DMARC: FAILSPF and DKIM pass, but for a different domain than the From addressSend through a service that signs with your own domain

FAQ

Yes. Even at low volume, Gmail, Yahoo and Outlook check authentication, and missing records are the most common reason business emails land in spam. Setting up all three takes a few minutes.
No. Two SPF records make SPF fail with a permanent error. Combine all senders into one record that starts with v=spf1.
Start with p=none and a reporting address. When the reports show all your genuine senders pass, move to p=quarantine and then p=reject.
The form often sends from the web server "as" your domain without being listed in SPF or signed with DKIM. Send form mail through your authenticated mailbox (SMTP login) or add the server to SPF and DKIM.
Usually minutes to a few hours, depending on the record's TTL. Wait a little, then test again with Show original in Gmail.

Conclusion

Spam filters are not personal: they simply cannot tell your real emails from fakes unless your domain proves it. Add one SPF record that lists every sender, turn on DKIM for each service, publish DMARC starting at p=none, and test with Show original. Your quotes and invoices land in the inbox, and nobody can easily fake your domain.

Ajit Sahane, Founder of WebHostPune

Written by

Ajit Sahane

Founder, WebHostPune

12+ years building, hosting, and marketing websites for Pune-area businesses. See the About page for the full background.

Want help with your website?

Get a free, no-obligation quote — website design, hosting, or digital marketing.