Sending the same reminder email every week, submitting a monthly expense report, or emailing a daily status update can quickly become a tedious chore. Many professionals rely on third-party browser extensions or expensive email marketing software to automate these routine messages. However, installing third-party add-ons poses a security risk, as you must grant external companies read-and-write access to your entire inbox.
Fortunately, you can schedule recurring emails natively within Gmail using a clever workaround involving Google Apps Script. This method requires zero coding knowledge, costs nothing, and keeps your data securely within the Google ecosystem.
Setting Up the Automation Script
Google Apps Script is a cloud-based scripting platform built directly into Google Workspace. We will use a pre-written, safe script to tell Gmail to send a specific draft on a schedule you define.
- Open Gmail and create a new email. Fill in the recipient, subject line, and body exactly as you want it to appear each time. Do not click send. Gmail will automatically save this as a Draft.
- Go to your Google Drive and click New > More > Google Apps Script.
- Delete any default code in the editor window.
- Paste the following standard Gmail recurring email script:
function sendRecurringEmail() {
var drafts = GmailApp.getDrafts();
for (var i = 0; i < drafts.length; i++) {
if (drafts[i].getMessage().getSubject() == "YOUR SUBJECT HERE") {
drafts[i].send();
break;
}
}
} - Replace “YOUR SUBJECT HERE” with the exact subject line of the draft you created in step 1.
- Click the Save icon (the floppy disk) at the top of the editor.
Scheduling the Email Trigger
Now that the script knows which email to send, you need to tell it when to run. We do this using a Time-Driven Trigger.
- On the left-hand sidebar of the Apps Script editor, click the Triggers icon (it looks like a small alarm clock).
- Click the blue + Add Trigger button in the bottom-right corner.
- In the popup window, ensure “Choose which function to run” is set to sendRecurringEmail.
- Change “Select event source” to Time-driven.
- Change “Select type of time based trigger” to your preferred schedule (e.g., Week timer).
- Select the specific day and time you want the email to go out.
- Click Save. Google will ask you to authorise the script. Follow the prompts to grant permission.
Managing Your Recurring Emails
Because the script sends the existing draft, the draft itself will disappear from your Drafts folder after the first send. To make it truly recurring, you must recreate the draft after it sends, or modify the script to duplicate the draft before sending.
For most everyday users, a simpler approach is to let the script run, and simply create a new draft with the same subject line whenever you need the recurring cycle to continue for the next week. If you ever want to stop the automation entirely, simply return to the Apps Script Triggers page and delete the trigger you created.