- Home
- Resources
- Integrations
- Structured Output Parser
n8n Structured Output Parser nodeConfigure Structured Output Parser in n8n.
The n8n Structured Output Parser node turns a model's free text into a JSON object you can trust. You hand it a schema, it validates every response against that schema, and it retries once when the shape is wrong. Four parameters, one chat model to plug in, and downstream nodes stop guessing.
Verified Trustpilot reviews · AI, automation & growth agency
What does the n8n Structured Output Parser node actually do?
The Structured Output Parser is a sub-node, meaning a node that never runs on its own: you attach it to an AI root node through the output parser port, and it shapes what that root node returns. Its job is narrow and useful. Instead of a paragraph of prose, the root node hands the rest of your workflow a JSON object whose fields you defined in advance, checked against a schema before anything downstream touches it.
Take a content pipeline. An AI Agent reads a raw brief and has to return a title, a hook, three hashtags and a target length. Without a parser you get a block of text and a regular expression to write. With default.jsonSchema filled in, the agent returns keys you can map straight into Google Sheets columns, one row per idea, no cleanup step in between.
Second case: routing. A support message goes through a chat model, which is the sub-node that actually talks to the provider, and the parser forces an answer shaped as a category, a priority and a short summary. An If node reads the category and sends urgent tickets to Slack while the rest go to a queue. The branch logic reads a field, not a sentence, so it stops breaking the day the model phrases things differently.
Third case: enrichment at scale. You loop over rows, ask a model hosted by OpenAI to classify each one, and turn Auto-Fix Format on so a malformed answer gets one more chance instead of failing the run. That second chance costs another model call, which the provider bills on its own terms.
When to prefer something else: n8n's own guidance is that structured parsing directly inside an agent is often unreliable. If your workflow uses an agent and the output has to be exact, pass the agent's answer to a separate LLM chain and parse it there. Results come out more consistent. And if you only need a specific shape for an intermediary step that feeds another AI tool, this node is the wrong tool: describe the response structure in the agent's System Message instead, with a schema or an example response as a template.
Known limits, worth knowing before you build. Expressions inside a sub-node always resolve to the first incoming item, so {{ $json.name }} returns the first name for all five items, not each in turn. The $refs syntax is not supported in Input Schema. The node is at version 1, and attaching it requires the Require Specific Output Format option to be enabled on the root node first. If you want a broader read before committing a stack, the n8n review covers what the platform does well and where it hurts.
What do you plug into it?
Cluster nodes work as a root node plus sub-nodes attached to its ports, one type of sub-node per port. This one sits on both sides: it consumes a chat model and it plugs into a root node.
Ports (what plugs in)
- Chat Model
ai_languageModelrequired
Output (what it plugs into)
- Output Parser
ai_outputParser
01Chat Model
The language model the parser calls when it has to repair an answer. It carries the provider credential, so nothing is authenticated on the parser itself.
Key parameters
- Required : leave this port empty and the node cannot run.
- OpenAI Chat Model or Anthropic Chat Model : the two most common picks when you already hold a key from either provider.
- Google Gemini Chat Model or Ollama Chat Model : the second for a model running on your own machine.
02Output Parser
The port the parser hangs from. It shows up on the root node only after you enable Require Specific Output Format, then you click the attachment point to add this node.
Key parameters
- Required : a sub-node never executes alone, so an unattached parser does nothing.
- AI Agent or Basic LLM Chain : the chain is the safer host when the shape has to hold.
- AI Agent Tool or Auto-fixing Output Parser : the last one wraps this parser rather than replacing it.
Which parameter defines the shape?
The Structured Output Parser node has 4 parameters. For each one: the node as you configure it in n8n, what the parameter changes, and our field notes.
Parameters index
JSON Example
jsonSchemaExampleWhat you see in n8n
Notes & use cases
Paste a sample response and n8n derives the schema from it. This is the fast path: you already know what the object should look like, so you describe it by showing it rather than by writing rules.
Key parameters
- JSON Example : an example JSON object used to generate the schema.
Input Schema
inputSchemaWhat you see in n8n
Notes & use cases
Here you supply the schema used for the function directly, rather than letting n8n infer one. Reach for it when a generated schema is too loose and you need the field types spelled out.
Key parameters
- Input Schema : written in JSON Schema format; the
$refssyntax is currently not supported, so inline every definition instead of pointing at it.
JSON Schema
jsonSchemaWhat you see in n8n
Notes & use cases
The strict option. Output is both structured and validated against what you write here, and the field is required, so an empty value blocks execution of the node.
Key parameters
- JSON Schema : required, the schema the output is structured and validated against.
Auto-Fix Format
autoFixWhat you see in n8n
Notes & use cases
Switch this on and a badly formed answer gets repaired instead of thrown away. n8n sends another call to the model, which the provider bills like any other, so it buys reliability rather than speed.
Key parameters
- Auto-Fix Format : whether to automatically fix output that is not in the correct format.
- Customize Retry Prompt : off, a default prompt handles the retry.
- Custom Prompt : the retry template, which should include the
{instructions},{completion}and{error}placeholders.
Need help automating Structured Output Parser with n8n?
A person reads every message.
Questions people ask next
01Is the Structured Output Parser node included in n8n?
02What do you need to make it work?
03What are the limits of the n8n Structured Output Parser node?
04What should you connect at minimum, and which sub-node is easiest to start with?
05n8n or Make for structured AI output?
Get our weekly integration tips.
No spam. Unsubscribe anytime.



