{"slug":"ashbyhq-e6r3gc","companyName":"Ashby","domain":"ashbyhq.com","url":"https://ashbyhq.com","headline":"Ashby publishes pricing and welcomes AI crawlers, but offers no API key without a sales conversation and no machine-readable specification for integration.","compositeScore":61,"humanScore":68,"agentScore":53,"doorGap":15,"humanMeasured":4,"agentMeasured":6,"percentile":40,"humanPercentile":10,"agentPercentile":45,"isPartial":false,"depth":"free","siteClass":"b2b_saas","scannerVersion":12,"scannedAt":"2026-09-08T14:07:28.679Z","unlocked":false,"mission":{"steps":[{"url":"https://www.ashbyhq.com","outcome":"ok","purpose":"reach the site at all"},{"url":"https://www.ashbyhq.com/robots.txt","outcome":"ok","purpose":"find out whether machines are welcome"},{"url":"https://www.ashbyhq.com","outcome":"ok","purpose":"ask whether the door opens for requests carrying the AI crawlers' names"},{"url":"https://www.ashbyhq.com/llms.txt","outcome":"ok","purpose":"read the site's own guide for language models"},{"url":"https://www.ashbyhq.com/sitemap.xml","outcome":"ok","purpose":"find out what pages exist"},{"url":"https://www.ashbyhq.com/.well-known/security.txt","outcome":"missing","purpose":"find a contact route for machines"},{"url":"https://www.ashbyhq.com","outcome":"missing","purpose":"find a published agent interface"},{"url":"https://www.ashbyhq.com/.well-known/ai-plugin.json","outcome":"missing","purpose":"find an agent plugin manifest"},{"url":"https://www.ashbyhq.com","outcome":"missing","purpose":"find out whether verified agents are recognised"},{"url":"https://www.ashbyhq.com","outcome":"ok","purpose":"read the homepage as data rather than as a page"},{"url":"https://www.ashbyhq.com","outcome":"missing","purpose":"find a machine readable API spec"},{"url":"https://www.ashbyhq.com","outcome":"ok","purpose":"read the developer documentation"},{"url":"https://www.ashbyhq.com/pricing","outcome":"ok","purpose":"read the prices without running JavaScript"},{"url":"https://www.ashbyhq.com","outcome":"ok","purpose":"find a comparison page worth citing"},{"url":"https://www.ashbyhq.com/startups","outcome":"ok","purpose":"walk the way a visitor would, to a signup form or a product"}],"verdict":"The agent got through 10 of 15 requests, but could not find a contact route for machines. It came up empty on 4 other checks too."},"observations":null,"dimensions":[{"key":"machine_discoverability","audience":"agent","score":100,"summary":"No AI crawler is blocked by robots.txt or user agent rules. A real browser is served the page normally. The homepage carries 4 schema.org types, a sitemap lists 475 URLs, llms.txt is published, and comparison pages render without.","evidence":{"locked":true,"count":4}},{"key":"programmatic_onboarding","audience":"agent","score":18,"summary":"Authentication is documented at developers.ashbyhq.com, but no OpenAPI spec exists at any of the 6 standard paths checked. No self-serve API key issuance is published.","evidence":{"locked":true,"count":3}},{"key":"pricing_legibility","audience":"agent","score":85,"summary":"5 prices are readable without JavaScript on the pricing page, ranging from $90 to $400 per month. No tier is gated behind a demo or contact-sales requirement. Currency is USD and pricing is per-seat.","evidence":{"locked":true,"count":1}},{"key":"agent_aware_instrumentation","audience":"agent","score":8,"summary":"No MCP manifest is published at any of the 3 standard paths checked. No ai-plugin.json or Web Bot Auth signals are present. The site does not declare machine-readable integration points for agents.","evidence":{"locked":true,"count":4}},{"key":"machine_fetchable_trust","audience":"agent","score":40,"summary":"No security.txt is published at /.well-known/security.txt. The homepage responds to automated requests with HTTP 200 and serves structured data. Trust signals are minimal.","evidence":{"locked":true,"count":2}},{"key":"commercial_rails","audience":"agent","score":65,"summary":"Prices are published in raw HTML on the pricing page with no sales gate. A self-serve signup form is reachable from the homepage in 2 steps and asks for 4 fields with none required. Payment is not requested on signup.","evidence":{"locked":true,"count":2}},{"key":"steps_to_first_value","audience":"human","score":80,"summary":"The primary call to action on the homepage leads to a signup form in 2 steps. The form itself is presented immediately without intermediate pages.","evidence":{"locked":true,"count":1}},{"key":"required_fields","audience":"human","score":90,"summary":"The signup form on the entry path contains 4 fields, and 0 of them are marked required. No validation rules are enforced on any input. The form imposes minimal friction.","evidence":{"locked":true,"count":1}},{"key":"verification_walls","audience":"human","score":65,"summary":"No verification requirement is visible on the signup page itself. Email confirmation, phone verification, or identity checks may occur after submission, but the form does not declare them. The initial barrier is low.","evidence":{"locked":true,"count":1}},{"key":"error_recovery","audience":"human","score":35,"summary":"0 of 4 inputs on the signup form carry validation rules or constraint descriptions. No inline error containers or live regions are present to guide correction. A visitor who enters invalid data receives no help recovering.","evidence":{"locked":true,"count":1}}],"issues":[{"rank":1,"title":"No MCP manifest was found at the 3 standard paths checked, so an agent has no published machine door to this site.","dimensionKey":"agent_aware_instrumentation","evidence":{"locked":true,"count":2},"fix":null},{"rank":2,"title":"No security.txt is published, so a machine has no documented route to report a problem.","dimensionKey":"machine_fetchable_trust","evidence":{"locked":true,"count":1},"fix":null},{"rank":3,"title":"No machine-readable API specification exists, requiring developers to write clients by hand from prose documentation.","dimensionKey":"programmatic_onboarding","evidence":{"locked":true,"count":3},"fix":null}],"fixArtifacts":{"locked":true,"count":5,"summaries":[{"id":"software_offer_jsonld:pricing-page","kind":"software_offer_jsonld","title":"Pricing as Offer structured data","path":"pricing page","effort":{"minutes":20,"role":"developer"},"outcome":{"dimension":"pricing_legibility","external":["Assistants comparing vendors read the plans and prices as Offer structured data."]}},{"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."]}}]},"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":"mcp_manifest","key":"issue:agent_aware_instrumentation:mcp_manifest"},{"type":"issue","dimensionKey":"machine_fetchable_trust","checkId":"security_txt","key":"issue:machine_fetchable_trust:security_txt"},{"type":"issue","dimensionKey":"programmatic_onboarding","checkId":null,"key":"issue:programmatic_onboarding:-"}]}}