All posts Engineering

Can AI Read Your Status Page? We Tested 30 SaaS Status Pages

We fetched 30 well-known SaaS status pages the way AI crawlers do, without JavaScript. 25 showed their status; Stripe, Heroku, Datadog, Zendesk and Cloudflare showed nothing useful. Full results by company and provider.

When something breaks, more people now ask ChatGPT, Claude or Perplexity “is it down?” before they open a status page. Those answers can only use what an AI crawler can read, and most AI crawlers fetch raw HTML without running JavaScript. So we tested 30 well-known SaaS status pages the same way, to see what an AI can actually learn from them.

Disclosure: this study is by the Statusentry team, and we make status page software. We didn't include our own customers' pages, and we report every page we could read, including results that look good for other vendors.

Key findings

  • 25 of 30 pages (83%) showed their current status to a crawler that doesn't run JavaScript.
  • 5 of 30 (17%) showed nothing useful: Stripe returned only “Loading...”, Heroku, Datadog and Zendesk returned an empty JavaScript shell, and Cloudflare showed no component statuses. An AI asked whether these services are down can't confirm it from the status page.
  • Feeds can rescue an unreadable page: Heroku and Datadog both publish a working RSS or Atom feed, so a tool that finds the feed can still read their incidents.
  • Every Atlassian Statuspage and incident.io page we tested was readable (20 of 20). All five unreadable pages showed no provider, which usually means a custom or self-built page.
  • incident.io pages show status but hide history: on all 4, past incidents sit behind a “View history” link instead of on the main page.
  • 24 of 30 (80%) publish an RSS or Atom feed, the simplest machine-readable way for tools and agents to follow incidents. 24 of 30 showed a subscribe option in their HTML.
  • 2 pages served our crawler content from 2022–2024 (Fastly and Notion), which suggests an old or cached version is being shown to crawlers.

Results: what a non-JavaScript crawler sees on 30 SaaS status pages

CompanyProvider shown on pageCurrent status readableRecent incidents on main pageSubscribe optionRSS / Atom feed
GitHubAtlassian StatuspageYesYesYesYes
OpenAIincident.ioYesLink onlyYesYes
CloudflareNone shownNoNone listedYesYes
AtlassianAtlassian StatuspageYesNone in periodYesYes
SlackNone shownYesLink onlyYesYes
DropboxAtlassian StatuspageYesNone in periodYesYes
DiscordAtlassian StatuspageYesYesYesYes
TwilioNone shownYesYesYesYes
StripeNone shownNo (“Loading...”)NoNoNone found
ShopifyAtlassian StatuspageYesYesYesNone found
NotionNone shownYesDates only, out of dateNoBlocked by robots.txt
FigmaAtlassian StatuspageYesYesYesYes
Linearincident.ioYesLink onlyYesYes
NetlifyAtlassian StatuspageYesYesYesYes
DigitalOceanAtlassian StatuspageYesYesYesYes
HerokuNone shownNo (JavaScript only)NoNoYes (page unreadable, feed works)
DatadogNone shownNo (title only)NoNoYes (page unreadable, feed works)
HubSpotAtlassian StatuspageYesYesYesYes
MailchimpNone shownYesYesYesNone found
FastlyNone shownYesOut of dateNoNone found
Supabaseincident.ioYesLink onlyYesYes
RenderAtlassian StatuspageYesYesYesYes
PostmanAtlassian StatuspageYesNone in periodYesYes
ZoomAtlassian StatuspageYesYesYesYes
Intercom (Fin)incident.ioYes, on region pages (main page is a region picker)Link onlyYesYes
VercelAtlassian StatuspageYesYesYesYes
SentryAtlassian StatuspageYesYesYesYes
Claude (Anthropic)Atlassian StatuspageYesYesYesYes
ZendeskNone shownNo (empty without JavaScript)NoNoNot checked
AsanaAtlassian StatuspageYesYesYesYes
Each page fetched on November 10, 2026 without running JavaScript. “None in period” means the page was readable but listed no recent incidents. “Link only” means history sits on a separate page. Feeds were checked at the provider's standard feed URLs. A single snapshot; results can change with each deploy.

Results by status page provider

Provider shownPages testedCurrent status readableIncident history on main pageRSS / Atom feed
Atlassian Statuspage1616 of 1613 of 16 (3 had no recent incidents)15 of 16
incident.io44 of 40 of 4 (link to history page)4 of 4
None shown (custom or unbranded)105 of 102 of 10 (2 more showed out-of-date history)5 of 10 (2 not checked)
All pages3025 of 30 (83%)15 of 3024 of 30 (80%)
Provider is taken from the “Powered by” text on the page. Pages without it may still use a hosted provider.

A status page has one job: tell people whether your product works right now. When that question goes to an AI assistant instead of a browser, the assistant reads your page the way a crawler does. If the status only appears after JavaScript runs, the AI sees an empty page and falls back to social posts, outage trackers or guesswork, and it may tell your customers that everything is fine during an outage.

Server-rendered status pages avoid this: the status, the components and recent incidents are in the HTML from the first byte. We cover the technical side in why server-side rendering matters for status page SEO and the AI side in status pages in the age of AI search.

Check your own status page in two minutes

  • Fetch it without JavaScript: run curl https://status.yourcompany.com and search the output for your overall status line and a component name. If they aren't there, AI crawlers can't see them either.
  • Put recent incidents on the main page, not only behind a history link, so a single fetch answers “was there an outage today?”.
  • Offer an RSS or Atom feed so tools, agents and customers can follow incidents without scraping.
  • Allow AI crawlers in robots.txt (GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot) on your status page domain.
  • Make sure crawlers get the live page, not a cached or fallback version with old dates.

Statusentry status pages are server-rendered, so the current status, services and incidents are in the HTML for every crawler. You can check our demo status page with the same curl test, or create a free status page.

Methodology

  • We picked 30 public status pages of well-known SaaS and developer tools.
  • On November 10, 2026 we fetched each page without running JavaScript, the way most AI crawlers read pages, and recorded what the HTML alone contains. Zoom and Intercom redirect to zoomstatus.com and finstatus.com; we tested those pages.
  • “Current status readable” means an overall status line or component names with their status appeared in the HTML. “Provider” is the “Powered by” text or link on the page.
  • Feeds were checked at the provider's standard feed URLs (for example /history.rss on Atlassian Statuspage and /feed.rss on incident.io). “None found” means none of the URLs we tried returned a feed; one may exist elsewhere.
  • This is one snapshot. Pages change with each deploy, and incident history depends on whether there were recent incidents.

FAQ

Can ChatGPT and other AI assistants read status pages?

Only if the status is in the page's HTML. Most AI crawlers don't run JavaScript, so a status page that loads its status with JavaScript looks empty to them. In our November 2026 test, 25 of 30 SaaS status pages showed their status without JavaScript and 5 did not.

Which status pages couldn't be read without JavaScript?

In our test, Stripe returned only “Loading...”, Heroku, Datadog and Zendesk returned an empty JavaScript shell, and Cloudflare showed no component statuses. Every Atlassian Statuspage and incident.io page we tested was readable.

How do I check whether AI crawlers can read my status page?

Run curl on your status page URL and look for your overall status line and a component name in the output. If they're missing, crawlers that don't run JavaScript can't see them.

Try Statusentry

Communicate incidents calmly, transparently, instantly.

Start with a 30-day Enterprise trial. Afterwards, keep the free plan with no time limit.