Have you ever wanted to write an email now but send it a later date and time? Maybe you are sending birthday greetings and would like the email message to be delivered on the exact day. Or you have written the reply to an email but would like to schedule delivery in the recipient’s time zone when the message is more likely to get read.

Microsoft Outlook has a built-in scheduler to help you delay the delivery of email messages. After you are finished writing an email message and hit the Send button, the message isn’t delivered immediately — it stays in your outbox and is sent at the specified time automatically.

Gmail doesn’t let you schedule a later delivery of email messages but there are browser extensions — like Boomerang and Right Inbox — that let you specify a future send date for your outgoing email messages.

These are however subscription based services that allow you to send only a limited number of scheduled email messages for free per month. The other concern is privacy – you will have to grant read and write access to your entire Gmail account to a third-party to use scheduling inside Gmail.

How to Schedule & Send Gmail Messages Later with Google Sheets

If you are reluctant to provide access to your Gmail account to another service, there’s an alternative – Google Sheets.

What you can do is compose all your emails that you would like to be delivered later in Gmail and then specify the exact delivery date and time for these messages in the Google sheet. The messages would be delivered automatically at the time chosen by you. Internally, there’s a little Google Script that takes care of sending the messages at the appropriate date and time.

Schedule Gmail Messages

Schedule your Gmail – Step by Step

Go to your Gmail mailbox and compose a few test messages that you would like to be delivered later. Your draft messages can have rich formatting, you can add attachments, signatures and even inline images. Make sure that you have included the recipient’s email address in the TO field of the drafts.

  1. Click here to make a copy of the Gmail Scheduler sheet (v2.0) in your Google Drive.
  2. Change the default timezone of your Google spreadsheet. The emails will get scheduled in this timezone.
  3. Inside the sheet, choose Authorize under the Gmail Scheduler menu and grant the necessary permissions. This script is running in your own Google Drive and none of your data is accessible to anyone else.
  4. Choose Gmail Scheduler -> Fetch Messages to import all the draft messages from your Gmail account into the Google Sheet.
  5. Set the scheduled date and time for individual messages in column D of the sheet. You can double-click a cell and use the date picker or you can manually enter the date and time as m/dd/yyyy h:mm:ss in 24 hour format.
  6. Go to Gmail Scheduler -> Schedule Messages and run the scheduler. You can close the spreadsheet and it will send messages at the specified time automatically.

Video Tutorial – Schedule Gmail Messages

Here’s a detailed video tutorial (download) that will walk you through the steps.

Scheduling Gmail messages with Google sheets is easy. Please do note that once a message has been scheduled, you should not edit the corresponding Gmail draft message else that particular message would be removed from the queue.

If you wish to edit the draft or need to change the delivery time once the messages have been scheduled, you can repeat the steps #3 to #5 and reinitialize the queue.

Awesome Google Scripts → Custom Google Scripts →

How to Change the Spreadsheet Timezone

The scheduled date and time that you specify in the cells use the default timezone of the spreadsheet. If you wish to send mails in a different timezone, open the spreadsheet and pick a different timezone under File -> Spreadsheet Settings menu.