<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=1822615684631785&amp;ev=PageView&amp;noscript=1"/>

How to send emails to different people on different days

Using a combination of GmailGoogle Sheets, and GMass, you can easily email different people on different days. In the Google Sheets spreadsheet containing your email addresses, you simply need a Date column that includes the date on which you’d like that particular email sent.


The basic steps to send automatic emails on specific days in Gmail are:

  1. Set up a Google Sheets spreadsheet containing email addresses and the dates to be sent.
  2. Use GMass to connect to the spreadsheet with a specific filter criterion.
  3. Compose the campaign.
  4. Set it to repeat daily.
  5. Send it out!

Set up your spreadsheet

Your spreadsheet can contain any number of columns to personalize your emails, but for date-based sending, it needs to include a column for the email addresses and the EmailSendDate, for when you want each email sent out. That date can be anything that pertains to your use case (see Other Use Cases below after the example).

Customer contact spreadsheet showing dates on which emails are to be sent out.
Customer contact spreadsheet showing dates on which emails are to be sent out.

Above is our sample spreadsheet containing a list of people and the corresponding EmailSendDates. Note that the dates can be in any valid date format. In the example above, I am showing a number of different dates, with or without the year information, and using different formatting, just to show the flexibility. In your actual spreadsheet, you would probably stick to a standard format.

In what format should the date be? For this example, your date column can contain dates with years or without years, and they can be in any recognizable U.S.-based date format. For a date of January 15, 2019 for example, the spreadsheet cell can contain “1/15/19”, “1/15/2019”, “01/15/19”, “January 15, 2019”. It should not contain, however, the European date format of “15/1/19”.

If you are sending something out on an annual basis on that date, and therefore the year does not matter, you can leave years off of the date. For example, “1/15” and “January 15” would be acceptable date values. In this example, that is the approach I will follow (see the last example in Other Uses Cases below if you do need the year information to be used).

Set up the filter criterion in GMass

Click the GMass spreadsheet icon

GMass spreadsheet button, found at the top of Gmail page.
GMass spreadsheet button, found at the top of Gmail page.

and choose the spreadsheet and worksheet that you just set up. Because we don’t want to send an email to everyone on the spreadsheet at once, we need to specify a filter criterion so that emails only go out when the current date matches the date in the EmailSendDate column.

Choosing the spreadsheet and applying the filter.
Choosing the spreadsheet and applying the filter.

The filter criterion is based on the “EmailSendDate” column in the spreadsheet. We want to match rows where the EmailSendDate is equal to the current date. In this example, we are going to do it without regard to the year of the EmailSendDate.

Once you’ve inputted the filter criterion, click the CONNECT TO SPREADSHEET button to continue.

Note: If it’s no recipient has an EmailSendDate that matches today, then the Gmail Compose window will launch with an alias address in the To field representing 0 addresses. That is normal (and is shown in the next screenshot). It just means that right now, 0 emails will be sent. Since you’re going to set up the campaign to repeat daily, it will check to see if anyone has an EmailSendDate on each day the campaign runs, and send out the ones that do.

Set up the mail merge

Compose window in Gmail should have launched where you can enter the Subject and the Message for the email. Here I’ve personalized the Message with the first name.

The outgoing email.
The outgoing email.

Again, don’t be alarmed by the alias address representing 0 recipients. That’s just because it happens that today’s date does not match any of the recipients’ EmailSendDate. If any had matched, they would be shown in the To: field.

Now, in order to get this email to send every day to just the recipients whose EmailSendDate is that day, you must check the Repeat daily checkbox, which is found in the GMass Settings window.

Checking the "repeat daily" checkbox in GMass Settings.
Checking the “repeat daily” checkbox in GMass Settings.

Setting this to “Repeat daily to new Sheets addresses” will cause GMass to query the spreadsheet daily to see what email addresses match the filter criterion. Without this setting, the email would send today to anyone whose EmailSendDate is today–and then would just stop.

Instead, this setting will tell GMass to:

  1. Query the spreadsheet daily for rows where the current date is equal to the EmailSendDate.
  2. Send an email to just those people.

Bonus: You can keep adding rows to your spreadsheet, even after the campaign has started.

You can add more rows to your spreadsheet anytime you wish, and GMass will automatically pick up the new email addresses and dates. You don’t need to edit your GMass campaign. Just add the new data to the spreadsheet and GMass will detect them and send the emails accordingly on the daily schedule you’ve already set.

Other Use Cases

This is a general pattern that works for a number of use cases, either in business or your personal life.

  • Automated shipping alerts. If you have a spreadsheet of orders your company has received, and one of the columns is the buyer’s email address, and the other is the buyer’s order ship date, you can have an email sent out automatically on the day that a buyer’s product ships, to let them know to expect their package in the mail soon.
  • Automated emails for birthdays, graduations, others’ anniversaries, and other special personal dates. See our guide to sending birthday emails.
  • Subscription or membership ending reminders. This is a really useful one, and can be used with software subscriptions, magazines and newsletters subscriptions, society memberships, web domain yearly registrations, and other services that are paid in a repeating manner, whether annually or at some other scheduling. This one works particularly well if you include two date columns in the spreadsheet: one for the reminder send-out date, and one for the final day the service is expiring. You can then reference that expiration date in the body of the email using {ExpirationDate} as a GMass tag.
    This case is important enough to take a look at a quick example of the spreadsheet, filter criterion, and a sample message you might compose.
    Here is the spreadsheet–note the new ExpirationDate column to the right.

    A Google Sheets spreadsheet that also has an expiration date column.
    A Google Sheets spreadsheet that also has an expiration date column.

    Here is the filter–in this case, we are going to include the year information, so note that the filter is slightly different than what was used in the previous campaign example above.

    A different connection to our spreadsheet. Note the filter is changed from the previous example, with now it is not ignoring the year information.
    A different connection to our spreadsheet. Note the filter is changed from the previous example.

    Finally, this might be the message that you write to all customers–but it will only be sent out to each a month before his or her particular subscription is running out:

    An email that makes use of the ExpirationDate tag used in the previous spreadsheet.
    An email that makes use of the ExpirationDate tag used in the previous spreadsheet.

Is your email list not in Google Sheets?

GMass integrates extensively with Google Sheets to make features like sending automatic date-based emails possible. What if you don’t use Google Sheets as the main warehouse for your email list data? Using one of the many Google Sheets integrations from Zapier, you can automatically sync data from almost any database system with Google Sheets.

Want more?

You may be interested in an overview of how GMass sends mail merge campaigns with Google Sheets. You may also be interested in reading about setting up daily recurring campaigns using data in Google Sheets, which is what is necessary to send birthday and date-specific emails. And lastly, here’s a detailed guide to filtering rows in your spreadsheet for mail merges, in case you want to learn about techniques beyond just date filters in choosing which spreadsheet rows to send emails to.

Email marketing, cold email, and mail merge inside Gmail

Send incredible emails & automations and avoid the spam folder — all in one powerful but easy-to-learn tool


Download Chrome extension - 30 second install!
No credit card required
Love what you're reading? Get the latest email strategy and tips & stay in touch.

    1. Hi Joven,

      At this time, there’s no automatic way of doing so. You would have to connect your 2nd spreadsheet (that contains the next 2000 contacts) to your 2nd account then copy and paste the email body from the original campaign from the 1st account.

  1. Hi, besides the “EmailSendDate” column, Is it possible to add a column for the specific time? Like 9:55AM? What would be the name of that column? And what´s the hour format I should use? Thank you.

Leave a Reply

Your email address will not be published. Required fields are marked *

Find out why GMass is the most popular Gmail mail merge tool in the world

Easy to learn. Easy to use. Packed with time saving, email enhancing features.

Try GMass for free Then check out the quickstart guide to send your first mail merge email in minutes!


Share This