This Is Costing You Money
Every failed order confirmation creates a concerned customer. They check spam, contact support, and sometimes request refunds for orders that were actually successful. One study found that 23% of customers who don't receive confirmation abandon the brand entirely.
📋 In This Guide
1. Common Causes of WooCommerce Email Failures
Before we fix the problem, let's understand what's causing it. WooCommerce email failures typically fall into one of these categories:
WordPress/Server-Level Issues
The most common cause of WooCommerce email problems isn't WooCommerce at all - it's how WordPress sends emails by default:
- PHP mail() failures: WordPress uses PHP mail() by default, which has poor deliverability and often fails silently
- Server restrictions: Many hosts disable or limit outbound email to prevent spam
- Missing authentication: Emails without SPF/DKIM go to spam or are rejected
- IP reputation: Shared hosting means shared (usually poor) email reputation
- Timeout issues: High-traffic sites may have emails queued and never sent
WooCommerce-Specific Issues
- Email disabled: Specific email types can be accidentally disabled in WooCommerce settings
- Wrong recipient: Admin email or customer email misconfigured
- Template errors: Broken email templates can prevent sending
- Plugin conflicts: Other plugins interfering with WooCommerce emails
- Order status issues: Emails only trigger on specific status changes
Deliverability Issues (Emails Sent But Not Received)
- Going to spam: Emails are delivered but filtered by recipients
- Blocked by provider: Gmail, Yahoo, or corporate filters rejecting your emails
- Wrong address: Customer typos in email addresses
- Full mailbox: Recipient's mailbox is full (rare)
📊 The Statistics
In our experience, 90%+ of WooCommerce email problems stem from WordPress-level email delivery issues (PHP mail() and lack of authentication). Fixing this one issue usually resolves everything.
2. Quick Diagnosis: Is It WordPress or WooCommerce?
Before diving into fixes, let's identify where the problem actually is:
Test 1: Can WordPress Send Email At All?
First, let's see if the problem is WordPress or specifically WooCommerce:
- Go to Users → Your Profile in WordPress admin
- Scroll down and click "Generate Password"
- Check if you receive the password reset email
If you didn't receive the password reset email: The problem is WordPress-level email delivery. Skip to Section 3.
If you received it: WordPress can send email, so the issue is likely WooCommerce-specific. Continue to Test 2.
Test 2: Are WooCommerce Emails Being Generated?
With an SMTP plugin that has logging (like Authority Mailer SMTP), you can see if WooCommerce is even attempting to send emails:
- Place a test order using a test email address
- Check your SMTP plugin's email logs
- Look for the "New Order" and "Order Confirmation" emails
If emails appear in logs but weren't received: The email was sent but didn't arrive - likely a deliverability/spam issue.
If no emails in logs: WooCommerce isn't generating the emails - check WooCommerce settings (Section 4).
Test 3: Check Spam Folders
It sounds obvious, but always check spam/junk folders. Unauthenticated WordPress emails are frequently filtered as spam. Check:
- Spam/Junk folder
- Promotions tab (Gmail)
- Quarantine (corporate email)
- Other/Updates folder
3. The Permanent Fix: Setting Up Proper Email Delivery
If your WordPress emails aren't being sent (or are going to spam), the solution is to replace PHP mail() with a proper SMTP service. This is the single most impactful fix you can make.
Step 1: Install an SMTP Plugin
We recommend Authority Mailer SMTP because it:
- Supports 17 email providers with one-click setup
- Logs all sent emails so you can verify delivery
- Shows exactly which emails failed and why
- Integrates seamlessly with WooCommerce
Install from Plugins → Add New → Search "Authority Mailer SMTP" → Install → Activate
Step 2: Choose an Email Provider
For WooCommerce stores, we recommend these providers based on your volume:
Small Store (<100 orders/day)
SendGrid - 100 emails/day free forever. Perfect for most small stores.
Medium Store (100-500 orders/day)
Mailgun or Brevo - Affordable scaling with better free tiers.
Large Store (500+ orders/day)
Amazon SES - $0.10 per 1,000 emails, nearly unlimited scale.
Speed-Critical Stores
Postmark - Fastest delivery times, premium service for important transactional emails.
Step 3: Configure Your Provider
Each provider has a slightly different setup, but the general process is:
- Create an account with your chosen provider
- Get your API key or SMTP credentials
- Add SPF and DKIM records to your domain's DNS
- Enter credentials in Authority Mailer SMTP
- Send a test email to verify setup
✓ Expected Result
After setup, all WordPress emails (including WooCommerce) automatically route through your SMTP service. Emails arrive in inbox, not spam, and you have a complete log of everything sent.
4. WooCommerce Email Settings to Check
If WordPress can send email but WooCommerce emails aren't working, check these settings:
General Email Settings
Go to WooCommerce → Settings → Emails and verify:
- "From" name: Should be your store name
- "From" address: Should match a verified sender in your SMTP provider
- Header image: If set, verify the image exists and is accessible
- Footer text: Should have your actual business information
Individual Email Settings
Click on each email type (e.g., "New order", "Completed order") and verify:
- Enable/Disable: Make sure the email is enabled
- Recipients: For admin emails, verify the recipient email address
- Subject: Should not be empty
- Email type: HTML is standard, but try switching to plain text if having issues
WooCommerce Email Types Explained
| Email Type | Sent To | Trigger |
|---|---|---|
| New order | Admin | Order placed |
| Cancelled order | Admin | Order cancelled |
| Failed order | Admin | Payment failed |
| Order on-hold | Customer | Status → On Hold |
| Processing order | Customer | Status → Processing |
| Completed order | Customer | Status → Completed |
| Refunded order | Customer | Refund processed |
| Customer note | Customer | Note added to order |
| Reset password | Customer | Password reset requested |
| New account | Customer | Account created |
5. Testing Your WooCommerce Emails
Method 1: Place a Test Order
The most reliable way to test WooCommerce emails:
- Create a test product with a low price (e.g., $1)
- Use a coupon for 100% off, or enable "Cash on Delivery" temporarily
- Place an order using a test email address you control
- Check both admin and customer email addresses
- Look in email logs (if using an SMTP plugin with logging)
Method 2: Resend Order Emails
You can resend emails for existing orders:
- Go to WooCommerce → Orders
- Open any order
- In the "Order actions" dropdown, select "Resend order emails"
- Choose which email to resend
Method 3: Use an Email Testing Plugin
Plugins like "WooCommerce Email Test" or Authority Mailer SMTP's built-in test function let you send test versions of all WooCommerce emails without placing orders.
6. Fixing Specific Email Types
🔴 Order confirmation emails not sending
Check: Is the "Processing order" email enabled? For PayPal orders, the email only sends when payment is confirmed.
Fix: Enable the email in WooCommerce → Settings → Emails → Processing order.
🔴 Admin new order notifications missing
Check: Is the correct admin email set? Is the "New order" email enabled?
Fix: Verify recipient email in WooCommerce → Settings → Emails → New order → Recipients.
🔴 Shipping confirmation not sending
Check: Shipping confirmation is typically the "Completed order" email. Are you marking orders as complete?
Fix: Change order status to "Completed" when shipped, or use a shipment tracking plugin.
🔴 Password reset emails failing
Check: This is a WordPress core email, not WooCommerce-specific. Test with the WordPress password reset.
Fix: If WordPress password reset works but WooCommerce doesn't, check for plugin conflicts.
🔴 Emails look broken or unstyled
Check: Is your WooCommerce email template file corrupted? Are CSS files loading?
Fix: Go to WooCommerce → Status → Tools → and click "Clear template cache".
7. Preventing Future Issues
Set Up Email Logging
The single most important thing you can do is enable email logging. With a plugin like Authority Mailer SMTP, you can:
- See every email sent from your store
- Verify delivery status (sent, failed, bounced)
- View the actual email content
- Identify patterns in failures
- Prove to customers that emails were sent
Monitor Key Metrics
- Delivery rate: Should be 99%+ (check your SMTP provider's dashboard)
- Bounce rate: Should be under 2%
- Spam complaints: Should be under 0.1%
- Email volume: Monitor for unusual spikes that might indicate issues
Regular Testing Schedule
Set a reminder to test your WooCommerce emails monthly:
- Place a test order and verify all emails arrive
- Test password reset
- Check that emails arrive in inbox, not spam
- Verify email content looks correct on mobile
Stop Losing Customers to Email Failures
WooCommerce email problems are almost always fixable, and the fix usually takes less than 30 minutes. The key is proper email infrastructure - using SMTP instead of PHP mail() - combined with monitoring to catch issues before customers do.
With Authority Mailer SMTP, you get reliable email delivery for all 17 major providers, complete email logging, and the peace of mind that your order confirmations actually reach your customers.