How to download a file once for all items?

Hello n8n community,

I’m seeking advice on optimizing an Airtable node (but this could be an html node too) that downloads attachments:

Current Setup: The node downloads the same 5MB attachment and text for each item.
Issue: This causes unnecessary repetition and time.
Goal: Download attachment once and add to all items.

Any suggestions on how to achieve this?

It looks like your topic is missing some important information. Could you provide the following if applicable.

  • n8n version:
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app):
  • Operating system:

Hi @blueberry, thanks for reaching out! We have the execute once option available for many of our nodes.

This is also true for Airtable:

Let me know if you still need help adding the attachment to all of the items you referred to or if this helps you onto the right path! Happy building!

@Ludwig maybe I misunderstand how that setting work, but I’ve read that its only going to run once for the first item, which to my understanding if 20 items go into the Airtable node, only the first will get the attachments?

It depends on the desired behavior of the Airtable node, to be honest. Do you mind sharing your workflow (or at least the areas that you are interested in focusing on) and I can point you through it?

1 Like

@Ludwig I can’t directly paste in the section (sensitive information), but I made this diagram of the logic. Basically I’m sending followup emails. But I’m sending them from different accounts depending on who is the sales person responsible for that client. Sometimes I have to send 40+ automated followups. The Airtable node gets the email body and the attachment from a templates table, it’s the same for everyone.


I ran a test with the “Execute once” option, and from 40 input items, only 1 was processed.

Hi @blueberry

You could probably try to do the download attachment with the settings that Ludwig suggested and then use another airtable node to do the text processing (without downloading the attachment again).
You can then combine the two branches via a merge node that holds the downloaded attachment and looping it into your sendEmail nodes.

If that make sense?

Let me know if that works! :raised_hands:

Hi @blueberry! Thank you for the additional information. My team and I looked at this together. Please try out the following (updating the Airtable node to your requirements):

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.