The state of UCP
Who publishes a UCP profile across the web, read every month, and how well the stores we check follow the spec, read every day.
Every month we read about 4 million ecommerce sites with measurable shopper traffic, the same sites each month, not only the stores we check. About 3.7 million were live ecommerce sites, and the shares below are of those. A UCP profile counts when the site serves it publicly at /.well-known/ucp and it passes the official validator; a profile behind a login or a bot wall can't be counted.
UCP by traffic rank
Every ecommerce site we read in each traffic band, by what we found. The figure on the right is the band's share of live ecommerce sites with a valid public UCP profile. The biggest sites turn automated visitors away most, so the top bands' figures are the least certain
Capabilities declared
Of the about 1.2 million sites with a valid public UCP profile; a site can declare several
Spec adoption
Every capability in the 2026-08-25 release, and the share of the about 1.2 million sites with a valid public UCP profile that declare it; a site can declare several
Every site read, by result
What a request for the UCP profile found, as shares of every ecommerce site read (about 4 million). Rows marked out of the live count are left out of the about 3.7 million live ecommerce sites; the headline 31.8% is of those live sites
| Valid UCP profile | 1.2 million | 29.3% |
| No UCP profile | 2.5 million | 62.5% |
| Unreachable (DNS, certificate, server error, timeout) out of the live count | 98,000 | 2.5% |
| Turns automated visitors away out of the live count | 160,000 | 4.1% |
| Not live: closed, password, forwards, not a store out of the live count | 41,000 | 1% |
| Profile fails validation | 23,000 | 0.6% |
UCP by platform
Live ecommerce sites on each platform; publish and valid are shares of them (publish = serves a UCP profile, valid = the profile passes)
27 of the 82 platforms we identified serve a UCP profile on at least one site; on 22, at least one passes the official validator.
| Platform | Live sites | Publish | Valid | |
|---|---|---|---|---|
| 1 | WooCommerce | 880,000 | under 0.1% | under 0.1% |
| 2 | Shopify | 720,000 | 100% | 100% |
| 3 | Wix | 400,000 | 99.6% | 98.7% |
| 4 | Squarespace | 230,000 | under 0.1% | under 0.1% |
| 5 | PrestaShop | 59,000 | 0.1% | under 0.1% |
| 6 | 1C-Bitrix | 49,000 | under 0.1% | under 0.1% |
| 7 | Tiendanube | 47,000 | under 0.1% | under 0.1% |
| Platform | Live sites | Publish | Valid | |
|---|---|---|---|---|
| 8 | OpenCart | 45,000 | under 0.1% | under 0.1% |
| 9 | Square Online | 30,000 | none | none |
| 10 | Magento | 27,000 | 0.8% | 0.5% |
| 11 | Cafe24 | 18,000 | none | none |
| 12 | BigCommerce | 16,000 | 96.9% | 96.9% |
| 13 | Shoptet | 15,000 | over 99.9% | over 99.9% |
| – | Platform not identified | 1,030,000 | 0.5% | 0.2% |
HTTP answers at /.well-known/ucp
Of the about 3.7 million live ecommerce sites
Release declared
Of the about 1.2 million sites with a valid public UCP profile
CDN in front of the store
Of the about 3.7 million live ecommerce sites, behind each CDN
Bot management in front of the store
Of the about 3.7 million live ecommerce sites: what an agent meets before the profile
The stores UCP Checker checks every day: how well UCP agents can use what they publish. Not the whole market; the wider web covers that.
What we found at /.well-known/ucp
Of the stores we check
Which release
Of the stores we check with a valid profile
What the score says
Of the stores we check that we could score
What profiles declare
Share of valid profiles; a profile can declare several
AI crawlers disallowed in robots.txt
Stores we check whose robots.txt disallows each crawler
Transports declared
Of the stores we check with a valid profile; a profile can declare several
What else an agent can read
Stores with a valid profile that also serve each
MCP tools listed
Stores that declare MCP, listing each tool the spec names
Accounts and signing
Of the stores we check with a valid profile
Rules passed least often
Share passing each UCP Checker rule, of the stores it applies to; security rules are never shown
Found and usable
Each bubble is the share of stores with a valid profile at that point: across, how many of five things an agent can find (llms.txt, WebMCP, sitemap, Open Graph, Organization schema); up, how many capabilities the profile declares
The five things: llms.txt, WebMCP, a sitemap, Open Graph tags and Organization schema. Hover or tap a bubble for what it means.
Every open proposal and recent merge in the spec repo, by area and stage; the Area and Stage filters carry the counts.
| # | Change | Area | Stage | Date |
|---|---|---|---|---|
| 979 | Standard fulfillment eventsFive standard event types on an order: processing, shipped, in_transit, delivered, canceled. | Shopping | needs TC review | filed 19 Oct |
| 1052 | Clarify cart-to-checkout conversion inputs | Shopping | on the TC agenda | filed 6 Nov |
| 977 | Dev.ucp.shopping.catalog.similarity extension | Shopping | needs TC review | filed 19 Oct |
| 974 | Similarity search, recommendations & substitute discovery | Shopping | needs TC review | filed 19 Oct |
| 902 | Search for a substituteLets a catalog search say why it is asking, such as a recommendation or a swap for given products. | Shopping | needs TC review | filed 5 Oct |
| 866 | Bulk catalog feedsA feed capability for whole-catalog files, from the Bulk Product Discovery working group. | Shopping | open | filed 25 Sep |
| 578 | Add gift_line_item_id to applied discount | Shopping | needs TC review | filed 10 Jul |
| 835 | Add well-known signals describing agent behavior during a transaction | Shopping | needs TC review | filed 18 Sep |
| 836 | Add Correspondence, stating which record a record continues and whether they agree | Shopping | needs TC review | filed 18 Sep |
| 1016 | Add optional response-only list_price to item schema | Shopping | merged · planned for 2026-12-08 | 9 Nov |
| 949 | Checkout never requires ready_for_complete, and the two REST samples disagree on it | Shopping | proposal | filed 14 Oct |
| 401 | Add structured product attributes via schema.org PropertyValue | Shopping | needs TC review | filed 1 May |
| 915 | Introduce declared_fields for extensible checkout dat… | Shopping | needs TC review | filed 8 Oct |
| 1024 | Backport #538 (ask capability) to release/2026-08-25 | Shopping | merged | 2 Nov |
| 773 | Add state-bound Offer extension for Cart proposals | Shopping | needs TC review | filed 26 Aug |
| 845 | Agreed terms into checkoutCarrying commercial terms agreed elsewhere into a cart or checkout. | Shopping | proposal | filed 19 Sep |
| 35 | Add order modification window concept for post-checkout changes | Shopping | on the TC agenda | filed 13 Jan |
| 375 | Store-Based Local Inventory & Fulfillment Options | Shopping | on the TC agenda | filed 23 Apr |
| 550 | A Bulk Product Discovery Layer for UCP | Shopping | on the TC agenda | filed 25 Jun |
| 595 | Add brand, condition, and availability/brand filters | Shopping | needs TC review | filed 16 Jul |
| 600 | Declare REST protocol error responses | Shopping | needs TC review | filed 17 Jul |
| 605 | Add inventory signals to availability schema | Shopping | needs TC review | filed 17 Jul |
| 607 | Add optional note field to line items | Shopping | needs TC review | filed 17 Jul |
| 609 | Add discoverable available discounts to discount extension | Shopping | needs TC review | filed 17 Jul |
| 613 | Proposal for list_catalog operation | Shopping | needs TC review | filed 20 Jul |
Showing the 25 with the latest activity of 57. All in the spec repo ›
The wider web is our monthly market read of ecommerce sites with measurable shopper traffic; the stores we check are checked every day. Each chart says what its shares are of. Methodology → · Citing and reuse: quote any figure with credit to UCP Checker and a link to the page and month; anything more needs our permission.
