
Grab your gear: The official Sanity swag store
Read Grab your gear: The official Sanity swag storeYour understanding is partially correct, but it's important to clarify what the pricing plans actually incentivize:
Sanity's attribute limits don't necessarily "encourage" more documents over attributes - rather, they reflect technical realities of how the datastore works. Here's what you need to know:
According to the Sanity documentation on technical limits, an attribute is counted as any unique path/datatype combination across your dataset:
attr containing a string, integer, and null value in different documents counts as 3 attributes (not 1)Dataset-wide limits:
Per-document limits:
The attribute limit is more about schema complexity than document count. You could have:
As one community member explained: "The unique paths count the same for one document as for a million using those paths."
You should optimize for:
Common attribute-heavy patterns to watch:
So yes, Sanity's architecture naturally encourages well-structured content broken into logical documents, but not because documents are "cheaper" than attributes - rather because clean, normalized schemas are more maintainable and less likely to hit technical limits. The Free plan's 10 million document limit is quite generous, while the 2,000 attribute limit can be reached with complex schemas, which does indirectly encourage simpler, more normalized content models.
Sanity is the developer-first content operating system that gives you complete control. Schema-as-code, GROQ queries, and real-time APIs mean no more workarounds or waiting for deployments. Free to start, scale as you grow.
Content operations
Content backend


The only platform powering content operations
By Industry


Tecovas strengthens their customer connections
Build and Share

Grab your gear: The official Sanity swag store
Read Grab your gear: The official Sanity swag store