Published workflows run unattended; without error handling, failures go unnoticed until someone complains.
Sooner or later a node fails: an API is down, a record is missing, data is malformed. n8n gives you tools at three levels.
Per node (in the node's Settings tab):
- Retry On Fail: try again a few times with a pause. Good for brief outages.
- On Error: by default the workflow stops. You can instead choose to continue, or to continue using an error output: the node gets an extra output, and failed items go down that branch, where you might log them or notify someone while good items carry on.
Deliberate failures. The Stop and Error node fails the run on purpose with your own message, for example when a required field is missing. That's better than letting bad data continue.
Per workflow: error workflows. Build a separate workflow that starts with the Error Trigger node and sends an alert (Slack, email, a ticket). Then, in each important workflow's Settings, choose it as the Error workflow. Whenever a production run fails, the error workflow receives details: workflow name and ID, the execution ID and URL, the last node that ran, and the error message. One error workflow can serve all your workflows.
Afterwards, open the failed execution in the Executions list, fix the cause, and retry it.
Design tip: make workflows safe to run twice (check whether a record exists before creating it), because retries and re-runs will happen.
Remember
- Retry On Fail handles brief outages
- Error outputs let failed items take their own branch
- A central error workflow (Error Trigger) alerts you about failed runs
Watch out for
- Setting nodes to "continue" on error without logging, so failures disappear silently.