How to change reset password email subject in laravel?
Stefan Izdrail
Founder & Senior Architect · 2026-06-29
Title: Customizing Laravel's Default Reset Password Email Subject
Introduction
Laravel is a powerful PHP framework that provides many features out of the box. As a beginner, you may need to customize certain aspects of your application, including changing the subject line for password reset emails sent from your app. In this blog post, we will guide you through the process.
Prerequisites
Before modifying the email subject, make sure you have installed Laravel 5.3 and configured the SMTP settings for sending emails using Gmail (or another email provider). Additionally, you need to scaffold your authentication by running the command `php artisan make:auth`. If it's not already set up, follow this guide from Laracasts on setting up your project for password resets.
Changing the Reset Password Email Subject
To change the default email subject line "Reset Password", you need to modify the mail template and override the function that sends the reset link.
1. Open the `/resources/views/emails` folder and locate the file called `password/reset.blade.php`. You will find the HTML code for the password reset email, including the subject line. Make changes to the subject as desired. For example: replace "Reset Password" with your preferred subject like "Password Reset Notification".
2. In the same folder, create a new file called `reset_link_email.php` and add the following code:
```php
to($email)->subject('Your custom subject line here');
$this->token = $token;
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
// Return the modified content of the email template with your new subject line
return $this->view('auth.passwords.reset_link')->subject($this->subject)->with(array('token' => $this->token, 'email' => $this->toEmail()));
}
}
```
3. In the `/app/Http/Controllers/Auth` folder, open `ForgotPasswordController.php` and locate the function `sendResetLinkEmail`. Replace it with this code:
```php
public function sendResetLinkEmail($email) {
// Get the password broker instance for resetting passwords
$broker = app('password.broker');
$response = $broker->sendResetLink($email);
return new SendResetLinkEmail($email, $response->getToken());
}
```
4. Finally, in `ForgotPasswordController.php`, replace the line `return view('auth.passwords.reset')->with(...` with this:
```php
return app('middleware.send.resetlink')($email)->view('auth.passwords.reset');
```
By following these steps, you have successfully changed your default reset password email subject line to a custom one. If you need further assistance or more detailed examples, refer to the resources mentioned at the beginning of this blog post. Happy coding!