WooCommerce not sending order emails? Read the order notes first
In short
When WooCommerce is not sending order emails, open the order and read its notes. In our 13 Oct 2026 lab on WooCommerce 11.2.1, every order email left a private note saying it was sent or failed, with the error. No note usually means no email was triggered: the order is still Pending payment or that email is switched off.
Key points
- An order left at Pending payment sent nothing in our lab. No email, no note, no log line.
- A paid order sent two emails, New order to the admin address and "order has been received" to the buyer.
- A failed send left the note 'Email "New order" failed to send' with the server's error, and the order still went to Processing.
- The log at WooCommerce, Status, Logs, source transactional-emails, also lists emails that were disabled or skipped, with the reason.
On this page (8)
- Why is WooCommerce not sending order emails?
- Where do you check first?
- Why does a pending order send nothing?
- What does the email log show that the notes don’t?
- What does a server that can’t send mail look like?
- The note says “sent”. Why didn’t the email arrive?
- What should you check on your store today?
- Questions and answers
Why is WooCommerce not sending order emails?
When WooCommerce is not sending order emails, the cause is one of three things. The email was never triggered, it was switched off, or the server failed to send it. Each one leaves a different mark on the order.
We ran all three on 13 Oct 2026 on a test store with WooCommerce 11.2.1 and WordPress 7.1.3, recording every email, order note and log line.
Order emails are one of the first checks on our WordPress care plan. A buyer with no receipt writes to ask if the order went through.
Where do you check first?
Open the order. On the right of the edit order screen are the order notes, and WooCommerce writes a private note for each order email it tries.
On our paid test order the notes read ‘Email “New order” sent.’ and ‘Email “Processing order” sent.’ On the order where sending failed they read ‘Email “New order” failed to send: Could not instantiate mail function.’ WooCommerce’s email troubleshooting doc says the same: sent and failed attempts become private order notes.
A “failed” note points at the server. A “sent” note points past it, at delivery. No note means WooCommerce never tried.
Why does a pending order send nothing?
Because no email is tied to Pending payment. In our lab an order created and left there produced no email, no note and no log line.
Nothing is broken here. WooCommerce’s doc says it plainly: an order still at Pending payment triggers no email. A buyer who leaves the payment page, or a payment the gateway never confirms, can leave an order there.
The emails start with the status change. Our test order moved to Processing when we confirmed its payment. Two emails went out within a second: “[DistroCode Staging Store]: New order #11” to the admin address, and the Processing order email to the buyer, which opens its subject with “Your DistroCode Staging Store order has been received”.
A bank transfer order that went to On hold sent the New order email plus the On hold email. If the order is still Pending payment, look at the payment gateway, not at email.
What does the email log show that the notes don’t?
The skipped ones. WooCommerce logs every email attempt under WooCommerce, Status, Logs, in the source transactional-emails. In our lab that log had one line per email, with reasons the notes leave out.
When we switched off the New order email and took a payment, the order notes simply had no line for it. The log said ‘Email “new_order” for order #14 not sent: email type is disabled’.
An order we made by code with no buyer email on it got ‘not sent: no_recipient’ for the buyer’s email. Orders added by an import or a custom checkout could hit the same line.
What does a server that can’t send mail look like?
Like a normal order. For the last test we let WordPress hand the emails to our test server, which has no mail set up.
The payment went through and the order moved to Processing. Nothing on the screen said anything was wrong. The only trace was two order notes at 13:31:03 UTC, both ending “failed to send: Could not instantiate mail function.”
That message comes from PHPMailer, the library behind WordPress’s wp_mail function, and means the server’s own mail function refused the job. On a live store the usual fix is the one WooCommerce gives in its doc: send through a dedicated SMTP provider instead of the server’s mail function.
When we take on a store with missing order emails, we place a real test order, read its notes and the transactional-emails log, move sending to an SMTP service with its own delivery log, and send the next test order to an inbox we can check.
The note says “sent”. Why didn’t the email arrive?
Because “sent” stops at your server. Whether the buyer’s inbox accepts the email is a step WooCommerce cannot see.
Two settings matter here. The first is who the email claims to be from. On our fresh install the From address was the admin email and the From name was the site title, so the buyer’s email came from “DistroCode Staging Store” at owner@example.com. WooCommerce’s doc warns that a From address on a free mail domain is likely to land in spam, and its email settings page recommends an address on your own domain.
The second is who gets the New order email. Its recipient field defaults to the admin email in Settings, General. If that inbox belongs to a developer who left, the email works and nobody sees it. WordPress sends its technical issue email after a fatal error to the same address.
What should you check on your store today?
Work through it in this order.
- Open your last order and read the email notes: sent, failed, or none.
- No note? Check the status. Pending payment sends nothing.
- In WooCommerce, Settings, Emails, check New order and Processing order are on, and who New order goes to.
- In WooCommerce, Status, Logs, pick transactional-emails and look for “disabled”, “no_recipient” and “failed”.
- Notes say sent but nothing arrived? Check the From address and send a test order to an outside inbox.
We tested another checkout surprise the same way in why WooCommerce orders charge no sales tax.
If buyers are asking where their receipt went, send us the note from your last order and we will tell you which of the three it is.
Where did these facts come from?
- OPS-95 lab evidence, WooCommerce 11.2.1 on WordPress 7.1.3 (order emails per status, order notes, transactional-emails log), checked Oct 13, 2026
- WooCommerce docs, Email troubleshooting, checked Oct 13, 2026
- WooCommerce docs, Email settings, checked Oct 13, 2026
- WordPress Developer Reference, wp_mail(), checked Oct 13, 2026
Questions and answers
Why does WooCommerce not send an email for pending orders?
No email is tied to Pending payment. In our lab such an order triggered no email and no note. Emails start when the order moves to Processing or On hold.
Who gets the WooCommerce New order email?
The address in the New order email's recipient field. By default it is the site's admin email from Settings, General. In our lab that address got the subject "[DistroCode Staging Store]: New order #11".
Where is the WooCommerce email log?
WooCommerce, Status, Logs, source transactional-emails. Our lab's log had one line per email, with the reason for anything that did not go out.
Still stuck? Send us the page address and what you see


