What Is status.sanity.io?
Sanity's official status page at status.sanity.io is powered by Atlassian Statuspage and shows real-time health across all of Sanity's infrastructure. It breaks down status by service component, so you can immediately see whether it's the Content Lake API, Sanity Studio, the Assets CDN, or the management API that's having problems.
You can subscribe to incident notifications via email, webhook, or Atom RSS directly from the status page. For production applications, subscribing to webhook alerts means your on-call team gets paged the moment Sanity opens an incident.
Sanity Status Indicators: What Each Color Means
Get alerted the instant Sanity goes down
Better Stack monitors your Sanity Content Lake endpoints every 30 seconds and alerts your team before users see blank content areas. Free tier included.
Try Better Stack Free โSanity Services: What Can Fail Independently
Sanity is structured as several independent services. Understanding which one is failing helps you triage quickly and implement the right workaround:
Content Lake API (GROQ Queries)
What it is: The core read API at api.sanity.io. Your website fetches content via GROQ queries against this API. The most critical service for live sites.
Signs of issues: Blank content areas on your website, fetch() calls returning 5xx errors, GROQ queries timing out, "project not found" errors.
Workaround: Implement static fallback content or serve cached/stale data. Next.js ISR and SSG pages serve the last cached version automatically. For critical content, consider CDN-level caching of your GROQ responses.
Sanity Studio
What it is: The web-based editing interface, typically hosted at yourstudio.sanity.studio or a custom domain. Used by content editors to create and publish content.
Signs of issues: Studio fails to load, editors cannot log in, content changes not saving, the publish button not responding.
Workaround: Studio downtime does not affect your live website โ content already published continues to be served. Editors should wait for the incident to resolve before making new content changes.
Assets CDN (Image Pipeline)
What it is: Sanity's image transformation and delivery CDN at cdn.sanity.io. Handles image optimization, cropping, and format conversion via URL parameters.
Signs of issues: Images returning 404 or 503, transformed images failing while originals load, image upload failing from Studio.
Workaround: Serve original source URLs (without transformation parameters) as a fallback. Cache transformed image URLs in your CDN. Most CDN issues are transient and resolve quickly.
Management API (Mutations)
What it is: The write API for creating, updating, and deleting documents. Used by Studio and any programmatic content pipelines.
Signs of issues: Document saves failing in Studio, webhook-triggered content migrations failing, sanityClient.create() or .patch() returning errors.
Workaround: Queue write operations and retry. Read queries to the Content Lake typically continue working during Management API incidents. Do not publish or migrate content during a Management API outage.
Webhook Delivery
What it is: Outbound webhooks triggered on document publish/update events. Used by Netlify, Vercel, and CI/CD pipelines for content-triggered rebuilds.
Signs of issues: Site rebuilds not triggering after content publishes, webhook logs in Sanity showing failed deliveries, stale content on live site after publishing.
Workaround: Manually trigger your deployment pipeline. Add polling-based build triggers as a fallback. Check Sanity's webhook delivery logs in your project settings for error details.
Is Sanity Down for Everyone or Just You?
Before assuming Sanity has an outage, it's worth ruling out configuration issues โ they look identical from your app's perspective:
Check status.sanity.io
If an active incident is posted, it is a real Sanity outage. Subscribe to updates and wait.
Test your GROQ query directly
Run a raw curl to api.sanity.io to isolate your framework from the problem:
curl "https://[projectId].api.sanity.io/v2024-01-01/data/query/production?query=*[_type=='post'][0]" -H "Authorization: Bearer [token]"Check your CORS settings
Sanity's CORS restrictions block requests from unauthorized origins. A "CORS error" in the browser console is not an outage โ it's a misconfiguration. Add your frontend domain in Sanity manage > API > CORS origins.
Verify your project ID and dataset
A wrong project ID returns 404 errors that look like a Sanity outage. Confirm your environment variables match the project shown in sanity.io/manage.
Check Sanity community Slack
The #help and #announcements channels surface incidents within minutes. If others are reporting the same issue, it's a real outage.
5 Ways to Check Sanity Status Right Now
Official Sanity Status Page
Visit status.sanity.io for component-level real-time status. Subscribe via email or webhook for incident notifications.
status.sanity.io โAPI Status Check (Independent Monitor)
APIStatusCheck independently monitors Sanity endpoints and shows real uptime data. Independent monitoring catches incidents the official status page may not yet reflect.
Check live Sanity status โSanity Community Slack
The #help and #announcements channels in the Sanity community Slack see immediate reports during outages. The team actively monitors both channels.
slack.sanity.io โSanity GitHub Discussions
github.com/sanity-io/sanity/discussions โ during incidents, developers often post in GitHub Discussions. Also check Issues for SDK-level bugs that may appear as outages.
sanity-io/sanity discussions โStatus JSON API
Poll the Sanity Statuspage API directly for automated monitoring.
curl https://status.sanity.io/api/v2/status.jsonSanity Error Messages During Outages
When Sanity is having issues, your app or Studio will surface specific errors:
503Service UnavailableSanity API is down or overloaded. Check status.sanity.io immediately and implement retries with backoff.429Rate LimitedToo many requests from your project. Not an outage โ implement request batching and caching for GROQ queries.CORS errorBrowser BlockYour frontend origin is not in the CORS allowlist. Not an outage โ add your domain in Sanity manage > API > CORS origins.401 / 403Auth ErrorInvalid or expired API token, or permissions issue. Check your SANITY_API_TOKEN environment variable. Not an outage.404 on projectNot FoundWrong project ID. Your SANITY_PROJECT_ID environment variable does not match any project in your account.Network timeoutTimeoutGROQ query taking too long โ possible degraded performance. Add timeout handling and implement stale-while-revalidate caching.listener disconnectedRealtime DropSanity's real-time listener (used for live preview) disconnected. Implement reconnect logic in your @sanity/client listener setup.Monitor your Sanity project automatically
Better Stack creates synthetic monitors for your Sanity Content Lake API โ alerts your team the instant any component goes down. Free for small teams.
Try Better Stack Free โWhat to Do When Sanity Is Down
Immediate Triage
- Check status.sanity.io for active incidents
- Identify which component is affected (Content Lake? Studio? CDN?)
- Test your GROQ endpoint directly with curl
- Check Sanity community Slack for other affected users
- Verify your project ID, dataset, and CORS settings
Engineering Response
- Next.js ISR/SSG serves stale content automatically โ no action needed
- Add CDN-level caching of GROQ API responses (Vercel Edge, Cloudflare)
- Implement stale-while-revalidate for GROQ fetch calls
- Queue webhook-triggered rebuilds โ do not chain rapid retries
- Delay non-critical content publishes until the incident resolves
Check Sanity Status Programmatically
Sanity uses Atlassian Statuspage, which provides a public JSON API for automated monitoring:
# Check overall Sanity status
curl https://status.sanity.io/api/v2/status.json# Check all component statuses (Content Lake, Studio, CDN)
curl https://status.sanity.io/api/v2/components.json# Get active (unresolved) incidents
curl https://status.sanity.io/api/v2/incidents/unresolved.json# Direct GROQ health check (replace projectId)
curl "https://[projectId].api.sanity.io/v2024-01-01/data/query/production?query=1" \
-o /dev/null -w "%{http_code}"The status JSON returns an indicator field: none (all clear), minor, major, or critical. Integrate this into PagerDuty, Slack alerts, or your own monitoring dashboard.
Sanity Status vs Contentful Status: Reliability Comparison
Both Sanity and Contentful are popular headless CMS platforms for developer-first teams. Here's how their status transparency compares:
Sanity Status Transparency
- โ status.sanity.io with per-component breakdown
- โ Content Lake, Studio, CDN, and Management API tracked separately
- โ Email and webhook subscription support
- โ Public JSON API for programmatic checks
- โ No per-project health dashboard
Contentful Status Transparency
- โ contentfulstatus.com with CDA/CMA/CPA breakdown
- โ EU and US region tracking
- โ Email, SMS, and webhook subscriptions
- โ Longer track record as an older platform
- โ Fewer community channels for incident corroboration
For Contentful status, check our Contentful status guide. For Cloudinary CDN status, see our Cloudinary status guide.
Frequently Asked Questions
Where is the official Sanity status page?
Sanity's official status page is at status.sanity.io. It shows real-time status for the Content Lake API, Sanity Studio, the Assets CDN, and the Management API. You can subscribe to email or webhook notifications for incident updates.
Why is Sanity content not loading on my site?
Most content-loading failures are configuration issues, not outages. Check: (1) status.sanity.io for active incidents; (2) your CORS settings in Sanity manage โ your frontend domain must be in the CORS allowlist; (3) your project ID and dataset name in environment variables; (4) your API token validity. Only after ruling these out should you treat it as a Sanity outage.
What is the difference between Sanity Content Lake and Sanity Studio status?
Content Lake (api.sanity.io) is the backend API your website queries for content โ it runs independently from Studio. Studio (yourstudio.sanity.studio) is the editor UI. If Studio is down, editors cannot publish new content but your live website continues serving existing content normally.
Does Sanity have an API to check status programmatically?
Yes. Query https://status.sanity.io/api/v2/status.json for overall status. The indicator field returns none (all operational), minor, major, or critical. Use /api/v2/components.json for per-component breakdown. Integrate with your monitoring pipeline or PagerDuty alerts.
How do I get alerts when Sanity goes down?
Subscribe to status.sanity.io via email or RSS. For production apps, use Better Stack or API Status Check Alert Pro to create synthetic monitors against your GROQ endpoint โ you get faster alerts than waiting for the official status page. The Sanity community Slack #help channel also surfaces incidents within minutes.
Is Sanity down for everyone or just me?
First, test your GROQ endpoint directly with curl (bypassing your framework). If that returns 200, the issue is in your app's code or environment variables. If curl fails, check status.sanity.io and the Sanity community Slack. If the status page shows green but curl also fails, open a support ticket at sanity.io/contact.
Alert Pro
14-day free trialStop checking โ get alerted instantly
Next time Sanity goes down, you'll know in under 60 seconds โ not when your users start complaining.
- Email alerts for Sanity + 9 more APIs
- $0 due today for trial
- Cancel anytime โ $9/mo after trial