Questions answerable
3 of 6 answerable
Enough answered to establish a reliable score.
Cartiq store report
Agent readiness overview
Store readiness score
Questions answerable
3 of 6 answerable
Enough answered to establish a reliable score.
Top issue
Shipping details are not in your structured data
−4 pts at risk
A color-coded view of every scoring area.
Product checks were read from https://drinkolipop.com/products/strawberry-vanilla, found in your product sitemap.
All findings, grouped by priority.
Shoppers increasingly ask assistants what delivery will cost before they click, and a store that cannot answer is filtered out at that moment.
No shipping policy in structured data, at offer or organization level
How to fix
0. Replace every YOUR_ value before publishing — the snippet parses as-is, but the values are not yours. 1. Publish it once for the whole store, not per product. Add hasShippingService to your Organization block — on Shopify that is one snippet in theme.liquid, and every product page inherits it. 2. State the rate and the regions you ship to. YOUR_SHIPPING_RATE is a number as a string — "0" for free shipping. YOUR_COUNTRY is a two-letter code such as GB or DE. 3. Include delivery time where you can — assistants use it to answer "will it arrive by Friday". Handling time is how long before you dispatch; transit time is how long the carrier takes. 4. Only add shippingDetails to an individual offer where that product genuinely differs — oversized items, or a region you do not ship it to. Either placement earns these points.
"@type": "Organization",
"name": "YOUR_STORE_NAME",
"hasShippingService": {
"@type": "ShippingService",
"shippingConditions": {
"@type": "ShippingConditions",
"shippingRate": { "@type": "MonetaryAmount", "value": "YOUR_SHIPPING_RATE", "currency": "USD" },
"shippingDestination": { "@type": "DefinedRegion", "addressCountry": "YOUR_COUNTRY" },
"transitTime": { "@type": "QuantitativeValue", "minValue": "YOUR_TRANSIT_DAYS_MIN", "maxValue": "YOUR_TRANSIT_DAYS_MAX", "unitCode": "DAY" },
"handlingTime": { "@type": "QuantitativeValue", "minValue": "YOUR_HANDLING_DAYS_MIN", "maxValue": "YOUR_HANDLING_DAYS_MAX", "unitCode": "DAY" }
}
}Return terms are one of the last things a shopper checks before buying, and an assistant that cannot quote yours will recommend a competitor whose terms it can.
No return policy in structured data, at offer, product or organization level
How to fix
0. Replace every YOUR_ value before publishing — the snippet parses as-is, but the values are not yours. 1. Publish it once for the whole store, not per product. Add hasMerchantReturnPolicy to your Organization block — on Shopify that is one snippet in theme.liquid, and every product page inherits it. Adding it to each offer also earns these points, but it is more work and drifts out of date. 2. Set YOUR_RETURN_DAYS to your real window and YOUR_RETURN_FEES to one of https://schema.org/FreeReturn, https://schema.org/ReturnShippingFees or https://schema.org/RestockingFees. If you do not accept returns, use returnPolicyCategory https://schema.org/MerchantReturnNotPermitted and drop the days field. 3. Make it match your published policy page exactly — a mismatch is worse than no markup, because an assistant will quote the markup. 4. Add it to an individual offer only where that product genuinely differs — final sale items, or a shorter window.
"@type": "Organization",
"name": "YOUR_STORE_NAME",
"hasMerchantReturnPolicy": {
"@type": "MerchantReturnPolicy",
"applicableCountry": "YOUR_COUNTRY",
"returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
"merchantReturnDays": "YOUR_RETURN_DAYS",
"returnMethod": "https://schema.org/ReturnByMail",
"returnFees": "YOUR_RETURN_FEES"
}Agents that can complete a purchase without handing the shopper back to your checkout convert far better, and right now yours cannot be bought from that way.
No ACP, UCP, MPP or x402 markers found
How to fix
1. Review the emerging agentic commerce protocols — ACP, UCP, MPP and x402 — and pick the one your platform supports. 2. Advertise support with a meta tag or response header so agents can detect it without guessing. 3. This is early; being among the first stores to support it is the point, and most of your competitors have not.
<meta name="agentic-commerce" content="acp-version=1" />Without a GTIN, MPN or SKU an assistant cannot match your listing to the same product sold elsewhere, so you silently lose the price comparisons you would often win.
sku=false, gtin=false, mpn=false
How to fix
0. Replace every YOUR_ value before publishing — the snippet parses as-is, but the values are not yours. 1. Add gtin13 (or gtin8/gtin12/gtin14) if your products have a barcode — this is the strongest identifier. 2. If you manufacture the product yourself, add mpn instead. 3. Add sku in all cases; it is the weakest of the three but better than nothing. 4. On Shopify, the barcode field maps to gtin and is often left blank at import — check a few products.
"sku": "YOUR_SKU",
"gtin13": "YOUR_GTIN13",
"mpn": "YOUR_MPN"Every agent you block is an entire storefront that cannot see you at all, and agents you have not explicitly welcomed may crawl you less often than competitors who have.
12 of 12 agents allowed, 0 explicitly welcomed
How to fix
1. Remove any Disallow rule that applies to the shopping agents listed in your report. 2. Add an explicit Allow group for each agent you want to reach your catalogue — being explicit is worth more than staying silent. 3. Keep blocking genuinely unwanted crawlers; this is about the agents that bring shoppers, not about opening your site to everything. 4. Re-check after any WAF or CDN change, since those often inject their own rules.
User-agent: GPTBot
Allow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: ChatGPT-User
Allow: /
User-agent: ClaudeBot
Allow: /
User-agent: Claude-User
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: Perplexity-User
Allow: /
User-agent: Google-Extended
Allow: /
User-agent: Applebot-Extended
Allow: /
User-agent: Amazonbot
Allow: /
User-agent: meta-externalagent
Allow: /
User-agent: Bytespider
Allow: /Assistants asked about delivery or returns will say they do not know, which reads to a shopper as a store that is hiding something.
Shipping page reachable: false, returns page reachable: false
How to fix
1. Publish separate shipping and returns pages at stable URLs. 2. Link them from your homepage footer using plain wording — "Shipping" and "Returns" rather than an icon or a JavaScript-only accordion. 3. Make sure both pages are crawlable and not blocked in robots.txt.
Shoppers who ask an assistant for your brand by name will not be matched to your products.
How to fix
1. Add a brand field to your Product JSON-LD. 2. Use the object form with @type Brand rather than a bare string — it is unambiguous and better supported. 3. Use the same spelling everywhere, including your Organization markup and og:site_name.
"brand": {
"@type": "Brand",
"name": "Your Brand"
}Assistants read the description to decide whether your product matches what the shopper actually asked for, and a thin one loses those matches to competitors.
Description is 0 characters
How to fix
1. Add a description field of at least a couple of sentences — 50 characters is the floor, not the target. 2. Describe material, fit, use case and what makes it different, in plain language. 3. Do not paste keyword lists; assistants read this as prose and keyword stuffing reads as low quality.
"description": "A breathable everyday running shoe made from responsibly sourced merino wool, built for comfort over long distances. Machine washable, available in four colourways."Assistants routinely rank results by rating, and a product with none is usually ordered below competitors that have one.
How to fix
0. Replace every YOUR_ value before publishing — the snippet parses as-is, but the values are not yours. 1. Add aggregateRating with your real average score and review count. 2. Add individual review entries where you have them. 3. Only publish ratings you actually collected — fabricated review markup is a policy violation with every major platform. 4. Most review apps (Shopify: Judge.me, Okendo, Loox; WooCommerce: built-in reviews) emit this automatically once enabled.
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "YOUR_RATING_VALUE",
"reviewCount": "YOUR_REVIEW_COUNT"
}Report at a glance
This score reflects how much useful store information Cartiq could read from public pages. The fastest path to a stronger recommendation is to fix the highest-priority gaps below, not to chase a mystery number.
Evidence captured 2026-10-05 19:08 UTC · scan version 10 · public pages only.
Download a polished image of this exact scan for X, LinkedIn, or Facebook.
A 1200 × 675 PNG using this scan’s current results.
This report is generated from the exact drinkolipop.com scan shown on this page — including every stored finding, recommendation, category result, and scan date.
Complete category breakdown, findings, and store-specific fixes.
Free, no account, about twenty seconds.
The fixes below include customer reviews, which this total leaves out. We cannot tell from outside whether those apply to your product, so we do not promise points we are not certain you can win. Fixing them still raises your score.
Your score is 74 out of 100. Points from your platform are real — an agent genuinely reads those stores more easily — but you did not have to do anything to earn them, and you cannot lose them without moving. The fixes below are the ones that are yours.
3 of 6 answerable
This is whether the data needed to answer exists on your product page in a machine-readable form. We do not test ChatGPT, Perplexity or any other assistant, so it does not say how one of them would actually answer.
These are the shopper questions your store could not answer. Priority comes from the existing Cartiq issue severity.
High priority
What does shipping cost?
Shoppers increasingly ask assistants what delivery will cost before they click, and a store that cannot answer is filtered out at that moment.
Can I return it?
Return terms are one of the last things a shopper checks before buying, and an assistant that cannot quote yours will recommend a competitor whose terms it can.
Low priority
What do other buyers think?
Assistants routinely rank results by rating, and a product with none is usually ordered below competitors that have one.
Fix an issue on your store, then run a new scan to compare the two real scan results. Rescans are limited to once per store per hour.