{"slug":"webflow-udc9yw","companyName":"Webflow","domain":"webflow.com","url":"https://webflow.com","headline":"Webflow prices itself openly on the marketing site but seals the door behind a press-and-hold bot challenge, so no unverified agent can shop, sign up, or provision an API key without a human.","compositeScore":56,"humanScore":80,"agentScore":31,"doorGap":49,"humanMeasured":1,"agentMeasured":6,"percentile":null,"humanPercentile":null,"agentPercentile":null,"isPartial":true,"depth":"deep","siteClass":"b2b_saas","scannerVersion":10,"scannedAt":"2026-09-03T21:41:24.609Z","unlocked":false,"mission":{"steps":[{"url":"https://webflow.com","outcome":"ok","purpose":"reach the site at all"},{"url":"https://webflow.com","outcome":"ok","purpose":"find out whether machines are welcome"},{"url":"https://webflow.com","outcome":"ok","purpose":"ask whether the door opens for requests carrying the AI crawlers' names"},{"url":"https://webflow.com","outcome":"ok","purpose":"read the site's own guide for language models"},{"url":"https://webflow.com/sitemap.xml","outcome":"ok","purpose":"find out what pages exist"},{"url":"https://webflow.com","outcome":"ok","purpose":"find a contact route for machines"},{"url":"https://webflow.com","outcome":"missing","purpose":"find a published agent interface"},{"url":"https://webflow.com","outcome":"ok","purpose":"find an agent plugin manifest"},{"url":"https://webflow.com","outcome":"missing","purpose":"find out whether verified agents are recognised"},{"url":"https://webflow.com","outcome":"ok","purpose":"read the homepage as data rather than as a page"},{"url":"https://webflow.com","outcome":"missing","purpose":"find a machine readable API spec"},{"url":"https://webflow.com","outcome":"ok","purpose":"read the developer documentation"},{"url":"https://webflow.com","outcome":"ok","purpose":"read the prices without running JavaScript"},{"url":"https://webflow.com","outcome":"ok","purpose":"find a comparison page worth citing"},{"url":"https://webflow.com","outcome":"ok","purpose":"walk the way a visitor would, to a signup form or a product"},{"url":"https://developers.webflow.com/data/reference/oauth-app","outcome":"ok","purpose":"check if API key/OAuth app registration is self-serve"}],"verdict":"The agent got through 13 of 16 requests, but could not find a published agent interface. It came up empty on 2 other checks too. That is enough missing for a machine to give up before it reaches a purchase."},"observations":[{"url":"https://webflow.com/","step":1,"detail":"Headline \"Build for what's next\", tagline \"agentic web platform for modern businesses\". Mixes builder pitch for marketing teams with vague AI language, not concretely explained. Clear it's a site builder/CMS/hosting tool but agentic framing confuses. No pricing above fold.","moment":"Landing page","verdict":"friction","screenshot":0},{"url":"https://webflow.com/pricing","step":2,"detail":"Site plans published clearly: Starter free, Basic $15/mo, Premium $25/mo, with usage tiers for bandwidth. Add-ons priced too. But Team plan is $2,500/mo, annual contract, \"Talk to us\". Enterprise is \"Custom, Talk to us\". Bigger plans require sales contact.","moment":"Pricing page","verdict":"friction","screenshot":1},{"url":"https://webflow.com/signup","step":3,"detail":"Signup URL returns a bot check: \"Confirm you're not a bot, press and hold the button to confirm you're human.\" Not solvable by an automated visitor or agent. A human would likely pass it and reach a form 2 steps from the homepage, but nothing behind this wall is visible: no field list, no trial terms.","moment":"Signup page (via Start for free / Get started CTA)","verdict":"blocked","screenshot":2}],"dimensions":[{"key":"machine_discoverability","audience":"agent","score":61,"summary":"No user agent rule turns away named AI crawlers and the sitemap lists 6510 URLs with rich schema.org markup, but a real browser hit an automated traffic challenge on the homepage itself.","evidence":{"locked":true,"count":4}},{"key":"programmatic_onboarding","audience":"agent","score":20,"summary":"Auth is documented with code samples, but getting a credential needs a workspace account and an App built in the dashboard, with the client secret visible only to an admin. No self-serve key issuance was found.","evidence":{"locked":true,"count":4}},{"key":"pricing_legibility","audience":"agent","score":35,"summary":"10 prices sit in the homepage HTML ($6 to $200 range) and the pricing page lists Starter, Basic and Premium plans clearly, but there is no machine-readable pricing file for an agent to parse.","evidence":{"locked":true,"count":1}},{"key":"agent_aware_instrumentation","audience":"agent","score":8,"summary":"No MCP manifest exists at the one standard path checked, /mcp.json. There is no structured entry point for an agent to discover tools or actions programmatically.","evidence":{"locked":true,"count":4}},{"key":"machine_fetchable_trust","audience":"agent","score":40,"summary":"No security.txt, the homepage answers automated requests.","evidence":{"locked":true,"count":2}},{"key":"commercial_rails","audience":"agent","score":20,"summary":"Starter through Premium plans are priced in the open, but the signup CTA itself is refused for an automated browser by a press-and-hold challenge, and neither pricing.md nor OAuth metadata exists to script an account or a purchase.","evidence":{"locked":true,"count":4}},{"key":"steps_to_first_value","audience":"human","score":80,"summary":"The 'Start for free' CTA sits 2 steps from the homepage for a human visitor, but the same path answered an automated browser with a human challenge, so nothing past that point was read.","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":"No OpenAPI specification is published at any of the standard paths, so a client for Webflow's API has to be hand written from prose documentation.","dimensionKey":"agent_aware_instrumentation","evidence":{"locked":true,"count":3},"fix":null},{"rank":2,"title":"No machine-readable pricing file or OAuth authorization server metadata is published, so an agent cannot script account creation or cost comparison end to end.","dimensionKey":"commercial_rails","evidence":{"locked":true,"count":2},"fix":null}],"fixArtifacts":{"locked":true,"count":6,"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":"robots_search_bots:robots-txt","kind":"robots_search_bots","title":"robots.txt rules for AI crawlers","path":"/robots.txt","effort":{"minutes":10,"role":"owner"},"outcome":{"dimension":"machine_discoverability","external":["The assistants' search crawlers read and cite the site to buyers; training stays the owner's decision."]}},{"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":"pricing_md:pricing-md","kind":"pricing_md","title":"pricing.md","path":"/pricing.md","effort":{"minutes":20,"role":"owner"},"outcome":{"dimension":"agent_aware_instrumentation","external":["Agents read the price list directly instead of rendering the pricing page."]}},{"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":"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":"agent_aware_instrumentation","checkId":null,"key":"issue:agent_aware_instrumentation:-"},{"type":"issue","dimensionKey":"commercial_rails","checkId":null,"key":"issue:commercial_rails:-"}]}}