Content Lake (Datastore)

Technical limits

A list of data store limits.

This article describes various limits in the data store. Note that a project may have additional limits depending on its plan. See the pricing page for plan-specific details. The API rejects calls that exceed these limits with an error. If you need limits beyond these, contact Sanity support and we can customize limits for your needs.

We use standard SI units, so 1 MB is 1,000,000 bytes.

Datasets

The following limits apply to datasets:

  • Maximum number of documents: 10 million (customization possible for enterprise customers)
  • Maximum total size of JSON documents: 10 GB
  • Maximum number of unique attributes across all documents:
    • Free plan: 2,000 attributes
    • Growth plan: 10,000 attributes
    • Enterprise plan: Custom number of attributes
  • Maximum dataset name length: 64 characters

Pro tip

Documents

The following limits apply to individual documents:

  • Maximum JSON document size: 32 MB
  • Maximum number of attributes:
    • Free and growth plan: 1,000 attributes
    • Enterprise plan: 8,000 attributes
  • Maximum attribute nesting depth: 20 levels
  • Maximum searchable term length: 1,024 UTF-8 characters (silently ignored without error)

Listeners

Maximum concurrent listeners for the various project plans:

  • Free plan: 1,000 listeners
  • Growth plan: 5,000 listeners
  • Enterprise plan: 10,000 listeners

Editor experience

API Calls

  • Maximum working set retrieved from data backend: 500 MB
  • Maximum query execution time: 1 minute
  • Maximum mutation execution time: 3 minutes
  • Maximum export execution time: 5 minutes
  • Maximum listener connection lifetime: 30 minutes
  • Maximum scheduled publishing execution time: 1 minute

Rate limits

Resource rate limits

Creation limits are enforced for the following resources.

  • Users are limited to 5 new organizations per hour.
  • Organizations are limited to 5 new projects per hour.

API rate limits

We have two rate-limits in place: one per source IP and one for number of concurrent queries.

API rate limits per IP

API rate limits are enforced per client IP address per second. If you exceed a rate limit, the API returns HTTP 429 responses for any further requests of that type until the next period begins.

  • Maximum mutation rate: 25 req/s (POST to /data/mutate)
  • Maximum upload rate: 25 req/s (POST to /assets/)
  • Maximum global API call rate: 500 req/s
  • Maximum global API Content Delivery Network (CDN) call rate: unlimited for cached responses

API Concurrent Rate Limits

We also rate limit concurrent API requests for each dataset:

  • Maximum concurrent queries to API: 500
  • Maximum concurrent mutations to API: 100

The API CDN itself isn't rate limited, but misses (uncached requests) will be subject to these concurrency limits.

HTTP Requests

  • Maximum combined request headers size: 15 KB
  • Maximum request body size: 100 MB
  • Maximum mutation request body size: 4 MB

Pro tip

API CDN HTTP Requests

The following limits apply to /data endpoints (not asset endpoints):

  • Maximum POST size: 307,200 bytes

Assets

The following limits apply to assets:

  • Maximum image size: 256 megapixels
  • Maximum output dimensions (from transforms): 8,192 pixels
  • Supported image upload formats:
    • png
    • jpg
    • jpeg
    • bmp
    • gif
    • tiff
    • svg
    • psd
    • webp
    • heif
  • Maximum upload duration:
    • Dataset assets: 5 minutes
    • Media library assets: 1 hour

Animated Images with Transforms

Maximum size of animated images with transforms: 256 megapixels

  • Calculated as: Width × Height × Frame Count = Total Pixels
  • Divide total pixels by 1,000,000 to get megapixels

This limit applies to on-demand transforms for supported animated image formats.

Users

  • Maximum number of users per project: 1,000

Please get in touch if you need more than 1,000 users on a single project.

Content releases

  • Maximum number of document versions in a release: 1,000
  • Maximum total size of JSON documents in a release: 100 MB
  • The total size of JSON documents in a release refers to the sum of the size of each JSON document in bytes.
  • Releases batch in sets of 10 MB. Documents may not publish at the exact same moment if they exist in different 10 MB blocks.

Was this page helpful?