WooCommerce Order Emails Not Sending
WooCommerce Store Fixes
The order went through. Nobody was told.
Orders appear in the dashboard but no confirmation reaches the customer, and no new-order notification reaches you. Sometimes some emails arrive and others do not.
What it actually means
WordPress sends mail through the web server by default, and web servers are poor mail servers. Mailbox providers treat mail from an unauthenticated server as suspicious, so it is rejected outright or filed as spam without anyone being told.
For a store this is worse than an annoyance. The confirmation email is the receipt, the reassurance, and the record. A customer who pays and hears nothing assumes the order failed — so they order again, or they call, or they charge back.
What usually causes it
Most likely first.
- 1
No proper mail authentication
Without SPF, DKIM, and DMARC on the sending domain, providers cannot verify the mail is really from you. The most common cause by far.
- 2
Sending through the server instead of a mail service
PHP mail has no reputation and no delivery reporting. It fails quietly and tells nobody.
- 3
The email is disabled in settings
WooCommerce email types can be switched off individually, sometimes by a theme or plugin rather than a person.
- 4
The From address does not match the domain
Sending as a Gmail or Yahoo address from your own server fails authentication checks immediately.
- 5
A plugin intercepting mail
Some SMTP, logging, or marketing plugins take over sending and fail silently when misconfigured.
How to fix it
Work through these in order. Take a backup before you change anything.
Step 1 — Confirm the emails are enabled
WooCommerce, Settings, Emails. Check that the relevant types are enabled and the recipient address for admin notifications is correct.
Step 2 — Install an SMTP plugin and use a real mail service
Route mail through a dedicated provider rather than the web server. This single change fixes the majority of cases permanently.
Step 3 — Authenticate your domain
Add the SPF, DKIM, and DMARC records your mail provider specifies. This is what makes mailbox providers trust you.
Step 4 — Send from your own domain
Set the From address to something at your domain — orders@ or store@ — never a free mailbox address.
Step 5 — Log and test
Enable email logging so you can see what was attempted, then place a test order and follow the message all the way to an inbox, checking spam.
When to stop and call someone
Call someone if authentication is in place and mail still fails, if you are getting chargebacks or duplicate orders from customers who thought the first one failed, or if you do not know how to add DNS records — a mistake there can interrupt all your business mail, not just the store's.
Frequently asked
Most often because the site sends mail through the web server without authentication, so mailbox providers reject it or file it as spam. Routing mail through a proper SMTP service and adding SPF, DKIM, and DMARC records to your domain resolves the large majority of cases.
In practice, yes. WordPress's default mail function has no sending reputation and no delivery reporting, so failures are invisible. An SMTP plugin routing through a dedicated mail service makes delivery reliable and gives you a log when something goes wrong.
Three DNS records that prove your mail is genuinely from you. SPF lists which servers may send on your behalf, DKIM signs messages so they cannot be altered in transit, and DMARC tells providers what to do when a message fails. Without them, legitimate store mail is treated as suspicious.
Usually reputation rather than configuration. Without authentication, delivery becomes a judgment call that different providers make differently, so Gmail may accept what Outlook rejects. Inconsistent delivery is a strong sign that authentication is missing.
Yes, in several ways. Customers who receive no confirmation assume the order failed and often order again, call support, or dispute the charge. The email is the receipt, and its absence turns a completed sale into a support problem.
If you’d rather not
We do this work every week. These are the services that cover it.
- Forms & Scripts Not WorkingA form that quietly fails is the most expensive bug on a website — you never see the leads you lost. We fix it, then prove the message arrives.
- Email MarketingSend useful email to the people who already care. We build lists, segments, campaigns, welcome flows, and follow-up sequences that respect the reader and support real sales conversations.
- eCommerce DevelopmentBuild a store that makes buying feel simple. We shape product pages, checkout, payments, tracking, and store workflows so customers can act with confidence.
See exactly what’s holding your website back.
Get a free audit of your site — speed, SEO, mobile, and security — with the fixes that matter most, delivered as a PDF to your inbox.