Structure your content

Your texts and images are crucial parts of your products and services. You shouldn’t keep them constrained to one platform or presentation.

Sanity keeps your content flexible and limber. Ready to outrun any new challenge.

An black boxing with the text reading API and lines running to different devices surrounding it.
Why should you care about structured content?
  • It can be authored once and reused across channels.

  • It can be enhanced through third-party APIs.

  • It makes it easy to prototype, iterate and keeping moving forward.

  • It unlocks programmatic approaches to workflows and applications design.

What do we mean by structured content?
  • Your rich text is stored as a clean data structure. Design a content model giving you exactly the metadata you need.

  • No need for multiple image versions. We crop and resize your hi-res images on-the-fly.

  • You can sketch content models for prototypes and move right to production.

I was absolutely blown away by my ability to structure content easily. The inline modules in the rich text editor really changed the game and elevated the experience, especially for the client.

Kevin Green

Image pipeline

Your assets should be treated as structured content too. Upload images and transform them on demand. Query for metadata like dominant colors, sizes, geo-location, and EXIF metadata.

  • Hotspot: auto re-crop to new aspect ratios

  • Store 250-megapixel originals

  • Global CDN

  • Ingest JPG, GIF, PNG & TIFF

  • Output to JPG, PNG & WebP

  • Rasterize SVGs

Portable Text

Portable Text is an open specification of how we describe rich text. You can turn into pretty much into any markup language, be it HTML, JSX, Vue, Markdown, SSML, XML, etc.

It’s designed to be efficient for real-time collaborative interfaces and makes it possible to annotate rich text with data structures.

Illustration showing the logo for Portable Text.
  • Easily mix rich text and data objects

    Allow users to embed any complex data type in rich text, just by specifying that it can go there.

  • Create custom annotations for spans and inline elements

    Define styles for spoken language or internal links that produce errors when you break them.

  • No HTML, ever

    No leftover markup to trip you up later. Just data as defined by your content model.

Unlock rule-based designs

Decoupling content from presentation is a game-changer for everything from content optimization to editorial design.

  • Use third party content optimization to personalize display.
  • Use rich content models along with algorithmic editorial strategies to automatically rank content for display.

Enhance your content through other services

It might sound like a contradiction. Yet the same properties that let Structured Content cleanly power modern web frameworks also extend the life of legacy systems into the age of connected services.

  • Structured content makes it easy to enhance with data from other systems

  • Sync data into Sanity and combine with content

  • Transfer data from legacy systems and query it with GraphQL and GROQ