Reduce workflow iterations - batch?

Hi everyone

I have an n8n flow that basically - in a nutshell - checks if a user should receive an email and then sends that email to them. In this case there’s 1000s of users that get sent an email in any one day. Considering I’m using Cloud and this would mean that I could quickly burn through my ‘monthly executions’ in just one email blast, what can I do to prevent it being sent on an individual basis? Is there some kind of node that batches the users together and then say for example sends an email to that batch after every 1hr period?

Any advice would be greatly appreciated.

Thank you

Stephen

No you can run it as you have it currently set up. The reason is that n8n does not charge per action as companies like Zapier or Integromat do. We rather charge per workflow execution. Meaning if you run one workflow which sends 1000 emails it will just count as a single execution.

Hope that helps!

Thanks Jan, but I think my concern was how the workflow gets executed. For example, essentially all I need to do to send the email is filter all the users in the AirTable Table that match my screening requirements for them to receive an email (for instance, age and job title demographic filters), and once filtered select/check the appropriate column 1st row cell result in that Airtable (that triggers the n8n workflow) and then copy and paste that select/check column down to the other 1000s of results.

So in this example I envisage the 1st selection (before I copy and paste down) to trigger the active workflow and fire the first email off, but then I’m wondering, depending on how accurately AirTable API and n8n communicate with each other if it sees the next mass copy and paste (probably taking me 2-3 to copy and paste) of the 1000s of following AirTable rows as just one workflow execution/trigger, or will it see the sub-second differences between each individual row result that is pasted down (I hope I’m explaining my myself okay here), as I’ve noticed that the actual n8n execution durations are measured to something like 4 decimal places in respect of their execution speed e…g 0.0350 (or something like that anyway) which suggests that in fact such a copy/paste could possibly be measured/enacted in the same way?

Thanks for your help with this, as regardless its good to understand how the system works and executes. :slight_smile:

Hey @spessex,

As Jan mentioned, if these 1000s of records are processed in a single execution, it will be considered as one execution and not 1000.

When we use the word Execution for workflows, we mean the complete process from the first node to the last node in the workflow.

Let me share a small example that might help you understand this better. Consider a workflow that fetches 1.5k records from Airtable, checks for a condition on all these records, and if the condition is satisfied send them an email. Let’s say out of 1.5k, 1k satisfy the condition. The workflow sends emails to each of these records. All this process took place in a single workflow in a single execution (the workflow was executed only once). Since the workflow is executed only once, we count that execution against the limits. We don’t count the number of records you processed in an execution.

I hope this helps :slight_smile:

2 Likes