76Grade B

www.notion.com

3 things are stopping AI agents from reading www.notion.com properly.

Fix these first

  • JSON-LD structured data is present

    High

    Add a `<script type="application/ld+json">` block describing the page — Organization and WebSite at minimum, plus Product, Article or FAQPage as appropriate.

  • Form fields are labelled and named

    High

    Give every field a <label for="…"> and a stable `name`. Add `autocomplete` tokens too — agents use them to map fields to known values.

  • Content is not buried in markup

    Medium

    Move inline scripts and serialised data to external files, and trim unused markup.

Full report

29 checks

Agent access

100
4 checks passed
PassThe page returns a successful statusThe page returned HTTP 200.

Why agents care. Nothing else matters if the URL does not resolve to content.

Passrobots.txt is publishedrobots.txt is published and reachable.

Why agents care. Agents check robots.txt before fetching. Without one, well-behaved crawlers guess, and some back off entirely.

PassAI crawlers are allowed in robots.txtAll 10 tracked AI crawlers may fetch this page.

Why agents care. This is the single most common reason a site is invisible to AI agents — a blanket disallow that nobody revisited.

PassThe server does not block agent user-agentsAgents and browsers receive the same response.

Why agents care. robots.txt can say "yes" while a WAF or bot rule says "no". Agents see the WAF, not your intent.

Machine-readable content

70
Warnllms.txt is published/llms.txt is published but does not follow the expected shape.

Why agents care. llms.txt is an emerging convention: a Markdown index of your site written for language models, so an agent can orient itself without crawling every page.

Found 48 Markdown links and no top-level heading.

Fix. Structure it as: `# Site name`, a `>` summary line, then `## Section` headings with Markdown links.

  • > Notion is the connected workspace where better, faster work happens. From notes and docs to projects and wikis, Notion's highly customizable building blocks make it the all-in-one workspace for mode
WarnStructured alternatives to HTML are offeredNo RSS, Atom or JSON feed is advertised.

Why agents care. A feed or JSON endpoint lets an agent read your content without parsing a page layout, which is faster and far less error-prone.

Agents fall back to scraping the rendered page, which is brittle and loses structure.

Fix. If you publish a stream of content, expose a feed and link it with `<link rel="alternate" type="application/rss+xml">`.

1 check passed
PassA sitemap is published and discoverableSitemap published with 169 URLs and declared in robots.txt.

Why agents care. A sitemap is the cheapest way for an agent to learn the shape of your site without following every link.

Content without JavaScript

80
FailContent is not buried in markupVisible text is only 1.0% of the page source.

Why agents care. A page that is 98% markup and inline script burns an agent’s context window before it reaches your actual content.

Almost everything an agent downloads here is markup, inline scripts or serialised state rather than content.

Fix. Move inline scripts and serialised data to external files, and trim unused markup.

2 checks passed
PassContent is present in the raw HTML250 words are readable without running JavaScript.

Why agents care. Most agents read the HTML your server sends and never execute JavaScript. If the words only appear after hydration, the agent sees an empty page.

PassThe page is not an empty client-rendered shellNo empty client-rendered mount point detected.

Why agents care. An empty mount point with a bundle after it is the classic signature of a site that is invisible to agents.

Structure & metadata

73
FailJSON-LD structured data is presentNo structured data found.

Why agents care. Schema.org JSON-LD is the one format every major agent already parses. It turns "some text on a page" into facts.

Agents have to infer everything about this page from prose.

Fix. Add a `<script type="application/ld+json">` block describing the page — Organization and WebSite at minimum, plus Product, Article or FAQPage as appropriate.

5 checks passed
PassThe page has a title and descriptionTitle and meta description are both present and substantive.

Why agents care. These two strings are what an agent quotes when it tells a user what your page is.

  • <title> The AI workspace that works for you. | Notion
PassHeadings form a clean outline12 headings form a clean outline.

Why agents care. Headings are how an agent chunks a long page into sections it can cite individually.

PassSemantic landmarks mark out the pageSemantic landmarks present: main, header, nav, footer, article.

Why agents care. A <main> element tells an agent which part of the page is content and which is navigation and boilerplate.

PassOpen Graph metadata is presentAll core Open Graph tags are present.

Why agents care. Open Graph tags are a reliable, low-effort summary of the page that many agents read before the body.

PassA canonical URL is declaredA canonical URL is declared.

Why agents care. Without a canonical, an agent citing your page may pick a tracking-parameter variant that later 404s.

  • https://www.notion.com/

Actionability

50
FailForm fields are labelled and named1 of 1 form fields are missing a label or a name attribute.

Why agents care. An agent filling a form matches your labels to the data it holds. An unlabelled input is a field it will skip or fill wrongly.

1 without a name attribute.

Fix. Give every field a <label for="…"> and a stable `name`. Add `autocomplete` tokens too — agents use them to map fields to known values.

  • <input id="_R_7d9jmH1_">
2 checks passed
PassLinks describe where they goAll 106 links have descriptive text.

Why agents care. An agent choosing between links has only the link text to go on. “Click here” tells it nothing.

PassImages carry alt textAll 58 images have an alt attribute.

Why agents care. Alt text is the only way a text-based agent knows what an image contains.

Performance

90
WarnThe URL resolves without a long redirect chainThe URL goes through 2 redirects before resolving.

Why agents care. Every hop is another round trip, and some agents cap redirects lower than browsers do.

Fix. Collapse the chain so the first request lands on the final URL.

  • https://www.notion.so/
  • https://www.notion.com/
3 checks passed
PassThe server responds quicklyTime to first byte was 769 ms.

Why agents care. Agents work under tight timeouts, often a few seconds. A slow first byte gets your page dropped rather than queued.

PassThe HTML document is a reasonable sizeThe HTML document is 235 KB.

Why agents care. The whole document goes into an agent’s context. A multi-megabyte HTML file crowds out everything else it was trying to do.

PassResponses are compressedResponses are compressed with gzip.

Why agents care. Uncompressed HTML costs agents time and bandwidth on every fetch, and many crawl budgets are measured in bytes.

Agent protocols

58
WarnContent Signals are declared in robots.txtNo Content-Signal directive found.

Why agents care. Content Signals let you say what agents may do with your content — train on it, ground an answer in it, show it in search — instead of one blunt allow or block.

This is an emerging standard, so not having it is normal today. It is listed because adopting it early is cheap and puts you ahead of almost every other site.

Fix. Add a line like `Content-Signal: ai-train=no, ai-input=yes, search=yes` to robots.txt to state your terms precisely.

WarnThe page can be served as MarkdownRequesting Markdown returned text/html.

Why agents care. Markdown is far cheaper for an agent to read than HTML — no layout to strip, no markup filling its context window.

This is an emerging standard, so not having it is normal today. It is listed because adopting it early is cheap and puts you ahead of almost every other site.

Fix. Honour `Accept: text/markdown` by returning a Markdown rendering of the page.

WarnSigned agents can be verifiedNo signature directory published.

Why agents care. Web Bot Auth lets an agent cryptographically prove who it is, so you can let real assistants through while still blocking scrapers impersonating them.

This is an emerging standard, so not having it is normal today. It is listed because adopting it early is cheap and puts you ahead of almost every other site. It matters most if you already block AI crawlers — it is how you let the legitimate ones back in.

Fix. Publish a JWKS directory at `/.well-known/http-message-signatures-directory`, or enable signed-agent verification at your CDN.

WarnAn API catalogue is publishedNo API catalogue found at /.well-known/api-catalog.

Why agents care. RFC 9727 gives agents one predictable place to find your APIs instead of guessing at paths or scraping docs.

This is an emerging standard, so not having it is normal today. It is listed because adopting it early is cheap and puts you ahead of almost every other site.

Fix. Publish an RFC 9727 catalogue linking your OpenAPI documents, so agents can discover your API without reading your docs site.

WarnAn agent card is publishedNo agent card found.

Why agents care. An A2A agent card tells other agents what yours can do, so your product can be delegated to rather than only browsed.

This is an emerging standard, so not having it is normal today. It is listed because adopting it early is cheap and puts you ahead of almost every other site.

Fix. If you expose agent-facing capabilities, describe them in an A2A agent card at `/.well-known/agent.json`.

1 check passed
PassAn MCP server card is publishedAn MCP server card is published.

Why agents care. An MCP server card is how an agent discovers that your product exposes tools it can call, rather than a page it has to read.

  • /.well-known/mcp.json

Scanned https://www.notion.com/ in 1.2s, without executing JavaScript. Followed a redirect from the URL you entered.

Share this report

The link shows the score in the preview, so whoever you send it to sees the grade before they click.