{"slug":"levels-gktnyf","companyName":"Levels","domain":"levels.com","url":"https://levels.com","headline":"A health tracking retailer blocks three named AI crawlers at the network edge despite welcoming them in robots.txt, and publishes no product pages for agents to read.","compositeScore":32,"humanScore":0,"agentScore":32,"doorGap":0,"humanMeasured":0,"agentMeasured":5,"percentile":null,"humanPercentile":null,"agentPercentile":null,"isPartial":true,"depth":"free","siteClass":"ecommerce","scannerVersion":16,"scannedAt":"2026-09-08T20:05:56.675Z","unlocked":false,"mission":{"steps":[{"url":"https://www.levels.com","outcome":"ok","purpose":"reach the site at all"},{"url":"https://www.levels.com/robots.txt","outcome":"ok","purpose":"find out whether machines are welcome"},{"url":"https://www.levels.com","outcome":"missing","purpose":"ask whether the door opens for requests carrying the AI crawlers' names"},{"url":"https://www.levels.com/llms.txt","outcome":"missing","purpose":"read the site's own guide for language models"},{"url":"https://www.levels.com/sitemap.xml","outcome":"ok","purpose":"find out what pages exist"},{"url":"https://www.levels.com/.well-known/security.txt","outcome":"missing","purpose":"find a contact route for machines"},{"url":"https://www.levels.com","outcome":"missing","purpose":"find a published agent interface"},{"url":"https://www.levels.com/.well-known/ai-plugin.json","outcome":"missing","purpose":"find an agent plugin manifest"},{"url":"https://www.levels.com","outcome":"missing","purpose":"find out whether verified agents are recognised"},{"url":"https://www.levels.com","outcome":"missing","purpose":"read the homepage as data rather than as a page"},{"url":"https://www.levels.com","outcome":"missing","purpose":"find a machine readable API spec"},{"url":"https://www.levels.com","outcome":"missing","purpose":"read the developer documentation"},{"url":"https://www.levels.com","outcome":"ok","purpose":"read the prices without running JavaScript"},{"url":"https://www.levels.com","outcome":"missing","purpose":"read the product catalogue as data"},{"url":"https://www.levels.com","outcome":"ok","purpose":"read a product page as data"},{"url":"https://www.levels.com","outcome":"missing","purpose":"read the returns and shipping terms"},{"url":"https://www.levels.com","outcome":"ok","purpose":"walk the way a visitor would, to a signup form or a product"}],"verdict":"The agent got through 6 of 17 requests, but could not ask whether the door opens for requests carrying the AI crawlers' names. It came up empty on 10 other checks too. That is enough missing for a machine to give up before it reaches a purchase."},"observations":null,"dimensions":[{"key":"machine_discoverability","audience":"agent","score":53,"summary":"Robots.txt names and allows 5 AI crawlers including GPTBot, Claude and Perplexity, and a real browser is served normally. A sitemap lists 1271 URLs.","evidence":{"locked":true,"count":4}},{"key":"programmatic_onboarding","audience":"agent","score":10,"summary":"No API documentation is linked from the homepage or published at standard paths. No OpenAPI spec, MCP manifest, or developer surface was found. The site offers no programmatic route for agents to browse or purchase.","evidence":{"locked":true,"count":3}},{"key":"pricing_legibility","audience":"agent","score":35,"summary":"15 prices appear in the homepage HTML, ranging from $1 to $1,999. However, no product pages could be reached to verify whether prices carry currency, availability, or structured data. Prices are visible but not machine-readable.","evidence":{"locked":true,"count":2}},{"key":"agent_aware_instrumentation","audience":"agent","score":20,"summary":"Robots.txt names 5 AI crawlers and allows them, showing awareness. No MCP manifest exists at the 3 standard paths checked. No UCP manifest or commerce platform integration was detected.","evidence":{"locked":true,"count":4}},{"key":"machine_fetchable_trust","audience":"agent","score":40,"summary":"No security.txt file is published at /.well-known/security.txt. The homepage answers automated requests from honest clients. No trust signals are available for agents to verify the site's identity or security posture.","evidence":{"locked":true,"count":3}},{"key":"commercial_rails","audience":"agent","score":null,"summary":"Could not verify: this scan did not reach the pages that would show it.","evidence":{"locked":true,"count":4}},{"key":"steps_to_first_value","audience":"human","score":null,"summary":"Could not verify: this scan did not reach the pages that would show it.","evidence":{"locked":true,"count":1}},{"key":"required_fields","audience":"human","score":null,"summary":"Could not verify: this scan did not reach the pages that would show it.","evidence":{"locked":true,"count":1}},{"key":"verification_walls","audience":"human","score":null,"summary":"Could not verify: this scan did not reach the pages that would show it.","evidence":{"locked":true,"count":1}},{"key":"error_recovery","audience":"human","score":null,"summary":"Could not verify: this scan did not reach the pages that would show it.","evidence":{"locked":true,"count":1}}],"issues":[{"rank":1,"title":"The network edge refuses 3 declared AI crawlers that robots.txt welcomes, so the published policy and the actual behaviour disagree.","dimensionKey":"machine_discoverability","evidence":{"locked":true,"count":4},"fix":null},{"rank":2,"title":"No developer documentation is linked from the homepage, in raw HTML or the rendered page, so integration starts with a search engine.","dimensionKey":"programmatic_onboarding","evidence":{"locked":true,"count":1},"fix":null},{"rank":3,"title":"The network edge blocks three AI crawlers that robots.txt explicitly welcomes, preventing agents from reading the site.","dimensionKey":"machine_discoverability","evidence":{"locked":true,"count":3},"fix":null}],"fixArtifacts":{"locked":true,"count":8,"summaries":[{"id":"bot_wall_guidance:notes","kind":"bot_wall_guidance","title":"Let verified assistants through","path":"notes","effort":{"minutes":60,"role":"developer"},"outcome":{"dimension":"machine_discoverability","external":["Assistant shopping and search crawlers reach the product, pricing and policy pages a buyer asks about."]}},{"id":"policy_pages_text:returns","kind":"policy_pages_text","title":"Returns and refunds page","path":"/returns","effort":{"minutes":30,"role":"owner"},"outcome":{"dimension":"machine_fetchable_trust","external":["Returns and shipping pages read as text and are linked from every product page."]}},{"id":"policy_pages_text:shipping","kind":"policy_pages_text","title":"Shipping and delivery page","path":"/shipping","effort":{"minutes":30,"role":"owner"},"outcome":{"dimension":"machine_fetchable_trust","external":["Returns and shipping pages read as text and are linked from every product page."]}},{"id":"agent_checkout_note:notes","kind":"agent_checkout_note","title":"Agent checkout: where you stand","path":"notes","effort":{"minutes":10,"role":"owner"},"outcome":{"dimension":"agent_aware_instrumentation","external":["The checkout rail question is settled with the platform and processor before any manifest is published."]}},{"id":"organization_jsonld:homepage","kind":"organization_jsonld","title":"Organization structured data","path":"homepage","effort":{"minutes":15,"role":"developer"},"outcome":{"dimension":"machine_discoverability","external":["Search and assistant crawlers read the company entity from the homepage rather than inferring it."]}},{"id":"security_txt:well-known-security-txt","kind":"security_txt","title":"security.txt","path":"/.well-known/security.txt","effort":{"minutes":10,"role":"owner"},"outcome":{"dimension":"machine_fetchable_trust","external":["Researchers and automated scanners find a disclosure address instead of guessing one."]}},{"id":"interfaces_note:notes","kind":"interfaces_note","title":"Machine interfaces: where you stand","path":"notes","effort":{"minutes":10,"role":"owner"},"outcome":{"dimension":"agent_aware_instrumentation","external":["The developer surface is built in an order where every published pointer answers."]}},{"id":"llms_txt:llms-txt","kind":"llms_txt","title":"llms.txt","path":"/llms.txt","effort":{"minutes":15,"role":"owner"},"outcome":{"dimension":"machine_discoverability","external":["Assistants that read llms.txt get a curated map of the site instead of guessing from the homepage."]}}]},"feedback":{"endpoint":"/api/feedback","mcpTool":"rate_fix","targets":[{"type":"report","key":"report"},{"type":"dimension","dimensionKey":"machine_discoverability","key":"dimension:machine_discoverability"},{"type":"dimension","dimensionKey":"programmatic_onboarding","key":"dimension:programmatic_onboarding"},{"type":"dimension","dimensionKey":"pricing_legibility","key":"dimension:pricing_legibility"},{"type":"dimension","dimensionKey":"agent_aware_instrumentation","key":"dimension:agent_aware_instrumentation"},{"type":"dimension","dimensionKey":"machine_fetchable_trust","key":"dimension:machine_fetchable_trust"},{"type":"dimension","dimensionKey":"commercial_rails","key":"dimension:commercial_rails"},{"type":"dimension","dimensionKey":"steps_to_first_value","key":"dimension:steps_to_first_value"},{"type":"dimension","dimensionKey":"required_fields","key":"dimension:required_fields"},{"type":"dimension","dimensionKey":"verification_walls","key":"dimension:verification_walls"},{"type":"dimension","dimensionKey":"error_recovery","key":"dimension:error_recovery"},{"type":"issue","dimensionKey":"machine_discoverability","checkId":"agent_ua_access","key":"issue:machine_discoverability:agent_ua_access"},{"type":"issue","dimensionKey":"programmatic_onboarding","checkId":"api_surface","key":"issue:programmatic_onboarding:api_surface"},{"type":"issue","dimensionKey":"machine_discoverability","checkId":null,"key":"issue:machine_discoverability:-"}]}}