11 WordPress ServicesView all
8 industry verticalsAll industries
12 UK locationsAll locations
Home/Blog/WooCommerce
WooCommerce11 November 2026· 6 min read

WooCommerce Email Notifications Not Sending: How to Fix Order Emails

Customers are not receiving order confirmation emails and you are not getting admin notifications. WooCommerce email failures are almost always a PHP mail configuration problem — here is how to fix it.

Customers are placing orders and not receiving confirmation emails. You are not getting admin notifications about new orders. WooCommerce email failures are one of the most commercially damaging technical problems a store can have — customers assume their order failed and either contact support or abandon trust in your business. The root cause is almost always PHP mail() not working, and the fix is straightforward: configure SMTP.

Why WordPress PHP mail() fails

WordPress sends email via PHP's mail() function by default. Most shared hosting providers have this disabled or heavily restricted because spammers exploited it for years. Even when it technically sends, emails from PHP mail() frequently land in spam folders or are blocked by receiving mail servers. The solution is to send via SMTP — authenticated email using your own domain — which dramatically improves delivery.

WooCommerce development →

Step 1: Check WooCommerce email settings

Go to WooCommerce → Settings → Emails. Confirm the recipient email addresses are correct for admin notifications. Click on New Order, Processing Order and Completed Order to verify they are enabled. These are frequently disabled when stores are set up and never re-enabled after going live. Save and use the preview links to see what the emails look like.

Step 2: Install an SMTP plugin

Install WP Mail SMTP (free) from the WordPress plugin directory. This plugin replaces the default PHP mail() function with proper SMTP authentication. After installing, run the Setup Wizard and select your preferred SMTP mailer. The plugin integrates natively with Brevo, Mailgun, SendGrid, Postmark and others.

Step 3: Set up a free Brevo or Mailgun account

Create a free account at brevo.com or mailgun.com. Add and verify your domain (you will need to add DNS records — your host or domain registrar can help). Generate SMTP credentials from your account dashboard. In WP Mail SMTP, enter your SMTP host, port (587 for TLS/STARTTLS) and authentication credentials.

Brevo SMTP settings:
SMTP Host: smtp-relay.brevo.com
SMTP Port: 587
Encryption: TLS
Username: Your Brevo login email
Password: Your Brevo SMTP key (from Settings → SMTP & API)

Step 4: Test and verify

Use WP Mail SMTP → Tools → Email Test to send a test message to your personal email. Check inbox and spam. If it arrives in spam, your domain's SPF and DKIM DNS records may need updating — your SMTP provider will show you the exact records to add. After confirming email delivery, place a test order on your store and verify the customer confirmation and admin notification both arrive.

ImportantNever use your personal Gmail or Outlook as the From address for WooCommerce emails. Email providers reject emails that claim to come from gmail.com or outlook.com via a third-party SMTP server. Always send from an address at your own domain — e.g., orders@yourdomain.co.uk. This also makes your business look significantly more professional.

Frequently asked questions

Why are WooCommerce emails not being sent?+

WooCommerce sends emails using the PHP mail() function by default. Most shared hosting servers have PHP mail() disabled or heavily restricted because it is frequently abused for spam. Even when it is technically sending, emails sent via PHP mail() have very high spam rates and often land in junk folders or are silently dropped. The fix is to configure WooCommerce to send via SMTP using a dedicated email service.

How do I test whether WooCommerce emails are working?+

Install the WP Mail SMTP plugin and use its Email Test tool — it sends a test email via your current mail configuration and shows you exactly what happened, including delivery errors. Also place a test order using a personal email address and check whether the customer confirmation arrives. Check both inbox and spam folders.

What SMTP service should I use for WooCommerce?+

For UK businesses, the best options are: Brevo (formerly Sendinblue) which has a generous free tier, Mailgun which offers 5,000 free emails per month and is widely used for WooCommerce, or Amazon SES for high-volume stores. For a simple setup, Gmail SMTP works for low-volume stores but is not recommended for production.

How do I set up SMTP for WooCommerce?+

Install WP Mail SMTP or Fluent SMTP. Create an account with your chosen email service (Brevo, Mailgun, etc.) and generate SMTP credentials. Enter the SMTP host, port (587 for TLS), username and password in the plugin settings. Set the From email to a verified sender address on your domain. Send a test email to confirm it works, then place a test WooCommerce order.

Related service

Reliable transactional email is non-negotiable for an eCommerce store. Our WooCommerce development service includes setting up and testing the full order notification flow — from customer confirmation to fulfilment triggers — on a production-grade SMTP setup.

WooCommerce Development →

Next article

Security

WordPress Brute Force Attacks: How to Detect and Stop Them

→
← All articles