all tools
⬡ DEVELOPER

n8n Workflow Validator

Paste your workflow JSON to detect orphaned nodes, broken connections, missing parameters, and loops — all in your browser.

workflow json

What We Check

{}

Structure Validation

Confirms the input is valid JSON with the required top-level `nodes` array and `connections` object.

Node Analysis

Lists every node with its type, name, position, and whether it is a trigger, action, or utility node.

Orphaned Node Detection

Flags nodes that have zero incoming and zero outgoing connections — they will never execute in a run.

Missing Connections

Finds references in the connections map that point to node names not present in the nodes array.

Disconnected Subgraphs

Uses BFS to count isolated groups of nodes. More than one subgraph means part of your flow is unreachable.

Loop Detection

Runs DFS cycle detection on the node graph to surface feedback loops that may cause infinite execution.

Missing Node Parameters

Checks known n8n node types (HTTP Request, Set, Code, Slack, email, SQL…) for required fields.

Trigger Identification

Identifies which node acts as the workflow entry point — Webhook, Schedule, Form, Chat, and others.

Summary Counts

Shows total nodes, total connections, error count, and warning count in a quick-glance dashboard.

Common n8n Workflow Issues

01

Orphaned node after a refactor

When you reroute a flow and forget to delete an old node, it remains in the "nodes" array but loses all its edges. The validator catches this immediately.

02

Typo in a connection target name

If you manually edit workflow JSON and misspell a node name in the connections object, the connection references a non-existent node. The validator reports it as a ghost target.

03

HTTP Request node without a URL

The "url" field is required for HTTP Request nodes. Workflows exported before filling in the URL will fail at runtime — the validator surfaces this as a missing parameter warning.

04

No trigger node

Workflows without a recognizable trigger (Webhook, Schedule, Form Trigger, etc.) cannot be activated automatically. The validator warns you so you can add one before deploying.

05

Accidentally duplicated node name

Copying and pasting nodes in the n8n canvas can produce two nodes with the same name. n8n resolves connections by name, so duplicates cause unpredictable routing.

06

Loop from an error branch pointing back

Error branches wired back to an earlier node in the same flow create a cycle. While n8n supports limited looping patterns, unintentional cycles often cause stuck executions.

Frequently Asked Questions

What is an n8n workflow?

An n8n workflow is a visual automation flow made up of nodes connected by edges. Each node represents a step — fetching data from an API, transforming it, sending a notification, writing to a database. The workflow JSON file stores all node definitions and their connection map, and can be imported/exported from the n8n editor.

What does 'orphaned node' mean in n8n?

An orphaned node is a node that exists in the workflow's nodes array but has no connections to or from any other node. It will never execute during a workflow run. Orphaned nodes usually appear after refactoring — you rewire the main flow but forget to delete an old node. They waste memory and confuse anyone reading the workflow.

How do I fix 'ghost target' connection errors?

A ghost target error means your connections object references a node name that doesn't exist in your nodes array. This typically happens after renaming a node in the JSON by hand without updating all connection references. Open the JSON, search for the old name in the connections object, and update it to match the new node name exactly (n8n connections are case-sensitive).

Can n8n workflows have loops?

n8n supports controlled looping via the Loop Over Items node and recursion patterns, but accidental cycles — where node A connects to node B which connects back to node A — cause infinite execution and should be avoided. This validator uses depth-first search to detect any cycle in your node graph and flags it as a warning so you can decide whether it is intentional.

Why does my workflow have multiple disconnected subgraphs?

Multiple subgraphs usually mean you started building a second branch and never connected it to the main trigger path. The validator counts how many isolated clusters of nodes exist. If the count is greater than one, some nodes will never be reached from the trigger. You either need to connect them or move them to a separate workflow.

Does this tool send my workflow JSON to any server?

No. All validation runs entirely in your browser using JavaScript. Your workflow JSON never leaves your device and is not stored, logged, or transmitted anywhere. This makes it safe to paste credentials or private API configurations without concern.

More developer tools

JSON formatter, JWT decoder, Base64 encoder, regex tester, and more.

Browse all tools