Technote

Servers & infrastructure Practical

Series Creating leads and not losing them Part 3 of 8

Why enquiry mail lands in spam — three records explained

The form submits fine, but no mail arrives. The cause is usually the sending path, not the form — and three DNS records that prove who sent it are the fix.

You install the form, test it, and nothing arrives — or you find it days later in a spam folder. For a marketer there is no worse situation: the traffic came, the form was submitted, and only the lead disappeared, without leaving any trace that it did.

This is not a flaw in the form plugin. WordPress dutifully sends the mail. The problem is how it goes out.

The default has nothing proving it came from you

Left unconfigured, WordPress hands the message to the web server’s own mail function. Your domain is written in the from address, but from the receiving end there is no way to check that claim — much as anyone can write another company’s name on an envelope.

Mail providers verify senders to stop spam and impersonation, and a message with nothing to verify gets filed away or quietly refused. That is precisely why default sending fails so often, and it has nothing to do with the quality of your site or your content.

Same message — the sending path decides whether it lands

Step one — route through an authenticated service

The first move is to hand sending over to a service that does mail for a living. Add an SMTP plugin, connect the account, and everything WordPress sends — enquiry notifications, auto-replies, password resets — leaves that way.

For a marketer the real prize is the log. When an enquiry does not appear, you need to know whether it was never sent or sent and not received, because that decides whether you fix the form or the domain records. Without logs, that call is guesswork.

Step two — what each of the three records does

With the path sorted, the domain side is next: three values in DNS, each answering a different question.

Three authentication records — one answer each

SPF is the guest list of servers permitted to send mail for your domain. Anything arriving from a sender not on the list is treated with suspicion.

DKIM puts a seal on the message. The receiving side checks that seal against public information published by your domain, confirming both that you really sent it and that nobody altered it in transit.

DMARC is where you state the policy for messages that fail those checks. In effect you are saying “please do not accept mail like that”, which also stops messages impersonating your domain from reaching your customers. It protects the brand as much as the deliverability.

Your sending service generates all three values; your job is to paste them into the domain’s DNS panel. Deliverability stabilises when all three are in place, not one or two.

Step three — fix the form’s from address

One failure mode survives even a perfect setup: a form configured to send as the address the visitor typed. When your server sends mail claiming to be a customer’s own mailbox, the receiving side reads it as impersonation — it trips exactly the checks you have just put in place.

The correct arrangement is simple. Send from an address on your own domain and put the visitor’s address in reply-to. Hitting reply still goes straight to the customer, so nothing about daily handling changes. Form plugins keep those two as separate fields; it takes one visit to check.

More on mail and server configuration lives in the Servers & infrastructure archive, and if you would rather hand the whole sending path over as part of wider infrastructure work, it is included in our optimization program.

Next part

Once mail starts arriving, your customers start receiving mail from you too. The next part is the auto-reply — the first message anyone gets from your company, and therefore brand copy rather than a receipt.

More on this topic

All technotes

Servers & infrastructure Practical

Sending email yourself, or handing it over

Run your own mail server and the invoice is near zero — you pay in deliverability instead. Which is cheaper depends on what one enquiry is worth to…

Founders 7 min read

Servers & infrastructure Practical

Knowing your site is down before your customers do

If a customer tells you the site is down, you are already late. Deciding what to watch and how to be alerted takes about half an hour.

Founders 6 min read

Servers & infrastructure Practical

Displaying business details: what belongs on the site

If you sell online in Korea, displaying business registration details is a legal requirement — and it is also the first thing a visitor about to pay looks…

Founders 7 min read

₩270,000 · Join the program