Best Practices for Workflows (All In One or Separated?)

I have a mobile app that uses n8n for all its backend processes, in a single workflow.

This workflow includes payment webhooks, notifications to telegram, database management (firebase) and a few website scraping (http requests) running on cron every 10 min.

I also have many deactivated nodes inside this workflow (you can see them in grey), which are currently not being used, but I would like to keep them in case I need it again in the future.

The problem is that the workflow is naturally getting slower, especially when I try to rename a node, it takes around 5 seconds after pressing Enter.

It’s also good to mention that all my crons are using a getWorkflowStaticData(‘node’) function to avoid duplicates.

My question is:

  1. Is it a good practice to run many projects in a single workflow?
  2. Is it a good practice to keep paused processes or should I delete them?

Besides its Disk Usage growing a little too fast (probably due to execution logs), the rest is running fine with a Digital Ocean 2 GB Memory / 2 Intel vCPUs / 60 GB Disk docker droplet.

Thanks for the help.

Eduardo

Hi Eduardo,

  1. Is it a good practice to run many projects in a single workflow?

It won’t make much of a difference during the execution itself but you’re quite right - more nodes in your workflow mean more data is stored in your database table recording past executions, leading to a higher disk usage. So, you might want to enable data pruning to reduce the disk space used by n8n data.

As for the UI slowness you have encountered, @Mutasem would be the right guy to talk to about the exact reason. My understanding is that this is related to n8n having to redraw the entire canvas after certain changes such as renaming a node. More nodes on the canvas will mean this operation takes longer.

  1. Is it a good practice to keep paused processes or should I delete them?

I typically keep old workflows unless I am absolutely certain I won’t need them anymore.

So tl;dr yes it might be a better n8n experience for you if you were to move individual processes into separate workflows. It’ll also make it easier to look up execution logs going forward.

Yes, at the moment, rename is a particularly expensive operation and something we are working towards improving.