Learn clear steps to debug n8n workflows effectively, fix errors fast, and optimize automations with practical troubleshooting tips.

Book a call with an Expert
Starting a new venture? Need to upgrade your web app? RapidDev builds application with your growth in mind.
A reliable way to debug workflows in n8n is to run the workflow in the Editor UI, activate Manual Execution, inspect every node’s Input and Output data, and use Execution Logs to review what happened. The key is to look at the data flowing between nodes and isolate where it changes in an unexpected way. You can also use Error Workflow, Debug nodes like Set/Function, and the Execution Preview to trace values. n8n debugging is really about watching the JSON move step‑by‑step.
To debug in n8n, you want to slow things down and look at the actual data that each node receives and sends forward. n8n executions are just a chain of nodes passing JSON. Problems usually come from wrong assumptions about that data, missing fields, incorrect expressions, or API responses not matching what you expected. The tools below are how you uncover that.
console.log sends output to the execution data so you can see it later.
Here’s the practical approach I use in production when debugging a workflow.
data.id is actually payload.user.id.{{$json["email"]}} might resolve to undefined and you won’t know unless you hover. That’s how you see what the workflow actually sees.{{$json}} into a property called debug. This helps expose nested objects.// Use console.log() to inspect deep structures
console.log($json);
return items;
API calls are the most common source of errors, so here’s how to debug them properly.
Most expression problems in n8n come from referencing the wrong path. Use the Expression Editor to preview values, and rely on the Autocomplete list on the right side. When in doubt, print the whole object with a Function node and inspect it.
If you're debugging something that only breaks in production, you can attach an Error Trigger workflow. When the main workflow fails, n8n starts the error workflow and passes:
This is extremely useful when workflows run at night, when rate limits hit, or when webhook payloads change.
Sometimes the root cause is not a node bug but workflow design: too many items, long loops, or API rate limits. If a workflow keeps breaking in later nodes, consider splitting it into sub‑workflows, adding rate limits, or using queues.
The main idea: debugging in n8n means inspecting data at every step, confirming assumptions, and using the tools n8n gives you: Manual Execution, Node I/O, Expression previews, logs, and error workflows. Once you get used to watching the JSON flow through, debugging becomes fast and predictable.
When it comes to serving you, we sweat the little things. That’s why our work makes a big impact.