Structured content platform with real-time collaborative Studio and GROQ query language
Sanity is a structured content platform built in Oslo, Norway, offering a real-time collaborative editor (Sanity Studio), a flexible hosted data store (Content Lake), and the open-source GROQ query language for precise content querying. Founded in 2016, Sanity is used by Nike, Figma, Cloudflare, and National Geographic for content operations at enterprise scale.
Headquarters
Oslo, Norway
Founded
2016
Pricing
EU Data Hosting
Yes
Employees
201-500
Free
$15/mo
Contact Sales
Billing: monthly, annual (Enterprise only)
Sanity is a structured content platform built in Oslo, Norway, that treats content as data rather than as pages. The company was founded in 2016 by Magnus Kongsli Hillestad, Even Westvang, Øyvind Røstad, and Simen Svale Skogsrud, and has raised $85 million in a May 2025 Series C led by Bullhound Capital. Nike, Figma, Cloudflare, National Geographic, and Brex are among the organisations that run Sanity in production.
Three technical decisions set Sanity apart from the field. First, Sanity Studio is open-source: a React application you can customise, fork, extend with plugins, and host on any static platform. Second, content is stored in the Content Lake using Portable Text, a presentation-agnostic specification for rich content that is not tied to any renderer. Third, queries are written in GROQ (Graph-Relational Object Queries), Sanity's own open-source query language for JSON that supports relational joins, filtering, projections, and conditional logic — capabilities that REST endpoints cannot match without custom middleware.
The $85M raise funded what Sanity now calls a Content Operating System, extending the platform into AI-assisted content workflows, agent actions, and real-time preview tooling across any frontend framework.
The Studio is a real-time collaborative web application that runs locally or on any static host (Vercel, Netlify, or self-managed). It ships with multiplayer presence indicators, inline comments, task management, scheduled drafts, and a draft history spanning 90 days on the Growth plan. Schema is defined in code using Sanity's schema definition API, which means content models are version-controlled alongside application code rather than configured in a separate admin interface.
Because the Studio is open-source under an MIT licence, every aspect of the editing interface can be extended: custom input components, bespoke document actions, custom sidebar panels, and validation logic that runs in real-time as editors type. This level of customisation is not available in Contentful or Prismic without significant workarounds.
GROQ is the technical centre of Sanity's value proposition for developers. Where REST returns fixed JSON shapes and GraphQL requires schema-first type definitions, GROQ lets you describe exactly the shape of the response you want, join across document types, filter with projection, and apply conditional transformations — all in a single query.
A practical example: fetching a blog post with its author, the author's three most recent other posts, and the first three items of a related product category requires one GROQ query. The same operation in a REST API typically requires three separate requests or a bespoke aggregation endpoint. Webhooks in Sanity also support GROQ filtering, so you can fire events only when documents matching a specific condition change.
Portable Text is a JSON specification for block content that travels cleanly between systems without carrying renderer-specific markup. Rich text in Sanity is not stored as HTML, Markdown, or any format tied to a particular output. It is stored as a structured array of typed blocks that any renderer can interpret for web, mobile, email, print, or an AI system.
This matters at scale. Teams that need to publish the same editorial content across a web app, a native mobile app, a PDF, and an AI assistant's knowledge base can do so from a single Sanity project without format conversion or content duplication. The @portabletext/react and @portabletext/svelte packages are the most common renderers, and the specification is open and portable enough that other rendering targets can be built.
Sanity's $85M Series C accelerated investment in AI capabilities built into the Studio itself. AI Assist lets editors invoke LLM-based generation and translation on individual fields within the Studio interface. Content Agents (announced in 2025) are automations that can read, create, and update content via the Content Lake API using GROQ, enabling tasks like bulk translation, structured content generation from briefs, or automated SEO field population.
The AI credit model (100 credits/month on Free and Growth) is metered separately from API usage. Advanced agentic workflows are positioned as an Enterprise feature, though the underlying GROQ and Content Lake APIs are available on all plans.
Sanity has the deepest first-party integration ecosystem of any EEA-headquartered headless CMS. Official plugins and starter templates exist for Next.js, Astro, Nuxt, Remix, Gatsby, SvelteKit, and plain HTML. The next-sanity package includes content integration, Studio embedding in Next.js App Router, live preview, and webhook verification. Vercel and Netlify both offer one-click deployment of Sanity-powered starter templates.
Third-party integrations cover Algolia (search indexing via GROQ-based sync), Mux (video management), Cloudinary (asset transformation), Shopify (e-commerce content), and Stripe. The sanity.io/exchange plugin directory is a well-maintained community resource.
Sanity has three tiers: Free, Growth, and Enterprise.
The Free plan is genuinely usable with 20 seats, 10,000 documents, 1 million CDN API requests per month, 100GB of asset storage, and 100GB of bandwidth. No credit card is required. The 30-day Growth trial requires no card either.
Growth charges $15 per seat per month, supporting up to 50 seats. Within each seat, projects share 25,000 documents, 1 million CDN API requests, 250,000 standard API requests, and 100GB of storage and bandwidth. Overages are billed at $1 per 250k additional CDN requests, $1 per 25k standard requests, $0.50 per extra GB of storage, and $0.30 per extra GB of bandwidth. For high-traffic sites serving many visitors through Sanity's CDN, overage costs require active monitoring.
Enterprise is custom-quoted and includes 365-day history retention, cross-dataset references, dataset hot swap, a full audit trail, custom roles, and annual billing. SAML SSO is available as an add-on at $1,399/month on Growth.
The seat-based model is Sanity's main pricing risk: a 15-person editorial team costs $225/month on Growth, a 30-person team costs $450/month. Contentful's Basic plan at $300/month flat is cheaper for large teams, despite Sanity's technical advantages.
Sanity AS is incorporated in Norway, an EEA member state subject to GDPR. Content Lake data is stored in the European Union on Google Cloud Platform infrastructure in Belgium. EU data residency is available on all plans, not just Enterprise, and requires no additional configuration.
The compliance credentials are solid. Sanity is SOC 2 Type II certified and CCPA compliant. It offers a Data Processing Agreement and custom data retention policies. The Content Lake API exposes deletion endpoints that allow permanent removal of data subjects' content on request, which is relevant for teams building applications where end-users contribute content.
If you are a development team building a content-heavy digital product with a complex content model, multiple frontend targets, or a need for real-time editorial collaboration, Sanity is among the strongest choices in European headless CMS.
If your team needs a customisable editor with version-controlled schema, the open-source Studio is the most extensible editor in this category. Contentful and Prismic do not offer comparable depth of UI customisation.
If you want the most expressive content querying available without custom middleware, GROQ is technically superior to REST for complex relational queries and more flexible than GraphQL for content-specific patterns.
If you are a non-technical content creator looking for a simple blog platform, or a team where pricing scales with many editors rather than project traffic, Sanity's seat-based Growth pricing and GROQ learning curve may make Prismic or Ghost more practical choices.
Sanity has built a technically distinctive platform around three original ideas: a fully open-source customisable editor, a query language designed specifically for structured content, and a portable rich text format decoupled from any renderer. These are not marketing differentiators; they are architectural choices with measurable payoffs for teams running content operations at scale. The $85M Series C and the roster of customers running Sanity in production validate the underlying platform. The friction points are real: seat-based pricing that scales sharply, GROQ's learning curve, and the absence of a fully on-premise deployment option. For development teams where those constraints are manageable, Sanity is the strongest EEA-headquartered option in structured headless CMS and one of the more technically impressive companies to emerge from the Oslo startup ecosystem.
Sanity is GDPR compliant and stores Content Lake data in the EU on Google Cloud Platform infrastructure in Belgium. The company is incorporated in Norway, an EEA member state subject to GDPR. EU data residency is available on all plans, including Free. Sanity is SOC 2 Type II certified and offers a Data Processing Agreement. The Content Lake API includes deletion endpoints for permanent removal of data subject content, which matters for teams building user-contributed content applications.
Sanity Studio (the open-source editor) can be self-hosted on Vercel, Netlify, or any static host. Content Lake itself is always managed by Sanity and cannot be self-hosted or run on-premise. The underlying data store is not available as a Docker container or self-managed service. Teams with a hard on-premise requirement for the database layer should evaluate Directus or Strapi, both of which are fully open-source and self-hostable including the data store. For teams where EU data residency satisfies procurement requirements, Sanity's Belgium-hosted Content Lake covers the regulatory base without on-premise complexity.
Sanity and Contentful are both structured headless CMSs, but they differ in philosophy. Sanity's GROQ query language is more expressive than Contentful's REST API for complex content models. Sanity Studio is open-source and fully customisable; Contentful's editor is a closed SaaS product. Portable Text is more portable than Contentful's rich text format. On pricing, Sanity's Growth plan at $15/seat scales sharply with team size; Contentful's Basic plan at $300/month flat is cheaper for large editorial teams. Contentful has a broader ecosystem of third-party integrations and a larger agency network. Sanity is the stronger choice when technical flexibility matters more than ecosystem breadth or flat-rate team pricing.
Growth charges $15 per seat per month (up to 50 seats). Each project includes 1 million CDN API requests, 250,000 standard API requests, 100GB of asset storage, and 100GB of bandwidth per month. Overages are $1 per 250k additional CDN requests, $1 per 25k standard requests, $0.50 per additional GB of storage, and $0.30 per additional GB of bandwidth. High-traffic public sites that proxy visitor traffic through Sanity's CDN accumulate overage costs faster than low-traffic editorial tools. Sanity provides a pricing calculator at sanity.io to estimate total monthly cost based on actual traffic and seat count.
Sanity is used by Nike, Figma, Cloudflare, National Geographic, Brex, Sonos, and Netlify, among others. It is best suited for development teams building content-heavy products with complex content models, multiple frontend targets (web, mobile, AI), or a need for real-time editorial collaboration and deep Studio customisation. It is particularly strong for teams that want a version-controlled schema, GROQ's relational querying power, and Portable Text's portability across output formats. Teams wanting a simple, opinionated CMS with minimal developer involvement are better served by Prismic or a traditional CMS.
API-first headless CMS for composable content experiences
GraphQL-native federated content platform unifying multiple data sources into one API
Alternative to Contentful, Prismic
Visual headless CMS for developers and content editors
Alternative to Wordpress, Contentful
Open-source headless CMS you can self-host or run in the cloud
Alternative to Contentful, Directus