Every check in the free test
One page for each check in the agent readiness test: why it matters, how we measure it, how to fix it, how long it takes and which site types it applies to. Weights are read from the score model.
Store checks
Access
| Weight | |
|---|---|
| Search and user agents allowed (robots.txt) Critical blocker Search and user agents are explicitly allowed. You can still block training bots (GPTBot, ClaudeBot, Google-Extended); that doesn’t cut visibility. | 8 |
| Is bot protection open to agents? Critical blocker Bot protection stops only malicious traffic; verified search and user agents get the normal page (HTTP 200). Risk-based checks and rate limits (HTTP 429 + Retry-After) replace a CAPTCHA at every step. | 8 |
| Product name and price readable without JavaScript Critical blocker Product name, price, currency and stock are in the initial HTML (server-side rendering or static generation). | 5 |
| Sitemap An up-to-date sitemap lists your product pages and is referenced from robots.txt. | 2 |
| Can the product page be indexed? Product pages are indexable and their canonical points to themselves. | 2 |
Product data
| Weight | |
|---|---|
| Product structured data (schema.org) Critical blocker Every product page carries Product data as JSON-LD; products with variants use ProductGroup + hasVariant. | 7 |
| Price, currency, availability and URL The offer carries price, an ISO currency code, availability and the product URL together. | 6 |
| Product identity (GTIN/MPN, brand, SKU) Brand and a valid GTIN (barcode) or MPN are defined; the SKU is there too. | 5 |
| Images and description JSON-LD carries a stable https image URL and an original description; og:image is set as well. | 2 |
| Reviews and rating The stars and review count on the page are marked up as AggregateRating too. | 3 |
| Can variants (size, color) be addressed? Every variant opens at its own URL; structured data uses ProductGroup + hasVariant and variesBy. | 2 |
Policies and trust
| Weight | |
|---|---|
| Machine-readable return policy The return policy is defined once at organization level (OnlineStore → hasMerchantReturnPolicy) or on the product offer, with the same values as your returns page. | 5 |
| Returns page and window The homepage links to an HTML returns page that states the window, fees and method clearly. | 4 |
| Machine-readable shipping information Shipping rate, handling and transit times are defined with OfferShippingDetails. | 4 |
| Shipping cost and time on the page The product page shows shipping cost, the free-shipping threshold and delivery time before the cart. | 3 |
| Business identity The homepage carries OnlineStore data with name, address, contact details and social profiles. | 2 |
| Legal pages (distance selling, Türkiye) The footer links to the distance sales contract, the pre-information form and the privacy notice. | 2 |
Consistency
| Weight | |
|---|---|
| Price consistency Critical blocker Visible price = structured-data price = feed price (taxes included, same currency). | 6 |
| Stock consistency Availability is real-time and machine-readable (InStock, OutOfStock, PreOrder). | 3 |
| Currency and language priceCurrency is an ISO 4217 code (USD) and <html lang> matches the page language. | 2 |
| Return window consistency The return window in structured data equals the one on the returns page. | 2 |
| Taxes-included wording The price states that taxes are included, and shipping cost is visible before the cart. | 2 |
Action (cart and orders)
| Weight | |
|---|---|
| Add-to-cart button in the initial HTML Add to cart is a real <button> or form in the initial HTML. | 5 |
| Is the cart button accessible? The button is a <button> or form submit with visible text or an aria-label. | 3 |
| Buying without an account Guest checkout is on; few steps, no pop-ups or forced newsletter sign-ups. | 4 |
| Order tracking A guest order tracking page (order number + email) and a carrier tracking link are available. | 2 |
| Site search that works by URL Search submits a GET form to a URL parameter; WebSite data declares a SearchAction. | 1 |
Hotel and lodging checks
| Weight | |
|---|---|
| Hotel structured data (Hotel / LodgingBusiness) The homepage carries one Hotel (or Resort, BedAndBreakfast…) node with name, address, geo coordinates, phone, star rating and check-in/check-out times. | 18 |
| Amenities in structured data Every amenity a guest might filter on is listed as a LocationFeatureSpecification (name + value: true). | 8 |
| Rooms and prices readable Each room type is a HotelRoom with occupancy and bed details, offered through an Offer with a “from” price and currency. | 15 |
| Cancellation policy discoverable A plain-text cancellation policy page (deadline, fees, no-show) linked from every page. | 12 |
| Booking entry point reachable A plain <a href> to the booking engine (with dates as URL parameters if possible) or a GET form with check-in/check-out fields. | 20 |
Service business checks
| Weight | |
|---|---|
| Business structured data (Organization / ProfessionalService) One ProfessionalService (or Organization / LocalBusiness) node with name, contact details, address and the area served. | 18 |
| Services described One page per service, linked from the homepage, each with Service data pointing to your organization. | 15 |
| Pricing or “how it works” discoverable A pricing or packages page (starting prices are enough) and a short “how it works” section, both linked from the homepage. | 10 |
| Contact details readable Email and phone are plain text with mailto:/tel: links in the header or footer of every page. | 12 |
| Contact or quote form within one click A plain HTML form (name, email, message) reachable in one click from the homepage, with clearly labelled fields. | 18 |