Upgrade

Last scanned developer.upgrade.comDocument36015 pages tested

AI agents can find, read and use these docs well. Upgrade scores 96 out of 100 (grade A), passing 20 of 27 checks. 7 still need work.

Fix it with Documentation.AI

Get this report by email

We send the full report to your inbox. Nothing on this page needs an email.

Use your work email. We only send what you asked for, and every email has an unsubscribe link.

Help center

Kind of site

20/27

Checks passed

3

Partly passed

4

Failed

Access

Content discoverability7 passed
  • llms.txt exists

    llms.txt found at 2 locations; using https://developer.upgrade.com/llms.txt as canonical

  • llms.txt follows the standard structure

    llms.txt follows the proposed structure (H1, blockquote, heading-delimited link sections)

  • llms.txt fits in an agent's context

    llms.txt is 9,974 characters (under 50,000 threshold)

  • llms.txt links work

    All 15 same-origin sampled links resolve (102 total links)

  • llms.txt links point to Markdown

    15/15 same-origin sampled links point to markdown content (100%)

  • Pages point agents to llms.txt

    llms.txt directive found in HTML of all 15 sampled pages, near the top of content

  • Markdown pages point agents to llms.txt

    llms.txt directive found in markdown of all 15 sampled pages, near the top of content

Markdown availability1 passed1 partly
  • Server returns Markdown when asked

    Content negotiation partially supported: 0 correct type, 15 wrong type, 0 HTML only

    Your server returns markdown content for Accept: text/markdown requests but with an incorrect Content-Type header. Set the response Content-Type to text/markdown for proper agent handling.

    Check your fix: curl -sI -H "Accept: text/markdown" https://developer.upgrade.com/apidocs/authorization-1 returns content-type: text/markdown.

  • Pages are available as Markdown

    15/15 sampled pages support .md URLs (100%)

Page size and truncation3 passed1 failed
  • HTML pages fit in context

    1 of 15 sampled pages convert to over 100K chars (max 795K HTML → 122K markdown (98% boilerplate))

    1 of 15 pages convert to over 100K characters of markdown. Break large pages into smaller units, reduce navigation boilerplate, or provide markdown versions that bypass the HTML conversion overhead.

  • Content is in the HTML without JavaScript

    All 15 sampled pages contain server-rendered content

  • Markdown pages fit in context

    All 15 pages under 50K chars (median 4K, max 14K)

  • Content starts near the top

    Content starts within first 10% on all 15 sampled pages (median 4%)

Content structure3 passed
  • Tabs don't bloat the page

    No tabbed content detected across 15 sampled pages

  • Headings inside tabs name their variant

    No tabbed content found; header quality check not applicable

  • Code blocks are well-formed

    All 24 code fences properly closed across 17 pages

URL stability2 passed
  • Missing pages return a real 404

    All 15 sampled pages return proper error codes for bad URLs

  • Redirects stay on the same host

    No redirects detected across 15 sampled pages

Content health1 passed1 failed1 partly
  • Markdown matches the HTML page

    1 of 15 pages have substantive content differences between markdown and HTML (avg 5% missing)

    1 pages have substantive content differences between markdown and HTML (avg 5% missing). If unintentional, agents are getting outdated content; regenerate markdown from source or fix the build pipeline.

  • llms.txt covers the whole site

    llms.txt covers 68/74 sitemap doc pages (92%); 6 missing; 34 llms.txt links not in sitemap (may indicate stale links or incomplete sitemap)

    Your llms.txt covers 92% of your site's pages (80-95% is warn). 6 live pages are not represented in the index.

  • Cache headers allow timely updates

    All 17 endpoints have appropriate cache headers

Authentication and access1 passed
  • Gated docs offer another way in

    All docs pages are publicly accessible; no alternative access paths needed

  • Docs are readable without logging in

    All 15 sampled pages are publicly accessible

Crawler access1 passed1 partly
  • Sitemap lists the docs pages

    The sitemap at https://developer.upgrade.com/sitemap_index.xml lists 73 of the 116 docs pages found through llms.txt and page links.

    Generate the sitemap from the same source as the docs, so every page is listed. Agents and crawlers use it to find pages that navigation does not link.

    Check your fix: curl -s https://developer.upgrade.com/robots.txt | grep -i sitemap names a sitemap, and that sitemap lists the pages the report names as missing.

  • Crawlers and AI assistants may read the docs

    robots.txt lets Googlebot, Bingbot, OAI-SearchBot, PerplexityBot, Claude-SearchBot and Claude-User read the docs.

Freshness

Maintenance1 passed2 failed
  • Pages say when they were last changed

    0 of 15 sampled pages state when they were last changed, and 9 more have a date only in the sitemap.

    Publish a last-modified date on every page: as article:modified_time or dateModified in the page, a visible "Last updated" line, or a Last-Modified header. Agents can then tell how current a page is; the date itself is not judged.

    Check your fix: curl -sI https://developer.upgrade.com/apidocs/authorization-1 | grep -i last-modified returns a date, or the page carries article:modified_time or a visible "Last updated" line.

  • Links and section anchors work

    1 of 19 references checked on the sampled pages are broken: 0 links and 1 section anchor.

    Fix or remove the broken links, redirect moved pages to their new address, and restore or retarget section anchors. Agents follow links to gather context, and a dead link ends that path.

    Check your fix: Every link on https://developer.upgrade.com/v1/docs/payment-status#uplift-agent-connect (no such section) linked from https://developer.upgrade.com/docs/step-3-define-callback-handler returns 200, and every #section link points at an element with that id.

  • Sitemap entries still exist

    All 10 sitemap entries sampled still exist.

Consistency with the API specNot applicable
  • Endpoints in the docs exist in the API spec

    No OpenAPI description was found, so the docs could not be compared with a spec.

CurrencyNot applicable
  • Deprecated operations are marked as such

    No OpenAPI description was found, so deprecation notices could not be compared with a spec.

Additional checks

Not part of the score: optional extras that help agents use your docs.

  • MCP server is discoverable

    No MCP server was found for these docs.

    Offer a read-only MCP server with a search tool over your docs, and link it from llms.txt, so agents in Cursor, Claude and ChatGPT can query your docs directly.

  • llms-full.txt is available

    No llms-full.txt found at https://developer.upgrade.com/llms-full.txt.

    Publish /llms-full.txt with the full text of your docs in Markdown, so an agent can load everything in one request instead of crawling page by page.

    Check your fix: curl -sI https://developer.upgrade.com/llms-full.txt returns 200.

  • Agent skills are published

    No agent skills index was found at /.well-known/agent-skills/index.json.

    Publish an Agent Skills index at /.well-known/agent-skills/index.json with a SKILL.md for your main tasks, so agents can load task instructions without reading every page.

About this scan

Scanned
Oct 21, 2026
Pages tested
15 of 102 found
Platform
Document360
Kind of site
Help center
AFDocs score, on its own
98 (A), 18 of 23 checks pass
  • Based on 15 sampled pages, chosen deterministically from the sitemap and llms.txt. Pages outside the sample were not read.
  • Pages were fetched without running JavaScript, the way most AI agents read the web.
  • Answerability, where an AI agent answers real questions written from these pages, runs in the open-source scanner with your own API key. This web score is made of Access and Freshness.

Methodology 2026-09.6 · AFDocs 0.20.0

Pages we sampled (15)
  • https://developer.upgrade.com/apidocs/authorization-1
  • https://developer.upgrade.com/apidocs/get-transaction
  • https://developer.upgrade.com/apidocs/recommended-workflow
  • https://developer.upgrade.com/apidocs/void-transaction
  • https://developer.upgrade.com/docs/api-integration-components
  • https://developer.upgrade.com/docs/contact-information
  • https://developer.upgrade.com/docs/from-pricing-and-information-modal
  • https://developer.upgrade.com/docs/implementation-tests
  • https://developer.upgrade.com/docs/marketing-banner
  • https://developer.upgrade.com/docs/pay-monthly-information-modal
  • https://developer.upgrade.com/docs/pre-qualification-tool
  • https://developer.upgrade.com/docs/response-reason-code
  • https://developer.upgrade.com/docs/step-3-define-callback-handler
  • https://developer.upgrade.com/docs/step-6-receive-payment-1
  • https://developer.upgrade.com/docs/testing-details

Show your score

Add the badge to your docs or README. It updates each time the site is scanned.

Agent Readiness Score badge

Markdown

[![Agent Readiness Score: 96 (A)](https://documentation.ai/agent-score/badge/upgrade.svg)](https://documentation.ai/agent-score/upgrade)

HTML

<a href="https://documentation.ai/agent-score/upgrade"><img src="https://documentation.ai/agent-score/badge/upgrade.svg" alt="Agent Readiness Score: 96 (A)" height="20"></a>

Agent-ready docs by default

Documentation.AI sites ship with llms.txt, Markdown pages, a sitemap and an MCP server, and our agent keeps the content current.

Live in under 5 min · No credit card required