1. Documentation /
  2. Email Troubleshooting

Email Troubleshooting

In some cases, issues can arise that prevent your WooCommerce shop from sending emails, or your shoppers from receiving them. In this document, we’ll address some common issues that can occur with shop emails, and how to troubleshoot them.

By default, WooCommerce sends mail using the wp_mail() function, which is a core function of WordPress. This means that in many cases, if email is not being sent, then the issue is not with WooCommerce itself generating the email, but with the core email function on your web host, or another step in the process.

Often email issues are actually deliverability issues, where your server is sending the email, but it’s not being received.

Whatever the cause, having email delivery issues with your WooCommerce store can be frustrating for both you and your customers. This guide aims to tackle common email problems related to WooCommerce shops, with clear steps to diagnose and resolve these issues.

Related documents for additional reference:

Verifying Your Email Configuration

↑ Back to top

I am getting orders, but no emails being sent!

↑ Back to top

First, let’s double-check that an email actually should be getting sent, before proceeding to more complex troubleshooting. 

Check whether you’re seeing one of the common cases below:

  • If orders haven’t been paid and are still in the Pending Payment status, no email will be triggered.
  • If the relevant email is disabled in your email settings, no email will be sent.


Check if orders are still Pending Payment

↑ Back to top

If your new orders are in the Pending Payment status, no email will be sent.

Payment wasn’t successful

Pending Payment orders can occur when the payment process wasn’t completed successfully. These can be orders where the customer selected to place their order but abandoned the external payment page (e.g. PayPal) or had their credit card transaction declined. The exact behavior varies depending on the payment gateway attempted for the order.

If payment was successful

If you have orders in the Pending Payment status but you have received payment for them, this means orders are not being updated. If orders are not being updated properly, this could indicate the payment gateway is having trouble communicating with your site. In this case, you are not looking at an email issue; you are looking at an issue with your payment gateway, check your payment gateway’s documentation for troubleshooting steps, and contact their support team if necessary. 

Note: If you are still using the now deprecated and unsupported PayPal Standard payment gateway and encounter successful PayPal payments that do not accurately change the order status, we have this troubleshooting page which may help.

An Error prevented the order status change

During order processing, it’s possible for a conflict with your theme, custom code, or another plugin on your site to produce an error before the order status change occurs. If an error prevents the order status change, no email will be sent. If you see this happening on your site, to find out what may be causing it, you can:

Check your Email Settings

↑ Back to top

Orders that are successfully updated to the Processing status should generate an email if the email notification is enabled in your WooCommerce email settings.

To check that emails are enabled in the settings:

  • Navigate to your site’s admin area.
  • Visit WooCommerce > Settings > Emails.
  • Select the relevant email template. 
  • Ensure the “Enable this email notification” box is ticked for order notifications 
  • If the email is enabled, but not being sent. This is likely the result of a conflict. To find out what may be causing this, you can:
Double check that the email is enabled in the settings

Check if emails are sent, but not received

↑ Back to top

If emails are enabled, and paid orders are correctly updating to the Processing status, there could be an issue delivering the email. This could mean a spam blocker has classified your emails as spam and stopped them. First we should check if the site is indeed generating and sending the email. Installing a mail logging plugin can help verify this.

Install WP Mail Logging plugin. This will log all outgoing emails from your WordPress site, so you can see what is being sent. Once installed:

  • Generate a test order.
  • Navigate to your site’s admin area.
  • Visit > WP Mail Log
  • Check the log to verify that your test order generated an email,.
  • Check the log to determine if there are any sending errors reported.

After an email is successfully sent, the email logs should look something like this:

The email is shown in the log table, where you can see the Receiver, Subject, Message, and Headers.
If errors are shown, use the error message to investigate further.

If the email was sent, but not received, there are a few steps that can be taken:

  • Make sure you’re using an email address that matches your site’s domain in the “From” Address field in WooCommerce > Settings >Emails.
    • Using your @gmail.com, @yahoo.com or similar public domain email address is likely to cause emails to land in spam folders or be blocked due to a mismatch between the declared sender (servers of Gmail, Yahoo, etc.) and the actual sender (your server).
    • If your personal email is being used as the “From” Address, update this field with a registered email address that uses your website’s domain name.
  • Sign up for an account with a dedicated SMTP provider that will send the email for you. An average site can usually stay within free usage. This will be more reliable than your own server’s mail-sending function.
  • Check whether your site’s emails have proper authentication in place. This can avoid being spam filtered.

If the email was not sent or logged, this could indicate a conflict is preventing your site from creating emails. To find out what may be causing this, you can:

Questions and Support

↑ Back to top

Do you still have questions and need assistance? 

This documentation is about the free, core WooCommerce plugin for which support is provided in our community forums on WordPress.org. Searching there you’ll often find that your question has been asked and answered before.

If you haven’t created a WordPress.org account to use the forums, here’s how.

  • If you’re looking to extend the core functionality shown here, we recommend reviewing available extensions in the Woo Marketplace.
  • Need ongoing advanced support, or a customization built for WooCommerce? Hire a WooExpert agency.
  • Are you a developer building your own WooCommerce integration or extension? Check our Developer Resources.

If you weren’t able to find the information you need, please use the feedback thumbs below to let us know! 🙏