System requirements
Network, browser, and infrastructure requirements for running Sanity Studio in managed environments.
Sanity Studio is a web application that runs in the browser. This page covers the network, browser, and infrastructure requirements for running Studio in managed environments.
Share this page with your IT or network security team if they manage firewalls, proxies, or endpoint policies.
Network requirements
Studio communicates with Sanity services over HTTPS (port 443) with TLS 1.2 or later. All connections require HTTP/2 or later. HTTP/1.1 causes degraded performance or complete failure.
Domains to allowlist
For most deployments, allowlisting *.sanity.io and *.sanity-cdn.com covers all required domains. If your network policy requires specific entries, allowlist these domains:
| Domain | Purpose |
|---|---|
| api.sanity.io | Global API: error reporting, feedback, and the Media Library API |
| *.api.sanity.io | Content Lake API, authentication, AI features, telemetry |
| *.apicdn.sanity.io | API CDN (cached reads) |
| cdn.sanity.io | Image and file asset CDN |
| studio-static.sanity.io | Studio fonts |
| sanity-cdn.com | Module CDN for auto-updating studios |
| modules.sanity-cdn.com | Module files for auto-updating studios. Requests to sanity-cdn.com redirect here. |
| core.sanity-cdn.com | Core UI bridge script |
| m.sanity-cdn.com | Video streaming CDN |
| media.sanity.io | Media Library UI |
| www.sanity.io | Project management (sanity.io/manage) |
| *.sanity.studio | Studios hosted by Sanity (deployed with sanity deploy) |
This domain is optional:
| Domain | Purpose |
|---|---|
| maps.googleapis.com | Google Maps JavaScript API, Static Maps API, and Places API (New). Only required if you use the @sanity/google-maps-input plugin. Requires a separate Google API key. |
Real-time features use Server-Sent Events (SSE) over the same API domains on port 443. No additional ports or protocols are required.
Studio does not load resources from third-party domains, with two exceptions. If you sign in with Google, GitHub, or a SAML identity provider, your browser must reach that provider. Plugins can also load external resources. For example, the @sanity/google-maps-input plugin requires Google Maps. AI features route through *.api.sanity.io.
Webhook egress IPs
If your infrastructure receives webhooks from Sanity, allowlist the IP addresses published at sanity.io/files/webhooks-egress-ips.txt.
Browser requirements
Studio supports browsers that meet Baseline 2024, which includes recent versions of Chrome, Edge, Firefox, and Safari on desktop and mobile.
Common blockers
These network configurations are known to cause issues with Studio:
| Configuration | Problem |
|---|---|
| VPN with HTTP downgrade | Some VPNs downgrade connections from HTTP/2 to HTTP/1.1. |
| TLS-inspecting proxy | Proxies that terminate and re-establish HTTPS connections (such as Zscaler) can break HTTP/2. |
| DNS filtering | Blocking *.sanity.io prevents Studio from reaching Sanity services. |
Diagnose HTTP/1.1 issues
Open your browser's DevTools, go to the Network tab, and check the Protocol column. You may need to turn on this column first. If connections show http/1.0 or http/1.1, Studio is running over a legacy HTTP protocol and may not function correctly. Studio also checks the protocol it uses to reach the Sanity API. If it detects a legacy protocol, it shows a warning titled "You've got your brakes on" with the message "Your browser is using an outdated HTTP protocol to communicate with Sanity. This may result in substantially degraded performance."
For more detail, see HTTP/1.1 performance issues.
Development requirements
Setting up and building Studio locally requires:
| Requirement | Details |
|---|---|
| Node.js | Node.js 22.12 or later |
| Package manager | npm, Yarn, or pnpm |
Check the engines field in Sanity Studio's package.json for the currently supported Node.js versions.
Was this page helpful?
Feedback submitted, thanks for helping us improve the docs. Have you tried these alternatives?