how to fix wordpress not sending password reset email

WordPress Not Sending Password Reset Email? How to Fix It

Editorial Note: We may earn a commission when you visit links on our website.

Is WordPress not sending the password reset email from your website?

In this guide, we’ll show you the easy way to fix this so that your users can always reset their passwords when they need to.

We’ll also show you how to easily resend WordPress password reset emails if they fail.

Fix Your WordPress Emails Now

Why Am I Not Receiving Password Reset Emails?

You aren’t receiving reset password emails for 2 reasons: either they’re being filed in the spam folder, or your web host isn’t set up to send emails.

WordPress, by default, uses the wp_mail() function to send all emails from your website. This method doesn’t add authentication which is why the emails often get lost or filed in the Junk Mail folder.

Also, we recommend using a domain-verified From email address. Not only are people more likely to trust you if you’re sending messages from your own email domain, but mail servers will also have an easier time verifying your authenticity.

You can easily solve this by using the WP Mail SMTP plugin. We’ll show you how to set it up.

How to Fix WordPress Not Sending Password Reset Email

When users aren’t able to receive lost password emails, they’re locked out of your site. That could mean less engagement or fewer sales for you. Making it easy for users to reset their WordPress login is vital to keeping your site running smoothly.

If you’re the site admin, and you’re not receiving your password reset email, you’ll need to reset your email in the database before you can fix the root cause of this problem. Check out this article on how to reset the WordPress email in phpMyAdmin before continuing.

1. Install the WP Mail SMTP Plugin

WP Mail SMTP is the best SMTP plugin for WordPress. It reconfigures WordPress’ built-in email system so you can use an external email service provider.

To download the plugin, go to the WP Mail SMTP website and log in to your account. You’ll find the download button under the Downloads tab.

Download the WP Mail SMTP plugin

Switch to your WordPress website dashboard and upload the zip file to the plugins page. If you are new to WordPress or need help with this part, check out this guide on installing a WordPress plugin.

Install WP Mail SMTP

After you install the plugin, be sure to Activate it. This will start the Setup Wizard to help you configure the plugin.

2. Connect to a Mailer Service

In this step, we’ll pick an email service and connect it to your WordPress site.

Click on the Let’s Get Started button to start the wizard.

click the Let's Get Started button

WP Mail SMTP offers several mailer options. If you have a WooCommerce or other eCommerce website that sends transactional emails, we recommend a premium mailer like SendLayer,, or Brevo (formerly Sendinblue).

Other SMTP and Gmail are good options if your site doesn’t send many emails.

Once you’ve made your choice, click on the mailer in the Wizard.

Select your SMTP mailer

You’ll now need to set up a connection between the mailer and your website.

In the table below, click on the link for your chosen mailer. This will open up our setup documentation.

Mailers available in all versions Mailers in WP Mail SMTP Pro
SendLayer Amazon SES Microsoft 365 /
Brevo Zoho Mail
Google Workspace / Gmail
Other SMTP

When you’ve set everything up, switch back to this guide to follow the next steps in the wizard.

If you want to set up multiple mailers, you can do so in the Additional Connections settings once you’ve finished the Setup Wizard. Then you can select a Backup Connection and configure Smart Routing.

3. Enable Email Logging

On the last page in the Wizard, WP Mail SMTP will ask you which options you’d like to enable. The wizard will have 2 options enabled by default: Improved Email Deliverability and Email Error Tracking.

WP Mail SMTP doubles as the best email log plugin for WordPress, so you don’t need to look for another plugin to access email logs right from your WordPress admin dashboard.

If you have the Pro version of the plugin, you can enable Detailed Email Logs.

Enabling email logs and email alerts in the WP Mail SMTP Setup Wizard

This feature will store information about all the emails your site sends in Complete Email Reports. If you want to receive an overview of your email logs each week, make sure to also enable the Weekly Email Summary.

Email Summary With Statistics in WP Mail SMTP Pro

Finally, Instant Email Alerts will send you a notification if your site fails to send an email. That way, you can fix the problem quickly so your emails start sending again.

An email alert notification

Now that you have email logging enabled, you can also resend a specific user’s password reset emails. We’ll show you how to do that next.

4. Resend WordPress Password Reset Email

On the next screen, you can also enable advanced email logging features.

Configuring email log settings in the WP Mail SMTP Setup Wizard

These features enable you to unlock all of the functionality you need to keep an eye on your emails, like:

  • Log the entire contents of your emails
  • Track email opens and clicks
  • Resend failed emails or forward them individually to a different address
  • Store attachments along with sent emails
  • Search and view the log file in your WordPress dashboard
  • Export sent emails in CSV, XLSX, or EML format
  • Get a weekly deliverability report by email
  • View multisite email logs on separate pages easily.

So be able to resend emails, you have to enable the Save the content of all emails option, but we recommend turning on all of these features.

To complete the installation, copy the license key from your WP Mail SMTP account and paste it into the box. This will enable Pro features and automatic updates.

Enter WP Mail SMTP license key

Now we’ll generate a password reset email to test out the email logging feature. Head to Users » All Users in the WordPress dashboard

Hover over a username and click the Send password reset link.

Send password reset email in WordPress

Now let’s head back to the email log. In the left-hand sidebar, open up WP Mail SMTP » Email Log.

Open the email log in WP Mail SMTP

You’ll see the password reset email right at the top of your email log. The green dot shows that it was successfully sent. If it failed, you’d see a red dot here instead.

Now click on the subject to open up the log.

Open password reset email log in WordPress

At the bottom right, click Resend to send the email again.

Resend password reset email in WordPress

You can add additional recipients or replace the original recipient if you want to forward the password reset email to another mailbox.

Forward password reset email in WordPress

You can also resend in bulk from the mail email log screen.

For a final tip, let’s look at controlling some other emails that WordPress sends out from your website.

5. Control Default WordPress Notifications

In addition to sending password reset emails to your WordPress users, your site also sends other default notifications for:

Sometimes these emails can get a little overwhelming if you have a busy site with lots of users. That’s why WP Mail SMTP lets you easily turn off the default notifications you don’t want to receive.

From the WordPress dashboard, head back to WP Mail SMTP » Settings.

WP Mail SMTP settings menu

Now, you’ll want to switch to the Email Controls tab at the top.

Email Controls in WP Mail SMTP

Here, you’ll find all default WordPress notifications divided into sections. You can simply turn off the toggle next to each setting to stop receiving email notifications.

Disable automatic plugin update emails

And that’s it. Now you’ve fixed WordPress not sending the password reset emails from your website so your users can easily create new passwords!

Fix Your WordPress Emails Now

FAQ –  WordPress Not Sending Password Reset Email

We get a lot of questions about what causes the WordPress password reset email to get stuck. Check out some of our FAQs below.

Why am I not getting password reset emails locally in a developer environment?

A local server requires an SMTP plugin to be configured to send email. The wp_mail() function won’t work.

Can I customize the password reset email in WordPress?

Yes, if you use WP Mail SMTP, you can customize the email template, subject, sender names, and content.

How can I tell if the password reset email was sent successfully?

To see whether a password reset email was successfully sent, check for sent messages in your SMTP email history. If you’re using a plugin that allows you to enable email logs, you can do that, as well.

Can I find email error logs in WordPress?

Yes, you can find your email error logs in WordPress at /wp-content/debug.log. It’s also possible to log email failures by enabling debugging in wp-config.php.

How can I increase the password reset link expiration time?

By default, password reset links will expire in 12 hours. You can change this, however, and give users more time if you’d like. To do that, locate the PASSWORD_RESET_TIMEOUT constant in your wp-config.php file and configure it to increase the expiration time.

Next, Set Up Push Notifications in WordPress

Want to make sure your visitors are always up to date? You can easily add browser push notifications so they never miss a new blog post.

Check out this article on how to set up push notifications in WordPress.

Ready to fix your emails? Get started today with the best WordPress SMTP plugin. WP Mail SMTP Elite includes full White Glove Setup and offers a 14-day money-back guarantee.

If this article helped you out, please follow us on Facebook and Twitter for more WordPress tips and tutorials.


  1. What an absolutely useless article. If I could log into my WordPress site to do any of these things, I wouldn’t need to reset my password.

    1. Hi Joe,

      Thanks for bringing it to our attention!

      Our documentation team updated the article by adding the following note.

      If you’re the site admin, and you’re not receiving your password reset email, you’ll need to reset your email in the database before you can fix the root cause of this problem. Check out this article on how to reset the WordPress email in phpmyadmin before continuing.

      Thanks! 🙂

  2. Hey nice article here. I thought WP SMTP was just a plugin to make sure your sent emails don’t end up in the spam folder. But reading this article, you sent a password reset to a user email using the wp smpt plugin itself. I’m a bit confused, isn’t that the task of a transactional email service like (, sendinblue…)? Or can WP SMTP also be used to send transactional emails?

    1. Hi Jeff,

      WP Mail SMTP plugin is an integration service. Meaning you can use this plugin to configure a mailer of your choice, to route your website emails. Technically, all of your website emails sent with the WordPress default wp_mail() function, will be routed through your WP Mail SMTP configured mailer.

      Below are some examples of website email notifications that can be automatically routed through the WP Mail SMTP plugin.
      – WordPress user registration emails
      – WordPress reset password emails
      – Form email notifications (contact forms, quotation forms, payment forms created using WPForms plugin, Contact Form 7, or using similar plugins)
      – Order notification emails (if you have an eCommerce store set up on your site)
      – WordPress comment management emails (comment moderation / comment published)


  3. I have a WooCommerce store set up and new order emails are being sent and received fine, but alas the Reset Password email are failing authentication. I’m using smtp for an Office 365 email account. My error message on the pw reset attempts: Email Source: WooCommerce
    Mailer: Other SMTP
    SMTP Error: Could not authenticate.

    Any idea why the WooCommerce notifications are sent fine but the PW reset emails are not being delivered?

  4. What I don’t understand is, it sounds like installing a plugin is the only way WP can send out an essential email like password reset email. Is this the case?

    1. Hi Vincent,

      By default, WordPress does not have a way to authenticate your email account when sending an email. Therefore, when you send emails without the authenticity of the user, they will usually be flagged as SPAM.

      The purpose of the WP Mail SMTP plugin is to send emails using an authenticated email account, so you will have a better chance to deliver them to the inbox of the recipient.

      I hope this helps. Thanks!

  5. Hi! Nice article,
    I’m using WP mail SMTP and everything works fine but only reset password emails are not being delivered. The error log says “You must provide at least one recipient email address.” , constants are properly placed over the message of happy editing in wp-config.php.

    As extra info, sometimes as an admin I receive the reset emails but I´m aware users do not. What could I do?

    Thank you so much!

    1. Hi Richard,

      First of all, I apologize for the delayed response due to the holidays.

      When you get a chance, please create a support thread with more information (Eg: the mailer that you have configured your site) and then we should be able to assist you further.


  6. I am using your plugin with credentials for a valid email account to authenticate, and generally, it works great. The site is a standard WordPress site with WooCommerce.

    If as an admin, I am logged in and use the “Send Password reset” link under Users > User, everything works as expected and the event is also logged under /admin.php?page=wp-mail-smtp-tools&tab=debug-events.

    When a customer uses the “forgot password” link on the front-end login form, everything looks right (“PASSWORD RESET EMAIL HAS BEEN SENT.”), but the email is not getting sent and there is no log of the event under /admin.php?page=wp-mail-smtp-tools&tab=debug-events.

    Any ideas? I’ve tried disabling and testing various plugins with no success. Obvioously, emailing at all works fine, and customers get their order emails, etc. But just not the Password Reset emails.


    1. Hi efishinsea,

      If only your password reset emails are not working and, if you’re using the WP Mail SMTP constants on your WordPress site, most probably you may have added WP Mail SMTP constants incorrectly.

      In that case, please edit the wp-config.php file, and then you need to move those constants above the following line (see here).

      /* That's all, stop editing! Happy publishing. */

      If you’re experiencing a different issue, please create a support thread.

      I hope this helps. Thanks!

      1. Hii!! I am having the exact same issue, but there are NO constants in my wp-config.php file. Everything works perfectly, except when a user clicks ”lost password?” in the front-end, no email is send. I’m launching in one day and don’t know how to get this to work. All help is welcome!

      2. Hi Shirley,

        First of all, you need to confirm whether you are experiencing a plugin or theme conflict.

        To do that, you can deactivate third-party plugins and test. Additionally, you can switch to a default WordPress theme and test.

        If you have added any theme customization codes, you may consider temporarily removing them to further isolate the issue.

        If you require further assistance, please post your question on the WP Mail SMTP support forum, providing additional details you have found.

        I hope this helps. Thanks!

  7. Our customers do not get password reset emails and I see nothing in the Email log. WE use Cloudfare does that interfere with this.

    1. Hi Sherry,
      If you’re using WP Mail SMTP constants to configure the mailer, most probably your password reset emails are not working because you may have added WP Mail SMTP constants incorrectly.

      Please edit the wp-config.php file, and then you need to move those constants above this line.

      I hope this helps. Thanks!

Add a Comment

We're glad you have chosen to leave a comment. Please keep in mind that all comments are moderated according to our privacy policy, and all links are nofollow. Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.

This form is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.