---
title: "What is structured output?"
description: "Structured output constrains a model to JSON or a schema, so downstream columns get typed fields instead of free prose."
url: "https://pixeltable.com/learn/what-is-structured-output"
updated: "2026-09-29"
vertical: "Orchestration"
doc: "https://docs.pixeltable.com/datastore/computed-columns"
---

# What is structured output?

Structured output constrains a model to JSON or a schema, so downstream columns get typed fields instead of free prose.

Updated: 2026-09-29
Part of [What is an AI function?](https://pixeltable.com/learn/what-is-an-ai-function).

## On this page

- [How it works](https://pixeltable.com/learn/what-is-structured-output#how-it-works)
- [What it is not](https://pixeltable.com/learn/what-is-structured-output#what-it-is-not)
- [Comparison](https://pixeltable.com/learn/what-is-structured-output#comparison)
- [Where Pixeltable fits](https://pixeltable.com/learn/what-is-structured-output#where-pixeltable-fits)
- [Questions](https://pixeltable.com/learn/what-is-structured-output#questions)

## How it works {#how-it-works}


- The call asks for a schema.
- The result is stored as JSON or split into columns.
- Later expressions read fields, not a paragraph.

## What it is not {#what-it-is-not}

It is not parsing markdown with a regular expression after the fact.

## structured output: this, and the thing it is confused with {#comparison}

|  | This | Not this |
| --- | --- | --- |
| Shape | Fields you named | A paragraph |
| Failure | Invalid JSON you can see | A regex miss |
| Downstream | Typed columns | More parsing |

## Where Pixeltable fits {#where-pixeltable-fits}

Pixeltable can store the JSON from a model call and validate it, including with types you describe beside the column.

## Questions {#questions}

### How does structured output work? {#faq-1}

The call asks for a schema. The result is stored as JSON or split into columns. Later expressions read fields, not a paragraph.

### What is structured output often confused with? {#faq-2}

It is not parsing markdown with a regular expression after the fact.

## In the blog

- [What Is Jev? TypeSafe's System One Model — and Why the Decision Belongs in the Table](https://pixeltable.com/blog/jev-system-one-model)
- [Why Pixeltable is the Ultimate Agent Harness](https://pixeltable.com/blog/pixeltable-agent-harness)
- [String or List of Strings in One Pixeltable Column?](https://pixeltable.com/blog/pixeltable-string-or-list-columns-json-array)
- [Pixeltable April 2026 Release Highlights](https://pixeltable.com/blog/pixeltable-april-2026-release-highlights)
- [Structure the Unstructured: How JSON Columns Handle Non-Deterministic LLM Outputs](https://pixeltable.com/blog/structure-the-unstructured-json-llm-outputs)
- [Pixeltable + Pydantic Integration: Enterprise Type Safety for AI Data Workflows](https://pixeltable.com/blog/pydantic-integration-type-safety)

## Related

- [Documentation](https://docs.pixeltable.com/datastore/computed-columns)
- [Structure the Unstructured: How JSON Columns Handle Non-Deterministic LLM Outputs](https://pixeltable.com/blog/structure-the-unstructured-json-llm-outputs)
- [Pixeltable + Pydantic Integration: Enterprise Type Safety for AI Data Workflows](https://pixeltable.com/blog/pydantic-integration-type-safety)
