Schedule Mass E-Mails in Advance

I need to send an email every day at 4am to a list of tagged employees. Is there an automation or app extension that I can build into my airtable to pull their emails and send them an automated email each morning. Is this possible to build out?

Welcome to the community, @Megan_Archbold! :smiley: This is definitely doable, but I’ll need a little more detail before getting into specifics. Do you want to send individual messages to each person, or would this be a single email with multiple recipients? In either case, how many recipients will there be?

On a related note, you might also want to monitor this thread, where the user is doing virtually the same thing:

I’ll definitely also monitor the other post! Specifics for my question is that each person is receiving the same email but they can’t have access to the other recipients email. They would need to be BCC’ed or just receive the email individually. Thanks, for replying.

Thanks for the update. One question that you didn’t answer is how many recipients there will be for each of these mailings.

Also, what workspace plan level (Free, Plus, Pro, or Enterprise) is your base in? The main process I’m thinking of will only work in a base that’s a in a Pro plan workspace because it requires running a script as part of the automation.

It’s also possible to automate this with the help of third party services like Zapier or Integromat (as that other thread indicates), but I prefer to work with Airtable’s internal options before looking at outside services wherever possible.

Thank you for all your help! There will be around 200 people getting these emails each day. I currently am on the Pro plan. If there is a script to be run that would be fantastic but I can work with a third party service if need be.

Sorry for the delay in getting back to this. Considering the number of daily recipients, you could run through your monthly allotment of automation runs fairly quickly if each recipient were emailed separately, so I suggest using BCC to send a single email to all recipients. Here’s the basic process:

  • Create a way to trigger an automation every day at 4 am. In your case I suggest making a new table named [Triggers], and adding a single record. Give it a unique name in the primary field (something like “Daily Notice”), and add a formula field with this formula: AND(Name = "Daily Notice", HOUR(NOW()) = X) . For “X” you’ll need to calculate your local timezone’s offset from GMT, then add the inverse of that value to the desired hour you want for the trigger. For example, if you’re in Pacific time, the current offset is GMT -8. You want a 4 am trigger in your local time, so 4 + 8 = 12, meaning you’ll replace “X” in that formula with 12. (Also note that this offset will change during Daylight Saving Time if your timezone uses it, so you’ll need to update the formula twice a year. Annoying, but necessary.) This formula will output a 1 during the 4 o’clock hour, and reset to 0 during all other hours.
  • Make a new automation using the “When record matches conditions” trigger, with the condition being that your formula field contains a 1.
  • The first action in this automation would be a script action that would parse your contact table to look for tagged employee records, building an output string containing all of their email addresses separated by commas. (If you’d like help with this script, just holler; it should be pretty easy to write.)
  • The next step would be a “Send email” action, where you would set the subject line and body as desired, and insert the email address string from the script action’s output into the BCC field.

Regarding the 4am timing, it’s important to note that when using the method I described above, this won’t be super precise. I have a daily automation that’s supposed to run at midnight. Most days it runs by 12:15, but it’s run as late as 12:40-ish on rare occasions. If precise timing is important, we’ll need to look at another option for the trigger.

This sounds amazing! I am having issues with how to set up a script action to have the automation pull the email addresses. If there is a way you can help me with the script it would be extremely appreciated. Thank you for all your help!

I’m pretty tied up over the next few days, but I’ll see if I can do something this weekend. If it’s an urgent issue, DM me and we can talk about how to get this done sooner.

No rush! Thank you for all your help!

Sorry that it’s taking me so long to get back to this. Between multiple migraines and various holiday activities, I’ve been a bit busy.

How exactly are you tagging the records of the employees who should be emailed? A checkbox field? A single select? Something else? Once I get this, I can put together a quick test script. I also need to know the exact name of the field containing the email address.

Sorry for my late reply the holidays have kept me busy. I am tagging the employees currently with a checkbox field. The exact name of the field containing the email address is “E-mail:”. If there is anything else you need please let me know.

I appreciate your help.

Sorry for the delay. My availability has become extremely thin lately, at least for volunteer projects. If there’s an urgent need for this, I’m available for hire. PM me if you’d like to discuss this further.