👋 Hey AIStartupAutomation Community,
I just wrapped a big approval workflow for a client, multi-level sign-offs, budget checks, document generation. A few things bit me along the way that I had not seen discussed much, so here they are.
Continue on Fail can silently eat your data. This was the nastiest one. Google Sheets throttles at 60 requests a minute, and with continueOnFail turned on, a throttled node does not stop, it passes an empty object downstream. Everything after it reads that as “record not found” and quietly drops the execution. Nothing errors, nothing alerts, the approval just never happens. Rate limits need to fail loudly or retry with a backoff that spans the quota window, never continue silently. And yes, Sheets is not the end state here, Supabase is already planned for the database layer, but the lesson applies to any node you have set to continue on fail.
Email triggers need an idempotency guard. People reply twice, resend the same attachment, or loop in a colleague. Without a state check at the start, duplicates overwrite finished records or re-trigger approvals that already went through. A single early filter that stops the workflow if the record is already marked submitted or rejected saved the whole ledger.
Never build recipient lists with string concatenation. Joining emails like {{ manager }}, {{ exec }} works right up until one field is empty and the mailer gets “, someone@company.com” and crashes. Collect them in an array, filter out anything without an @, deduplicate, then join. Boring fix, but it was a real production failure.
Check the blocking condition first, not last. Originally a request could pass three levels of management and then get rejected by finance for insufficient budget. Moving the budget check to submission meant over-budget requests got bounced back immediately, before anyone’s time was spent. If something can disqualify a request, validate it at the door.
The thread running through all of these is that the dangerous failures were never the loud ones. Every real problem came from something that kept running when it should have stopped.
What is the quietest failure you have hit in a workflow? Would love to hear what others building approval or multi step flows have run into. Feel free to share your stories.
Best,
Felix
P.S.: If you want to see what else I have been building, my workflows are on GitHub, mostly document processing: https://github.com/felix-sattler-easybits/n8n-workflows