Structured Outputs

by OpenAI

IntermediateDocumentationFree~20 min read

Force model output to match your JSON schema, every time.

Start LearningReviewed July 4, 2026

Overview

OpenAI's 'Structured Outputs' documentation explains how to ensure text responses from the model adhere to a JSON schema you define, so you never worry about missing required keys or hallucinated enum values. It presents the benefits—reliable type-safety (no revalidation or retries), programmatically detectable safety refusals, and simpler prompting—and shows the two ways to use it: setting strict: true on function definitions, and supplying a JSON Schema via the response_format parameter for direct structured responses. The guide compares Structured Outputs to legacy JSON mode (both produce valid JSON, but only Structured Outputs enforces the schema), lists supported models, and includes practical examples such as chain-of-thought, data extraction, UI generation, and moderation, across the Chat Completions and Responses APIs.

At a Glance

Topic
Skills
Level
Intermediate
Format
Documentation
Cost
Free
Duration
~20 min read
Provider
OpenAI
Hands-on
Yes — code/exercises
Certificate
None

What You’ll Learn

  • How to guarantee schema-conformant JSON with strict mode
  • The difference between Structured Outputs and legacy JSON mode
  • How to supply schemas via response_format vs. strict function definitions
  • How to detect model refusals programmatically
  • Patterns for data extraction, UI generation, and moderation outputs

Highlights

  • Schema adherence is enforced, not just valid JSON
  • Works with both tool calls and direct responses
  • Removes brittle 'please respond in JSON' prompt hacking

Who It’s For

Best For

  • Engineers extracting structured data from LLMs
  • Anyone piping model output into typed downstream code

Prerequisites

  • Familiarity with the OpenAI API
  • Basic JSON Schema knowledge

FAQ

What is Structured Outputs?

OpenAI's official Structured Outputs guide, which makes model responses provably adhere to a JSON Schema you define. For engineers who need reliable, type-safe JSON out of an LLM instead of best-effort formatting.

Is Structured Outputs free?

Structured Outputs is free to access.

What level is Structured Outputs for?

Structured Outputs is aimed at a intermediate audience. Recommended background: Familiarity with the OpenAI API, Basic JSON Schema knowledge.

How long does Structured Outputs take?

Expect roughly ~20 min read. Most learners work through it at their own pace.

What will I learn from Structured Outputs?

You'll learn: How to guarantee schema-conformant JSON with strict mode; The difference between Structured Outputs and legacy JSON mode; How to supply schemas via response_format vs. strict function definitions; How to detect model refusals programmatically; Patterns for data extraction, UI generation, and moderation outputs.

Topics

structured outputsjson modejson schemaopenaitype safetydata extraction