notesField note

Structured outputs vs function calling

Mar 30, 2026#applied-ai

These get conflated, but they answer different questions. Function calling is the model deciding what to do — pick a tool, fill its arguments. Structured outputs is the model deciding how to shape an answer you've already decided you want.

Use function calling when there's branching: search vs respond, fetch vs compute, escalate vs resolve. Use structured outputs when the path is fixed and you need parseable JSON downstream.

Most teams I see reach for tools when they actually wanted a schema. The result is a bag of one-tool 'pseudo-functions' that always get called — which is just a clumsier way to ask for JSON.