A customer places an order, but neither you nor the customer receives the order email. Customers write in asking whether their order went through, and you only notice new orders when you check the dashboard. WooCommerce emails not sending is a common problem, and it usually has nothing to do with WooCommerce itself.
Here is how to find out where the emails stop and fix delivery for good.
Step 1: Check the WooCommerce email settings
Go to WooCommerce → Settings → Emails and check:
- Each email is enabled. Open New order, Processing order, and Completed order, and make sure “Enable this email notification” is ticked.
- The recipient for admin emails (such as New order) is an address you actually read.
- The “From” address at the bottom of the page is an address on your own domain, such as
orders@yourstore.com, not a free Gmail or Outlook address.
Step 2: Check the order status flow
WooCommerce sends emails when an order changes status. If orders stay at Pending payment, for example because a payment gateway cannot confirm the payment, the Processing order email is never triggered.
Open a recent order and look at the order notes on the right. They show status changes and often say when an email was sent. If the order never moved past Pending payment, fix the payment gateway’s webhook or IPN settings first. Our guide to WooCommerce checkout problems covers this.
Step 3: Test whether WordPress can send email at all
WooCommerce sends email through WordPress, which by default uses the server’s PHP mail() function. Many hosts restrict it, and receiving servers often mark it as spam because it fails authentication checks.
Install an SMTP plugin such as WP Mail SMTP or FluentSMTP and use its email test tool. If the test email fails or lands in spam, the problem is general WordPress email delivery, not WooCommerce.
Step 4: Send through a proper email service
Configure the SMTP plugin to send through a real email provider:
- Transactional email services such as Brevo, Mailgun, SendGrid, Postmark, or Amazon SES are built for order emails and handle higher volumes reliably.
- Google Workspace or Microsoft 365 work for low-volume stores but have daily sending limits.
Use the same domain address as the WooCommerce “From” address, then send a new test order. Turn on the plugin’s email log so you can see every message and whether it was delivered.
Step 5: Authenticate your domain (SPF, DKIM, DMARC)
Your email provider gives you DNS records to add at your domain’s DNS host. They prove your emails are genuine:
- SPF lists which servers may send for your domain. Keep a single SPF record and add new providers to it.
- DKIM adds a signature that receivers can verify.
- DMARC tells receivers how to treat mail that fails the checks. Start with
p=none.
Without these, order emails are likely to land in spam, especially at Gmail and Outlook. Our guide to WordPress emails not sending explains each step in more detail.
Step 6: Check scheduled actions and conflicts
- Go to WooCommerce → Status → Scheduled Actions and look for failed or long-pending actions. Some emails and follow-ups depend on these background tasks, which need WP-Cron to run.
- If your site gets little traffic or WP-Cron is disabled, set up a real server cron job to trigger
wp-cron.php. - Email customizer or order status plugins can break email sending after updates. Test with them disabled.
Step 7: Resend missed emails
Once delivery works, open any order that was missed, choose Order actions → Resend new order notification (or the relevant customer email), and click Update. Let affected customers know their orders are confirmed.
Want reliable order emails without the setup? Our WooCommerce Fix sets up proper email delivery, fixes the order status flow, and tests the full purchase path. Fixed price of $49, confirmed before we start, with our Service Guarantee. Request a WooCommerce fix.
Frequently asked questions
Why do admin emails arrive but customer emails do not?
Customer addresses are at other providers (Gmail, Outlook, Yahoo) with stricter spam checks. Your own mailbox may be more forgiving. Authentication with SPF, DKIM, and DMARC usually fixes this.
Do I need a paid email service for WooCommerce?
Many providers offer free tiers that cover small stores. As order volume grows, a paid transactional service is worth it for reliability and delivery logs.
Can I see which emails WooCommerce has sent?
WooCommerce does not log emails by default. Turn on the email log in your SMTP plugin to see every message, its recipient, and whether it was accepted.




