Why Your Business Emails Go to Spam (and How to Fix It)
A customer says they never got the invoice. A week later a second one says the same thing. Nothing bounced, nothing failed, and your sent folder shows both messages leaving exactly when you thought they did.
That is the shape of a deliverability problem, and it is a nasty one because it is silent. Mail that fails loudly gets fixed within the hour. Mail that slides quietly into a junk folder can carry on for months.
Short answer: Business email usually lands in spam because the receiving server cannot verify that you are allowed to send from your domain. Missing or broken SPF, DKIM and DMARC records are by far the most common cause. A poor shared sending reputation, a sudden jump in volume, and a handful of content triggers account for most of the rest.
Why does business email go to spam in the first place?
Filters are making a judgement about trust, not about words. They check whether your domain has authorised the server that sent the message, whether the message was signed and unaltered, and what your domain and sending IP have done in the past. Fail those and content barely matters.
This trips up small businesses more than large ones. A large sender has a dedicated IP, a mature domain and someone watching the reports. A five-person business sends from whatever server the host provided, with an SPF record nobody has looked at in three years.
Worth saying plainly: switching providers rarely fixes this. Getting three DNS records right does, and those records belong to your domain whoever hosts the mailbox. The rest of the business email guides covers the surrounding decisions.
How do you tell whether it is you or the recipient?
Send a test to two or three accounts on different providers, ideally one Outlook or Hotmail address, one Gmail address and one on a company domain. If it lands in junk everywhere, the problem is your domain. If it only happens at one company, their filter or their rules are the cause.
Then read the headers of a message that landed badly. Most webmail clients let you view the original, and the authentication results line says pass or fail for SPF, DKIM and DMARC. That one line beats a week of guessing. If all three pass, the cause is reputation or content.
- Junk at every provider: your authentication records or your sending IP.
- Junk at one company only: their filter, a local rule, or a private blocklist.
- Junk only for bulk sends: volume, list quality or the sending platform.
- Junk only on replies: usually a forwarding rule breaking the check on the way through.
Which DNS records decide this?
Three text records, all published in your domain’s DNS. SPF lists the servers permitted to send as you. DKIM adds a signature that proves the message was not altered in transit. DMARC ties the two together and tells receivers what to do when they fail. Together they are what “verified sender” actually means.
| Record | What it proves | Common mistake |
|---|---|---|
| SPF | This server is allowed to send mail as your domain | Two SPF records on one domain, which invalidates both |
| DKIM | The message left your server unaltered and really came from you | Never enabled, or the key rotated at the host and not updated in DNS |
| DMARC | What receivers should do when SPF or DKIM fails, and where to report it | Set straight to reject before checking the reports, which blocks legitimate mail |
What a correct record looks like is set out in the plain-English explanation of SPF, DKIM and DMARC. Fix them in that order. There is no point tuning a DMARC policy while SPF is broken.
Does what you write in the email matter?
Less than the internet claims, but not nothing. Content scoring is a tiebreaker applied after the trust checks, so a well-authenticated domain gets away with things a suspicious one does not. The habits worth changing are the ones that also make your emails worse to read.
Shouty subject lines, a wall of capitals, exclamation marks, an image with almost no text around it, link shorteners and unusual attachment formats all push the score the wrong way. So does BCCing the same message to forty people. If you are mailing a list, use a proper sending platform, which handles unsubscribe headers and throttling for you.
Why does it only happen with one company’s staff?
Because their mail system has its own rules on top of the public ones. Corporate filters, government gateways and some managed IT setups apply local blocklists, keyword rules and quarantine policies that nobody outside can see or test. Your mail can be perfectly authenticated and still be held.
The fix is unglamorous: ring the person, ask them to check their junk folder and quarantine digest, and have them get IT to add your domain to the safe sender list. Five minutes, and it is solved permanently for that organisation. If it is happening across several unrelated companies, go back to your records.
The one case where changing provider helps is a shared outbound server whose reputation you cannot influence. GoodHost lists email hosting as launching soon with a notify form rather than a price, so that is a plan to make rather than a purchase to complete today.
What is the order to fix this in?
Work from the most likely cause to the least. Records first, because they explain most cases and are the only part fully under your control. Then reputation, then sending behaviour, then content. Changing four things at once means you will never know which one worked.
- Check the authentication results header on a message that was filtered. Note which of the three failed.
- Confirm you have exactly one SPF record, listing every service that sends as you, including invoicing and CRM tools.
- Turn DKIM signing on at your mail host and publish the key it gives you.
- Add DMARC in monitoring mode and read the reports for a fortnight before tightening it.
- Check your domain and sending IP against the main public blocklists, and follow the delisting process if you are on one.
- Change one thing at a time and retest to the same set of addresses.
If this started right after a host change, the cause is almost always a record that did not come across. The steps people miss are in the guide to moving business email without losing mail, and the same records are covered from scratch when setting up an address on your own domain.
Frequently asked questions
How long does it take for a spam problem to clear up after I fix the records?
The DNS change is visible to most receivers within an hour or two, depending on the TTL on the old record. Reputation takes longer. If your domain has been sending unauthenticated mail for months, expect a few weeks of normal sending before filters relax.
Why do my emails go to spam only when I reply to someone?
Usually a forwarding rule somewhere in the chain. When a message is relayed by an intermediate server, the SPF check can fail because that server is not on your permitted list, even though the message is genuine. DKIM survives forwarding better, which is why you want both.
Can my web host cause my email to be marked as spam?
If your mail goes out through a shared server, yes. You inherit some of the reputation of everyone else sending from that IP address, so one compromised account on the same machine can affect your delivery. Hosts watch for it, but it is a fair argument for keeping mail separate.
Should I use a link shortener in business emails?
Better not to. Shorteners hide the destination, which is exactly what phishing does, so filters treat them with suspicion. They also strip away the trust a recognisable domain gives the reader. Write the real link, or use descriptive anchor text pointing at your own domain, and the question disappears.
Does buying a new domain fix a spam reputation problem?
Rarely, and it creates new problems. A brand new domain has no sending history at all, which filters also treat cautiously, so you trade a bad reputation for no reputation. You also abandon the address every customer, supplier and account has on file. Repairing the existing domain is nearly always faster.
Open one message that landed in junk, choose show original, and read the Authentication-Results line at the top of the header. It names the check that failed in a single word, spf or dkim or dmarc, which beats a fortnight of changing things at random. Where the trail ends at a mail server nobody at your end controls any more, GoodHost’s cPanel hosting puts the DNS zone back in reach.
Written by the GoodHost team. Last reviewed: July 2026.