Automation: send an email every month

Hi,
I want to have an automation get sent every month. I followed the steps outlined here using the HOUR() function wrapped around `NOW() Automation: send an email every month at specific time of day to list of users, but because an hour is still 60 minutes, the automation fires more than once during that hour. Ideally, it would just fire once.

Any ideas on how to make this happen?

Thank you

Hi @Team_Upbuild

Maybe with a formula that shows the current month in combination with the trigger “when record updated” (only for that formula field)? That should trigger once a month.

DATETIME_FORMAT(NOW(),"MM")

And if you want a specific day of the month, just check for the DAY instead of the MONTH.

2 Likes

Thank you. So let’s say we trigger it for the 15th. Would it trigger 2x when it moves from 14th to 15th and then again 15th to 16th?

No. It only triggers when changing to the target value, not when changing from that value to something else.

A simpler method instead of using a formatted date is to use the DAY() function looking for a specific day. The formula could be:

DAY(NOW()) = 15

That will output a 1 when the current day is the 15th of the month, and a 0 at all other times. Use the “When record matches conditions” trigger for the automation, and look for that formula to output a 1. It will trigger on the 15th of every month.

1 Like

Thank you. I am already using this “when record matches conditions” but the problem is that it triggers multiple times (even more than 100 times) because the record matched the condition for a full 24 hours. I want it to trigger only once.

The only reason that it would trigger multiple times in a day is if the value actually changed multiple times during the day. When the value goes from 0 to 1, it only triggers the automation once, no matter how long the value stays at 1. I use a similar setup to run a daily reset of my planning system. In my case, I’m triggering based on a specific hour of the day, but it still only triggers once.

It’s also important to note that this formula should only be set to run on a single record. In my case, I have a table that I use for specific setup data, and it only contains one record, so that formula can only run once. If you have that formula in a table with 100+ records, that would explain why it’s running 100+ times: it’s running once per record. If you don’t want to make a separate one-record table just for this trigger, you could augment the formula to only run that test on a record that matches certain conditions; e.g. a specific name in a certain field. For example:

AND(Name = "Something Special", DAY(NOW()) = 15)

That will only output a 1 on the 15th of each month on a record where the {Name} field matches “Something Special.” All other records will remain at 0, and won’t accidentally trigger the same automation.

2 Likes