# Stripe pricing teardown · 90/100 · Onto
> In May, Stripe passed every check but one: there was no Markdown version for agents. Now it scores 90, because Stripe publishes a site-wide /llms.txt (69,923 bytes). That one file was worth 25 points. Ask /pricing itself for Markdown, though, and you still get the 699 KB HTML page.

**Source:** /case-studies/stripe-pricing
**Extracted:** 2026-09-24T18:14:20.584Z

---
Teardown · Stripe

## Stripe shipped the one check it was failing.

In May, Stripe passed every check but one: there was no Markdown version for agents. Now it scores 90, because Stripe publishes a site-wide /llms.txt (69,923 bytes). That one file was worth 25 points. Ask /pricing itself for Markdown, though, and you still get the 699 KB HTML page.

[Scan your site](/scanner) [All teardowns](/case-studies)

[Live targetstripe.com/pricing](https://stripe.com/pricing)

65 → 90

May → 24 Sep 2026

68.3 KB

Markdown, via /llms.txt

699.1 KB

the page, as HTML

Check by check

### Where the points went, then and now.

The scanner starts at 100 and takes points off. May's column is the teardown's findings, which add up to the 65 it published; today's is a scan on 24 Sep 2026.

CheckMay 202624 Sep 2026

1.  **robots.txt**_Blocks agents → 0__May_passed_Now_passed
2.  **A Markdown version**_None −25 · its own, not the SDK −10__May_**−25** no Markdown_Now_**−10** own llms.txt
3.  **Markup against content**_Under 15% content −25 · under 30% −10 · skipped with Markdown__May_passed_Now_skipped · has Markdown
4.  **Page weight**_Over 200 KB −10 · skipped with Markdown__May_**−10** 690 KB page_Now_skipped · has Markdown
5.  **JSON-LD**_None −20__May_passed_Now_passed
6.  **Image alt text**_Any missing −5__May_passed_Now_passed
7.  **Headings**_Fewer than 2 −10__May_passed_Now_passed
8.  **Score****65****90**

What an agent gets

### Three requests, and which one counted.

The scanner asks for Markdown three ways, as GPTBot, in this order; the first that returns Markdown counts. Here is how stripe.com answered on 24 Sep 2026.

1.  01`GET /pricing · Accept: text/markdown`200 · text/html · 715,849 bytes_not Markdown_
2.  02`GET /pricing.md`404_not Markdown_
3.  03`GET /llms.txt`200 · text/plain · 69,923 bytes of Markdown_counted_

The llms.txt is site-wide: it describes stripe.com, not this page. An agent that asks for the pricing page itself still gets 699.1 KB of HTML. All three teardowns lose the same last 10: those only go to Markdown served through the Onto SDK.

What we recommended

### The May advice, and what happened.

Kept as published. Since, not because: we don't know that anyone at these companies read it.

1.  _Done another way_
    
    ### Serve agents Markdown, with @ontosdk/next
    
    Stripe added a site-wide /llms.txt instead. The scanner counts it, but /pricing itself still answers agents with HTML.
    
2.  _No longer applies_
    
    ### Cut the markup
    
    With Markdown found, the scanner stops weighing the HTML. The page is 699 KB now; May's teardown measured 690 KB.
    

Your turn

### Run the same scan on your site.

Free, no signup. Every penalty comes back with a name, the same ones this teardown is built from.

[Scan your site](/scanner) [All teardowns](/case-studies)

---
## Structured Data (JSON-LD)
```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://buildonto.dev/#org",
      "name": "Onto",
      "url": "https://buildonto.dev",
      "logo": "https://buildonto.dev/icon.png",
      "sameAs": [
        "https://x.com/buildonto",
        "https://github.com/ravixalgorithm/ontosdk"
      ]
    },
    {
      "@type": "WebSite",
      "@id": "https://buildonto.dev/#site",
      "url": "https://buildonto.dev",
      "name": "Onto",
      "publisher": {
        "@id": "https://buildonto.dev/#org"
      }
    },
    {
      "@type": "SoftwareApplication",
      "name": "Onto",
      "applicationCategory": "DeveloperApplication",
      "operatingSystem": "Web",
      "url": "https://buildonto.dev",
      "description": "Onto serves AI agents clean Markdown from your own site, at the same URL, and shows you which agents came. Plus the AIO score, a Read API and an MCP server.",
      "publisher": {
        "@id": "https://buildonto.dev/#org"
      },
      "offers": {
        "@type": "Offer",
        "price": "0",
        "priceCurrency": "USD",
        "description": "Free tier: 1,000 credits / month"
      }
    }
  ]
}
```
