Question: I use Google Apps email to send out details of a product I sell to people who enquire about it via a web form.

After a month or so I go through my *Sent Mail* folder and send a follow up email to all those I haven't heard off. Each email is the same except for the person's name in the greeting.

So in summary, periodically I need to send the same email to recipients in my *Sent Mail* folder that meet certain criteria: I emailed them in the past 2 months, the subject of the email was "My Super Product", I haven't had a reply off them since my last email.

Is there any tool available that can do this automatically?

Answer: 
You should try [Boomerang](http://www.boomeranggmail.com/), I think it will do what you want

> 
> **Schedule an email to be sent later. Easy email reminders.**  
> 
>  Boomerang for Gmail is a Firefox / Chrome plugin that lets you take control of when you send and receive email messages.
> 
> 
>
Modified the sample code in GmailApps a little.
Spreadsheet contains, Name, email, date (m/d/yyyy), text. worked fine for me.

```
function sendEmails() {
  var sheet = SpreadsheetApp.getActiveSheet();
  //var mSheet = sheet.getSheets()[0];

  var startRow = 2;  // First row of data to process
  var numRows = sheet.getLastRow()-1;   // Gets last number of rows to process
  //Logger.log(sheet.getLastRow());
  var tDate = new Date();
  var tFormat = tDate.getMonth()+1 + "/" + tDate.getDate() + "/" + tDate.getYear();

  // Fetch the range of cells A2:D2
  var dataRange = sheet.getRange(startRow, 1, numRows, 4)
  // Fetch values for each row in the Range.
  var data = dataRange.getValues();
  for (i in data) {
    var row = data[i];
    var emailAddress = row[1];  // Second column
    var message = "Dear " + row[0] + ", \n\n" + row[3] + "\n\nCheers";       // Fourth column
    var dFormat = row[2].getMonth()+1 + "/" + row[2].getDate() + "/" + row[2].getYear();
    if (dFormat == tFormat){
      var subject = "Hi";
      MailApp.sendEmail(emailAddress, subject, message);
    }
  }
}

```