Sanity block-level attribute limit: How to increase beyond 1K?

7 replies
Last updated: Jan 27, 2026
Hey folks,
Currently using (maybe abusing) blocks in pages.

Each field block is configured to have an addional field for 25 other languages. A field level locale.

We currently on the team plan. I am hitting the data/attribute 1K limit but can't find any reference to how upgrading payment plans will increase the limit and by how much.

I am aware of the document level data/attribute limits:

What is the attribute limit?
The attribute limit determines how many unique combinations of attribute and datatype you can have in your dataset. Depending on what plan your project is on, your limit is one of the following:

Free: 2k attributes
Team: 4k attributes
Business: 10k attributes
Enterprise: 10k attributes
Where can I find info on how to increase the 1k limit?

Thanks in advance.
AI Update

I can clarify the confusion here! You're actually dealing with two different attribute limits in Sanity, and it sounds like you've mixed them up:

The Two Attribute Limits

1. Dataset-level limit (what you quoted):

  • Free: 2k attributes
  • Team: 4k attributes
  • Business: 10k attributes
  • Enterprise: 10k attributes

This is the total unique combinations of attribute names and datatypes across your entire dataset.

2. Per-document limit: 1,000 attributes

This is the limit you're hitting, and it's a hard technical limit that doesn't change with plan upgrades. According to Sanity's help documentation, this 1k per-document limit exists regardless of your plan tier.

Your Situation

With field-level localization for 25 languages in blocks, you're creating a massive number of attributes per document. If you have many fields Γ— 25 languages, you'll quickly hit that 1k ceiling on individual documents.

Solutions

Since upgrading won't help with the per-document limit, consider these alternatives:

1. Document-level internationalization - Instead of having 25 language fields per block field, create separate documents for each language. This is the more common pattern and keeps documents much smaller. The Sanity documentation on attribute limits specifically addresses this under "Beware of multipliers in translation/localization" - wrapping fields in language objects multiplies your attribute count by the number of languages.

2. Reference-based translations - Store translations in separate referenced documents rather than embedding them all in one document.

3. Reduce language fields - If you don't need all 25 languages in every field, make them conditional or split content types.

The field-level locale approach you're using works for a few languages, but with 25 languages it's hitting architectural limits that payment plans won't solve. The docs explicitly warn that adding more than a few languages this way "means trouble."

Instead of duplicating fields inside a document, the recommended approach is to duplicate the document itself for each language. You can add a language field to differentiate them and make querying easier. Since you're reusing the same field structure across documents, adding an extra language no longer affects your per-document attribute count at all.

Show original thread
7 replies

Sanity – Build the way you think, not the way your CMS thinks

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.

Was this answer helpful?