# AI Shopping Readiness Audit Report

**Target:** `https://www.blivakker.no`
**Timestamp:** 2026-06-11T08:48:56.843144+00:00
**Tier:** ecommerce
**Overall score:** 89.22 (B)

## Executive Summary

Approved-target audit using rendered page extraction plus direct robots.txt/llms.txt fetches. Paid APIs, affiliate output, publishing, and recurring monitoring were not included.

### Top Findings

- **HIGH — Low content-to-boilerplate ratio:** The page has little visible text relative to HTML size. Recommendation: Move important answers into crawlable text and reduce boilerplate.
- **MEDIUM — Unclear H1 structure:** Expected exactly one H1 heading. Recommendation: Use one descriptive H1 and hierarchical H2/H3 sections.
- **MEDIUM — No agent-native cart or checkout integration verified:** The audit found page-level purchase paths, but no MCP/UCP/ACP or equivalent cart/checkout API evidence (including no /.well-known/mcp.json manifest). Recommendation: After feed/schema readiness, evaluate cart deep links or Storefront/MCP/UCP/ACP integration for agent-assisted checkout.
- **INFO — llms.txt not found:** No llms.txt content was supplied. Recommendation: Consider adding llms.txt for AI-agent oriented site guidance.
- **INFO — OpenAI visibility check completed (live model run):** A live OpenAI model run answered 2 of 5 visibility prompt(s) about this site, and 6 cited URL(s) were recorded from the transcripts. The remaining 3 prompt(s) timed out or errored and are recorded as such in the evidence. Recommendation: Nothing to fix here — this entry documents how the visibility evidence was collected. Read it as a one-time spot check of live OpenAI answers (responses vary between runs), not as a ChatGPT ranking or share-of-voice measurement.
## Ecommerce Agent Readiness

For ecommerce, the commercial question is not whether an AI system can cite the site. It is whether a shopping assistant can find the right products, understand variants/availability/price, compare options, and hand the shopper to a reliable purchase path.

| Capability | Current signal | Interpretation |
|---|---:|---|
| Catalog discovery graph | 100/100 | Crawlable category/product paths and sitemap signals from the sampled page. |
| Product/feed data readiness | 100/100 | Product/Offer/variant/shipping/returns evidence available to agents. |
| Agent shopping task proxy | 100/100 | Failed proxy tasks: none detected. |
| Purchase handoff maturity | Level 3 | cart/deep-link evidence. |

### Sampled Product Pages — Per-Page Data Quality

| Page | Products | Offer price | ACP violations | Score |
|---|---:|---:|---:|---:|
| https://www.blivakker.no/product/890/american-crew-forming-cream-herre-85g | 1 | yes | 0 | 100 |
| https://www.blivakker.no/product/1181/elizabeth-arden-red-door-eau-de-toilette-for-her-50ml | 1 | yes | 0 | 100 |
| https://www.blivakker.no/product/1319/lancome-miracle-eau-de-parfum-30ml | 1 | yes | 0 | 100 |
| https://www.blivakker.no/product/1801/tigi-bedhead-wax-stick-73g | 1 | yes | 0 | 100 |
| https://www.blivakker.no/product/1851/wella-professionals-sp-classic-volumize-shampoo-250ml | 1 | yes | 0 | 100 |

**Sellable angle:** prioritize feed-grade product data, Product/Offer schema, exact variant modeling, delivery/returns clarity, and purchase handoff before citation-oriented work such as generic llms.txt copy.

### Commercial Readiness Roadmap

| Horizon | Workstream | Outcome |
|---|---|---|
| 0–2 weeks | Fix high-confidence crawl/schema gaps from this report | Agents can discover catalog paths and parse product facts without brittle visual/UI inference. |
| 2–6 weeks | Feed-grade product model | Products, variants, prices, availability, shipping, and returns map to stable IDs and machine-readable records. |
| 6–12 weeks | Agent purchase handoff | Deep links, cart URLs, storefront API, MCP/UCP/ACP, or equivalent handoff path can be evaluated without checkout execution. |

### What This Is Not Claiming

- Not a live ChatGPT/Perplexity visibility measurement.
- Not a full-catalog crawl unless explicitly run against sitemap/product URLs.
- Not checkout execution, payment testing, or affiliate advice.
- Not a recommendation detached from evidence: every action below maps back to a finding.

## Implementation Roadmap

| Horizon | Priority fixes | Expected outcome |
|---|---|---|
| 0-2w | Low content-to-boilerplate ratio | The affected readiness signal improves with evidence tied to the original finding. |
| 2-6w | No agent-native cart or checkout integration verified | The affected readiness signal improves with evidence tied to the original finding. |
| 6-12w | Publish an evidence-backed /llms.txt guidance file; Unclear H1 structure; OpenAI visibility check completed (live model run) | Agents and crawlers have a compact guidance file to find canonical commerce facts faster. |

## Recommendation Playbook

### R1: Publish an evidence-backed /llms.txt guidance file

- **Why it matters:** If this stays unfixed, agents have no compact, owner-authored map to canonical product, policy, and support URLs. They must infer priorities from generic HTML/navigation, which increases the chance of stale policy answers, missed catalog entry points, or use of non-canonical pages. It still is not a ranking guarantee, but it removes avoidable ambiguity.
- **Recommended fix:** Create /llms.txt with brand summary, category map, priority collections/products, shipping/returns facts, canonical links, explicit agent policy, token-budget guidance, and freshness/source-of-truth notes.
- **Owner:** content/seo/dev
- **Effort/impact:** low/low
- **Priority horizon:** 6-12w
- **Platform relevance:** ChatGPT, Perplexity, Google AI, Claude, Cloudflare Markdown for Agents
- **Verification:** curl -fsSL https://example.com/llms.txt and confirm it returns HTTP 200 text with canonical links and policy facts.
- **Expected outcome:** Agents and crawlers have a compact guidance file to find canonical commerce facts faster.
- **Examples:** # Brand
One-paragraph factual brand summary. | # Product and category map
- Category name — canonical URL — notes for agents. | # Policies
Shipping, returns, terms, privacy, support URLs; do not duplicate stale prices.
- **Caveats:** llms.txt is not a ranking guarantee. | Keep dynamic price/stock in product feeds/schema rather than stale prose.

### R2: Low content-to-boilerplate ratio

- **Why it matters:** If this stays unfixed, a crawler may spend its token budget on navigation, banners, scripts, and repeated layout text instead of the actual merchant/category facts. The practical result is weaker summaries, missed product-discovery context, and a higher chance that an AI assistant treats the page as thin or unhelpful compared with competitors that expose concise crawlable copy.
- **Recommended fix:** Move important answers into crawlable text and reduce boilerplate.
- **Owner:** dev/seo
- **Effort/impact:** medium/high
- **Priority horizon:** 0-2w
- **Platform relevance:** ChatGPT, Perplexity, Google AI, Claude
- **Verification:** Re-run the audit for the same target and confirm this finding is absent or lower severity.
- **Expected outcome:** The affected readiness signal improves with evidence tied to the original finding.
- **Caveats:** Deterministic readiness proxy; not a live AI ranking or placement guarantee.

### R3: Unclear H1 structure

- **Why it matters:** If this stays unfixed, agents and search systems can infer the wrong page purpose because the primary heading does not clearly state what the page is about. That makes category/brand/entity classification less reliable and can push the assistant to rely on titles, menus, or snippets instead of an explicit on-page semantic anchor.
- **Recommended fix:** Use one descriptive H1 and hierarchical H2/H3 sections.
- **Owner:** dev/seo
- **Effort/impact:** low/medium
- **Priority horizon:** 6-12w
- **Platform relevance:** ChatGPT, Perplexity, Google AI, Claude
- **Verification:** Re-run the audit for the same target and confirm this finding is absent or lower severity.
- **Expected outcome:** The affected readiness signal improves with evidence tied to the original finding.
- **Caveats:** Deterministic readiness proxy; not a live AI ranking or placement guarantee.

### R4: OpenAI visibility check completed (live model run)

- **Why it matters:** If this stays unfixed, the report finding remains a practical blocker: A live OpenAI model run answered 2 of 5 visibility prompt(s) about this site, and 6 cited URL(s) were recorded from the transcripts. The remaining 3 prompt(s) timed out or errored and are recorded as such in the evidence. The likely client impact is continued informational-impact risk until the recommended fix is implemented and retested.
- **Recommended fix:** Nothing to fix here — this entry documents how the visibility evidence was collected. Read it as a one-time spot check of live OpenAI answers (responses vary between runs), not as a ChatGPT ranking or share-of-voice measurement.
- **Owner:** dev/seo
- **Effort/impact:** none/informational
- **Priority horizon:** 6-12w
- **Platform relevance:** ChatGPT, Perplexity, Google AI, Claude
- **Verification:** Re-run the audit for the same target and confirm this finding is absent or lower severity.
- **Expected outcome:** The affected readiness signal improves with evidence tied to the original finding.
- **Caveats:** Deterministic readiness proxy; not a live AI ranking or placement guarantee.

### R5: No agent-native cart or checkout integration verified

- **Why it matters:** If this stays unfixed, an AI assistant can point a shopper at a product page but cannot safely create or verify the exact cart, variant, price, stock state, delivery terms, or checkout handoff. That leaves the highest-value step—moving from recommendation to purchase—manual, fragile, and hard to measure.
- **Recommended fix:** After feed/schema readiness, evaluate cart deep links or Storefront/MCP/UCP/ACP integration for agent-assisted checkout.
- **Owner:** ecommerce/dev
- **Effort/impact:** high/high
- **Priority horizon:** 2-6w
- **Platform relevance:** ChatGPT, Perplexity, Google AI, Claude, OpenAI product feeds, Perplexity Merchant Program
- **Verification:** Re-run the audit for the same target and confirm this finding is absent or lower severity.
- **Expected outcome:** The affected readiness signal improves with evidence tied to the original finding.
- **Caveats:** Deterministic readiness proxy; not a live AI ranking or placement guarantee.

## Platform Commerce Readiness

| Platform/check | Status | What this means |
|---|---:|---|
| ChatGPT/OpenAI Product Feed Readiness | `partial` | Prepare a feed-grade product/variant export before claiming ChatGPT Shopping readiness. Caveat: Onboarding/eligibility is platform-controlled; this audit checks readiness fields only. |
| Perplexity Merchant Program Readiness | `partial` | Use this as an onboarding/apply checklist; do not claim Perplexity inclusion or ranking without live evidence. Caveat: Merchant-program readiness is separate from live Perplexity visibility. |
| Cloudflare Markdown for Agents Readiness | `not_tested` | If Cloudflare is used, run an approved Accept: text/markdown check and compare product/policy fact preservation. Caveat: Offline fixture mode renders this as a checklist, not a network claim. |
| MCP/API Maturity Assessment | `checklist` | Do not build MCP first for most shops; prove feed/schema and handoff maturity, then design scoped product-search/cart tools with evals. Caveat: MCP/API maturity is promoted only with explicit API/headless-commerce evidence. |
| Retest & Before/After Delta | `checklist` | After fixes, rerun the same audit target and compare score, findings, recommendation cards, and raw evidence snapshots. Caveat: Before/after claims require comparable scope and timestamped artifacts. |

## Retest Checklist

- Re-run the same target and tier after fixes.
- Compare overall score, closed findings, recommendation cards, and raw evidence snapshots.
- Keep live visibility separate unless approved platform evidence exists.

## Value Bundle Appendices

These appendices implement the bundle-expansion recommendations as customer-facing, evidence-bound artifacts. They do not claim live AI ranking, checkout/payment execution, platform approval, or UCP/ACP implementation.

### OpenAI / Shopify / Google Feed Readiness Appendix

| Field | Status | Meaning |
|---|---:|---|
| stable_product_id | `observed` | Stable product or variant identifier |
| title | `observed` | Human-readable product title |
| description | `observed` | Concise factual product description |
| canonical_url | `observed` | Canonical product URL |
| media_url | `observed` | Valid product or variant image/video URL |
| variant_id | `observed` | Unique purchasable variant identifier |
| variant_options | `needs_mapping` | User-facing option labels such as color, size, volume |
| price_amount | `observed` | Price amount in currency minor units or equivalent source value |
| price_currency | `observed` | ISO 4217 currency |
| availability | `observed` | Purchasable stock state |
| seller_name | `requires_merchant_confirmation` | Seller name shown to buyer agents |
| policy_links | `needs_mapping` | Privacy, terms, refund, shipping, and FAQ URLs |
| target_country | `requires_merchant_confirmation` | Target market/country assumption |

### AI Channel Governance

| Channel | Status | Owner decision |
|---|---:|---|
| Shopify Agentic Storefronts / Shopify Catalog | `requires_admin_confirmation` | Confirm eligible-store status and AI channel settings in Shopify admin. |
| ChatGPT product discovery / referral | `requires_platform_evidence` | Do not claim live placement unless method-labeled evidence exists. |
| Google AI Mode / Gemini via Merchant Center or Google & YouTube | `requires_admin_confirmation` | Check Merchant Center, Google & YouTube sales channel, country eligibility, and UCP interest state. |
| Microsoft Copilot / embedded checkout surfaces | `requires_platform_evidence` | Record whether Shopify/partner checkout is enabled. |
| Perplexity, Claude, Grok, crawler-only AI assistants | `monitor_only` | Treat as visibility/citation monitoring unless a commerce integration is verified. |

### Merchant Center / Shopify Admin Checklist

- Shopify Agentic section/channel settings require admin confirmation.
- Google Merchant Center/feed/UCP interest state require merchant admin confirmation.
- OpenAI product-feed access and update cadence require approved partner/feed context.

### Policy-to-Agent Contract

Machine-readable policy summaries are generated as templates for shipping, refunds, privacy, terms, FAQ, and support. Every filled policy fact must trace to a customer-approved public URL.

### Prompt and Citation Monitoring Starter Kit

| Prompt ID | Stage | Prompt |
|---|---:|---|
| prompt-01 | discovery | What is the best After Sun for sensitive skin under 900 NOK? |
| prompt-02 | comparison | Find a After Sun that is in stock and can be delivered this week. |
| prompt-03 | purchase_confidence | Compare American Crew Forming Cream Herre 85g with a similar alternative for dry skin. |
| prompt-04 | posture | Which After Sun has the clearest return policy if it does not work for me? |
| prompt-05 | discovery | Recommend a gift-ready After Sun under 900 NOK with reliable shipping. |

### Before / After Delta Pack

Compare two audit-data.json files to produce closed findings, new findings, unchanged blockers, score delta, regressions, and an acceptance statement before customer signoff.

### Executive Decision Brief

Strong public AI-shopping readiness, but feed/admin confirmation and policy mapping are required before AI-channel claims.

| Sequence | Finding | Owner | Action |
|---:|---|---|---|
| 1 | Low content-to-boilerplate ratio | engineering_owner | Move important answers into crawlable text and reduce boilerplate. |
| 2 | Unclear H1 structure | ecommerce_owner | Use one descriptive H1 and hierarchical H2/H3 sections. |
| 3 | No agent-native cart or checkout integration verified | engineering_owner | After feed/schema readiness, evaluate cart deep links or Storefront/MCP/UCP/ACP integration for agent-assisted checkout. |

### Remediation Economics

Coarse S/M/L effort and qualitative risk only; no revenue uplift is invented without customer conversion/order data.

| Sequence | Finding | Buyer-agent impact | Effort | Risk if ignored |
|---:|---|---|---:|---|
| 1 | Low content-to-boilerplate ratio | high | `M` | AI assistants may omit, misread, or over-infer this part of the shopping journey. |
| 2 | Unclear H1 structure | medium | `S` | AI assistants may omit, misread, or over-infer this part of the shopping journey. |
| 3 | No agent-native cart or checkout integration verified | high | `L` | AI assistants may omit, misread, or over-infer this part of the shopping journey. |
| 4 | llms.txt not found | low | `S` | AI assistants may omit, misread, or over-infer this part of the shopping journey. |
| 5 | OpenAI visibility check completed (live model run) | informational | `S` | AI assistants may omit, misread, or over-infer this part of the shopping journey. |

### Evidence Coverage Matrix

| Area | Public crawl | Browser evidence | Structured data | Admin evidence | Customer confirmation |
|---|---:|---:|---:|---:|---|
| Products | `observed` | `observed` | `observed` | `requires_admin_confirmation` | needed for feed submission and channel state |
| Prices and stock | `observed` | `observed` | `observed` | `requires_admin_confirmation` | needed for system-of-record freshness |
| Shipping and returns | `not_tested` | `observed` | `not_tested` | `requires_admin_confirmation` | needed for policy-to-agent contract |
| Checkout | `observed` | `not_tested` | `out_of_scope` | `requires_admin_confirmation` | needed before checkout/payment claims |
| AI surface visibility | `method_labeled_only` | `not_live_ai_surface` | `supporting_evidence_only` | `requires_platform_evidence` | needed before ranking/placement claims |

### Platform Readiness Scorecards

| Surface | Status | Next action | Claim guardrail |
|---|---:|---|---|
| ChatGPT / OpenAI product feed | `ready_with_mapping` | Map remaining product/feed fields and confirm merchant-approved feed access. | Does not claim ChatGPT listing, ranking, recommendation, or checkout availability. |
| Google Merchant / AI Mode | `requires_admin_confirmation` | Review Merchant Center diagnostics, target countries, shipping/returns, and destination settings. | Does not claim Merchant Center approval or Google AI Mode placement. |
| Shopify / agentic storefront | `requires_admin_confirmation` | Confirm Shopify Catalog/Agentic settings and product inclusion rules in admin. | Does not claim channel eligibility or enabled state from public crawl. |
| Crawler-only assistants | `public_evidence_available` | Keep public crawl/schema/policy evidence clean and retestable. | Crawler readability is not live answer-engine ranking evidence. |
| API/MCP future readiness | `checklist_only` | Do not build MCP/API first; finish feed/schema/policy foundations and prove demand. | No UCP/ACP/MCP implementation or checkout delegation claim. |

### Admin Evidence Request

| Evidence | Where to find | Redaction | Confidence impact |
|---|---|---|---|
| Shopify AI/Agentic channel settings | Shopify admin: sales channels / catalog / agentic or AI-related settings | Hide shop ID, staff names, private app tokens, and customer data. | Upgrades Shopify readiness from requires_admin_confirmation to observed/confirmed. |
| Google Merchant Center diagnostics | Merchant Center: Products, diagnostics, feed freshness, destination status, shipping/returns | Hide account IDs, billing, payment, and private business identifiers. | Separates public structured-data readiness from actual feed approval/health. |
| OpenAI/partner product-feed access and owner | Merchant/partner admin, feed export job, or approved product-feed integration notes | Hide credentials, signed URLs, and partner secrets. | Allows product-feed recommendations to become implementation-ready instead of public-only. |
| Policy URLs approved by legal/support | Public terms, returns, shipping, privacy, FAQ, and support pages plus owner signoff | No customer/order data; include only public URLs and approved summaries. | Allows policy-to-agent contract facts to be filled without inference. |

### Buyer-Agent Simulation Pack

Deterministic proxy scenarios; not live ChatGPT/Gemini/Claude/Perplexity behavior.

| Prompt | Safe answer basis | Cannot verify | Recommended data fix |
|---|---|---|---|
| Find a relevant product from buyer intent. | Scenario generated from sampled public audit evidence. | Wrong recommendations if product text/feed lacks intent terms. | Expose factual product descriptions, category terms, and use-case attributes in visible text and feeds. |
| Filter products by a buyer budget. | Scenario generated from sampled public audit evidence. | Agents may recommend unaffordable products if price is not machine-readable. | Expose current price and currency in Product/Offer schema, feed rows, and visible product text. |
| Exclude unavailable or out-of-stock products. | Scenario generated from sampled public audit evidence. | Agents may send shoppers to dead ends if stock state is unclear. | Expose availability in Offer schema/feed and keep it synchronized with product and cart state. |
| Select the exact shade, size, volume, or variant requested. | Scenario generated from sampled public audit evidence. | Wrong-product purchase risk if variant data is ambiguous. | Expose variant IDs, option labels, variant URLs, price, stock, and images. |
| Compare relevant alternatives without inventing differentiators. | Scenario generated from sampled public audit evidence. | Agents may invent or omit differences when comparison attributes are weak. | Expose comparable attributes, reviews/ratings where genuine, and structured category/spec data. |

### Delta Certificate Preview

Retest certificate will show score delta, closed findings, new findings, severity changes, regressions, and remaining blockers before customer signoff.


### Agent Access Posture Decision Memo

Current recommendation: `selective`.

### Remediation Engineering Mini-Sprint

Approval required before live customer changes. Scope is limited to top 3-5 audit findings plus retest/delta evidence; checkout, payment, publishing, platform submissions, and affiliate claims remain out of scope without explicit approval.

## Recommended Agent Access Posture

**Verdict:** `selective`  
**Confidence:** high

This is an ecommerce target: product/search discovery may be commercially useful, but training access, checkout automation, account pages, and sensitive inventory/pricing surfaces should be controlled separately.

### Recommended policy actions

- Allow desired search/product-discovery crawlers where acceptable; decide separately on model-training crawlers.
- Keep account, checkout, admin, cart state, and sensitive inventory/pricing endpoints restricted unless an agent-safe integration exists.
- Publish clear product feed/schema/policy signals before pursuing agent-native cart or checkout integrations.

### Posture limitations

- Posture is inferred from public sampled evidence; legal/commercial crawler policy still needs owner approval.

## Browser Journey Evidence

This is an optional Webwright-style browser pass: it opens the approved URL in a real browser, captures screenshots/logs, and summarizes what a browser-based buyer journey can see. It is not live ChatGPT/Perplexity/Gemini visibility evidence.

**Status:** `pass`  
**Summary:** A Webwright-style browser pass loaded the approved URL, captured visual evidence, and recorded visible text/control evidence across 4 named browser scenario(s). Browser scenarios sampled: homepage_smoke, product_discovery, product_detail_readiness, policy_lookup. Key browser-visible signal: Homepage rendered visible text in a real browser session.

### Browser-visible signals

- Homepage rendered visible text in a real browser session.
- The browser detected 120 visible interactive control(s) on the sampled page.
- Product discovery found 51 same-site product/category-like control(s).
- A product/category-like page or control was opened and re-captured in browser evidence.
- No safe policy-like control was clicked; policy lookup remains screenshot-only for this run.

### Evidence artifacts

- Reusable script: `final_script.py`
- Action log: `final_script_log.txt`
- Screenshot: `screenshots/01-homepage.png`
- Screenshot: `screenshots/02-after-safe-setup-click.png`
- Screenshot: `screenshots/03-product-discovery.png`
- Screenshot: `screenshots/04-product-detail-readiness.png`
- Screenshot: `screenshots/05-policy-lookup.png`

### Browser evidence limitations

- This is optional browser journey evidence, not live ChatGPT/Perplexity/Gemini visibility.
- Only approved non-destructive browser scenarios were sampled.
- No checkout, payment, account login, purchase, or affiliate action was performed.

## Buyer-Agent Simulation Appendix

These buyer-agent scenarios are deterministic readiness proxies based on sampled public evidence. They do not claim live placement or behavior in ChatGPT, Gemini, Claude, Perplexity, or any other AI surface unless separately tested and documented.

| Scenario | Status | Risk | Recommendation |
|---|---:|---|---|
| Find a relevant product from buyer intent. | `pass` | Wrong recommendations if product text/feed lacks intent terms. | Expose factual product descriptions, category terms, and use-case attributes in visible text and feeds. |
| Filter products by a buyer budget. | `pass` | Agents may recommend unaffordable products if price is not machine-readable. | Expose current price and currency in Product/Offer schema, feed rows, and visible product text. |
| Exclude unavailable or out-of-stock products. | `pass` | Agents may send shoppers to dead ends if stock state is unclear. | Expose availability in Offer schema/feed and keep it synchronized with product and cart state. |
| Select the exact shade, size, volume, or variant requested. | `pass` | Wrong-product purchase risk if variant data is ambiguous. | Expose variant IDs, option labels, variant URLs, price, stock, and images. |
| Compare relevant alternatives without inventing differentiators. | `pass` | Agents may invent or omit differences when comparison attributes are weak. | Expose comparable attributes, reviews/ratings where genuine, and structured category/spec data. |
| Hand the shopper to a reliable product/cart purchase path. | `pass` | Shopper may fail to complete purchase if product, variant, or cart handoff is unstable. | Provide canonical product/variant URLs and, where safe, cart deep links or documented commerce APIs. |
| Answer shipping and return confidence questions. | `pass` | Shipping or return uncertainty reduces buyer confidence and can produce unsupported agent claims. | Expose shipping, delivery, return, terms, and support policy URLs in visible text and structured data. |
| Find a gift under a buyer budget with delivery confidence. | `pass` | Budget or delivery mismatch can make agent recommendations unusable. | Expose price, availability, delivery estimates, and gifting/category attributes in feed and visible text. |
| Compare similar products using factual attributes. | `pass` | Agents may invent differentiators when comparable attributes are missing. | Publish structured attributes/specs and genuine review/rating evidence where available. |
| Check whether the chosen item is return-eligible. | `pass` | Unsupported return claims create trust and support risk. | Expose return window, exceptions, hygiene/product exclusions, and policy URL near product data. |
| Estimate landed cost including shipping threshold or delivery fee. | `pass` | Unexpected total cost reduces conversion and increases wrong answers. | Expose delivery fees, free-shipping thresholds, taxes/duties caveats, and target country. |
| Find a replacement or compatible alternative when an item is unavailable. | `pass` | Agents need alternatives instead of dead-end out-of-stock recommendations. | Expose categories, attributes, compatibility/substitute tags, and stock state. |
| Avoid restricted, unsafe, or policy-sensitive recommendations. | `pass` | Platforms may suppress or mis-handle prohibited/unsafe categories. | Classify restricted products and expose safety/compliance notes without overclaiming. |
| Hand off to exact product, variant, or cart URL. | `pass` | Wrong URL or variant handoff creates wrong-product purchase risk. | Provide canonical variant URLs, add-to-cart/deep links where safe, or documented cart API handoff. |


## Methodology

Approved-target audit using rendered page extraction plus direct robots.txt/llms.txt fetches. Paid APIs, affiliate output, publishing, and recurring monitoring were not included.

## Evidence Table

- **Crawler Access:** AI crawler registry is pending source verification for some entries.
- **Text Extractability:** Text extractability score computed
- **Structured Data:** JSON-LD blocks extracted from HTML
- **AI Surface Visibility:** AI surface visibility method-labeled result
- **Ecommerce Catalog Discovery:** Catalog discovery graph extracted from links, robots.txt, and bounded product samples — as evident on `https://www.blivakker.no`
- **Ecommerce Product Data Readiness:** Product/feed readiness deterministic extraction — as evident on `https://www.blivakker.no`
- **Agent Shopping Task Readiness:** Deterministic agent-shopping task proxy — as evident on `https://www.blivakker.no`
- **Purchase Handoff Readiness:** Purchase handoff deterministic extraction — as evident on `https://www.blivakker.no`

## Layer Results

### Layer 1: Crawler Access

**Score:** 95.00

**Evidence summary:**

- **Ai bots allowed:** 9 useful signal(s): GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, Claude-SearchBot, plus 4 more.
- **Robots txt found:** yes
- **Sitemap found:** yes
- **Sitemap url:** https://www.blivakker.no/sitemap.xml
- **Canonical tag:** https://www.blivakker.no/
- **Llms txt found:** no
- **Sitemap freshness:** 6 useful signal(s): is index, child sitemaps, lastmod count, lastmod coverage, oldest lastmod, plus 1 more.

**Findings:**
- **INFO — llms.txt not found**: No llms.txt content was supplied.
  - Recommendation: Consider adding llms.txt for AI-agent oriented site guidance.
  - Evidence tie-back: Crawler access inputs analyzed
  - Effort/Impact: low/low

**Limitations:**
- Crawler source URLs with pending verification must not be represented as confirmed.

### Layer 2: Text Extractability

**Score:** 65.00

**Evidence summary:**

- **Content ratio:** 0.0384
- **Heading structure:** 2 useful signal(s): h2, h3.
- **Answer blocks found:** 0
- **Js dependent:** no
- **Facts in images:** no
- **Token efficiency:** 0.0504
- **Rendering mode:** server_rendered

**Findings:**
- **HIGH — Low content-to-boilerplate ratio**: The page has little visible text relative to HTML size.
  - Recommendation: Move important answers into crawlable text and reduce boilerplate.
  - Evidence tie-back: HTML and Markdown text extraction metrics
  - Effort/Impact: medium/high
- **MEDIUM — Unclear H1 structure**: Expected exactly one H1 heading.
  - Recommendation: Use one descriptive H1 and hierarchical H2/H3 sections.
  - Evidence tie-back: HTML and Markdown text extraction metrics
  - Effort/Impact: low/medium

### Layer 3: Structured Data

**Score:** 100.00

**Evidence summary:**

- **Schema types:** 2 item(s) detected: Organization, WebSite

No findings in this layer.

### Layer 7: AI Surface Visibility

**Score:** 85.00

**Evidence summary:**

- **Mode:** codex_oauth
- **Prompts:** 5 item(s) detected: What does https://www.blivakker.no sell and who is it for?, Name three product categories available at https://www.blivakker.no., How does https://www.blivakker.no compare to other shops for the same products on price and selection?, What are the shipping costs, delivery times, and return policy at https://www.blivakker.no?, I want to buy a specific product from https://www.blivakker.no. Give me the exact product page link and its current price.
- **Prompt pack:** ecommerce_buyer
- **Citations:** 6 item(s) detected: https://www.blivakker.no, https://www.blivakker.no?, https://www.blivakker.no/kundesenter/sporsmal-og-svar, https://www.blivakker.no/, https://www.blivakker.no/product/3323579/cultivator-s-organic-herbal-hair-color-henna-neutral-4pcs, plus 1 more
- **Api results count:** 5
- **Api backed:** yes
- **Oauth backed:** yes
- **Generic openai api:** no

**Findings:**
- **INFO — OpenAI visibility check completed (live model run)**: A live OpenAI model run answered 2 of 5 visibility prompt(s) about this site, and 6 cited URL(s) were recorded from the transcripts. The remaining 3 prompt(s) timed out or errored and are recorded as such in the evidence.
  - Recommendation: Nothing to fix here — this entry documents how the visibility evidence was collected. Read it as a one-time spot check of live OpenAI answers (responses vary between runs), not as a ChatGPT ranking or share-of-voice measurement.
  - Evidence tie-back: AI surface visibility method-labeled result
  - Effort/Impact: none/informational

**Limitations:**
- Method-labeled as codex_oauth; do not generalize beyond this method.
- No live answer-engine ranking claim is made without raw provider-specific evidence.
- Single-run spot check: identical prompts can return different answers across runs and providers, so this is presence/absence evidence at one point in time, not a ranking or share-of-voice measurement.
- OpenAI visibility evidence comes from a live OAuth-authenticated model run, not from the ChatGPT consumer UI or the OpenAI Responses API; answers can differ between runs.

### Layer 8: Ecommerce Catalog Discovery

**Score:** 100.00

**Evidence summary:**

- **Commerce platform:** 2 useful signal(s): platform, confidence.
- **Internal links:** 995
- **Product like links:** 957
- **Category like links:** 12
- **Pagination like links:** 0
- **Sitemap directives:** 1 item(s) detected: https://www.blivakker.no/sitemap.xml
- **Sampled product pages:** 5
- **Sampled product urls:** 5 item(s) detected: https://www.blivakker.no/product/890/american-crew-forming-cream-herre-85g, https://www.blivakker.no/product/1181/elizabeth-arden-red-door-eau-de-toilette-for-her-50ml, https://www.blivakker.no/product/1319/lancome-miracle-eau-de-parfum-30ml, https://www.blivakker.no/product/1801/tigi-bedhead-wax-stick-73g, https://www.blivakker.no/product/1851/wella-professionals-sp-classic-volumize-shampoo-250ml

No findings in this layer.

**Limitations:**
- Bounded sample only; not a full catalog crawl.

### Layer 9: Ecommerce Product Data Readiness

**Score:** 100.00

**Evidence summary:**

- **Products detected:** 5
- **Offers detected:** 5
- **Return policies detected:** 0
- **Shipping details detected:** 0
- **Sampled product pages:** 5
- **Sampled product urls:** 5 item(s) detected: https://www.blivakker.no/product/890/american-crew-forming-cream-herre-85g, https://www.blivakker.no/product/1181/elizabeth-arden-red-door-eau-de-toilette-for-her-50ml, https://www.blivakker.no/product/1319/lancome-miracle-eau-de-parfum-30ml, https://www.blivakker.no/product/1801/tigi-bedhead-wax-stick-73g, https://www.blivakker.no/product/1851/wella-professionals-sp-classic-volumize-shampoo-250ml
- **Product names:** 5 item(s) detected: American Crew Forming Cream Herre 85g, Elizabeth Arden Red Door Eau De Toilette For Her 50ml, Lancôme Miracle Eau De Parfum 30ml, Tigi Bedhead Wax Stick 73g, Wella Professionals Sp Classic Volumize Shampoo 250ml
- **Category terms:** 9 item(s) detected: After Sun, Brandsdal Group AS, Merker, Selvbruning, Solkrem og solpleie, plus 4 more
- **Price values:** 5 item(s) detected: 299.0, 859.0, 729.0, 249.0, 249.0
- **Price currencies:** 1 item(s) detected: NOK
- **Acp field validation:** 3 useful signal(s): records checked, field pass counts, acp feed ready.
- **Per page scorecards:** 5 detailed record(s) captured; see the technical appendix for the raw evidence.

No findings in this layer.

**Limitations:**
- Feed readiness is inferred from sampled page/schema; no private product feed was provided.
- ACP field validation is a readiness proxy; ChatGPT merchant feed access is partner-gated.

### Layer 10: Agent Shopping Task Readiness

**Score:** 100.00

**Evidence summary:**

- **Task results:** 14 useful signal(s): find product by need, filter by price, filter by availability, select exact variant, compare alternatives, plus 9 more.
- **Buyer agent scenarios:** 14 detailed record(s) captured; see the technical appendix for the raw evidence.
- **Sampled product pages:** 5

No findings in this layer.

**Limitations:**
- This is a deterministic proxy, not a live ChatGPT/Perplexity shopping result.

### Layer 11: Purchase Handoff Readiness

**Score:** 66.00

**Evidence summary:**

- **Maturity level:** 3
- **Maturity label:** cart/deep-link evidence
- **Sampled product pages:** 5
- **Cart links detected:** 6
- **Cart buttons detected:** 56
- **Product links detected:** 3679
- **Mcp manifest detected:** no

**Findings:**
- **MEDIUM — No agent-native cart or checkout integration verified**: The audit found page-level purchase paths, but no MCP/UCP/ACP or equivalent cart/checkout API evidence (including no /.well-known/mcp.json manifest).
  - Recommendation: After feed/schema readiness, evaluate cart deep links or Storefront/MCP/UCP/ACP integration for agent-assisted checkout.
  - Evidence tie-back: Purchase handoff deterministic extraction
  - Effort/Impact: high/high

**Limitations:**
- Checkout was not executed; no payment, account, or order flow was tested.

## Prioritized Action Plan

1. **Low content-to-boilerplate ratio** — Move important answers into crawlable text and reduce boilerplate. _(effort: medium, impact: high)_
2. **Unclear H1 structure** — Use one descriptive H1 and hierarchical H2/H3 sections. _(effort: low, impact: medium)_
3. **No agent-native cart or checkout integration verified** — After feed/schema readiness, evaluate cart deep links or Storefront/MCP/UCP/ACP integration for agent-assisted checkout. _(effort: high, impact: high)_
4. **llms.txt not found** — Consider adding llms.txt for AI-agent oriented site guidance. _(effort: low, impact: low)_
5. **OpenAI visibility check completed (live model run)** — Nothing to fix here — this entry documents how the visibility evidence was collected. Read it as a one-time spot check of live OpenAI answers (responses vary between runs), not as a ChatGPT ranking or share-of-voice measurement. _(effort: none, impact: informational)_
## Technical Appendix

The main report summarizes what the evidence implies in plain language. Raw JSON-style evidence is kept here for auditability and debugging.

### Raw evidence details

#### Layer 1: Crawler Access metadata

```json
{
  "ai_bots_allowed": {
    "Applebot-Extended": true,
    "CCBot": true,
    "ChatGPT-User": true,
    "Claude-SearchBot": true,
    "ClaudeBot": true,
    "GPTBot": true,
    "Google-Extended": true,
    "OAI-SearchBot": true,
    "PerplexityBot": true
  },
  "canonical_tag": "https://www.blivakker.no/",
  "llms_txt_found": false,
  "meta_robots": [],
  "robots_txt_found": true,
  "sitemap_found": true,
  "sitemap_freshness": {
    "child_sitemaps": 5,
    "is_index": true,
    "lastmod_count": 1,
    "lastmod_coverage": 0.2,
    "newest_lastmod": "2026-06-11",
    "oldest_lastmod": "2026-06-11",
    "url_count": 0
  },
  "sitemap_url": "https://www.blivakker.no/sitemap.xml"
}
```

#### Layer 1: Crawler Access evidence 1

```json
{
  "crawlers": [
    {
      "last_verified": null,
      "name": "GPTBot",
      "source_url": "https://platform.openai.com/docs/bots",
      "vendor": "OpenAI",
      "verification_status": "pending_source_verification"
    },
    {
      "last_verified": null,
      "name": "OAI-SearchBot",
      "source_url": "https://platform.openai.com/docs/bots",
      "vendor": "OpenAI",
      "verification_status": "pending_source_verification"
    },
    {
      "last_verified": null,
      "name": "ChatGPT-User",
      "source_url": "https://platform.openai.com/docs/bots",
      "vendor": "OpenAI",
      "verification_status": "pending_source_verification"
    },
    {
      "last_verified": null,
      "name": "ClaudeBot",
      "source_url": null,
      "vendor": "Anthropic",
      "verification_status": "pending_source_verification"
    },
    {
      "last_verified": null,
      "name": "Claude-SearchBot",
      "source_url": null,
      "vendor": "Anthropic",
      "verification_status": "pending_source_verification"
    },
    {
      "last_verified": null,
      "name": "Google-Extended",
      "source_url": "https://developers.google.com/search/docs/crawling-indexing/overview-google-crawlers",
      "vendor": "Google",
      "verification_status": "pending_source_verification"
    },
    {
      "last_verified": null,
      "name": "PerplexityBot",
      "source_url": null,
      "vendor": "Perplexity",
      "verification_status": "pending_source_verification"
    },
    {
      "last_verified": null,
      "name": "CCBot",
      "source_url": "https://commoncrawl.org/ccbot",
      "vendor": "Common Crawl",
      "verification_status": "pending_source_verification"
    },
    {
      "last_verified": null,
      "name": "Applebot-Extended",
      "source_url": null,
      "vendor": "Apple",
      "verification_status": "pending_source_verification"
    }
  ]
}
```

#### Layer 2: Text Extractability metadata

```json
{
  "answer_blocks_found": 0,
  "content_ratio": 0.0384,
  "facts_in_images": false,
  "heading_structure": {
    "h1": 0,
    "h2": 2,
    "h3": 205
  },
  "js_dependent": false,
  "rendering_mode": "server_rendered",
  "token_efficiency": 0.0504
}
```

#### Layer 2: Text Extractability evidence 1

```json
{
  "answer_blocks_found": 0,
  "content_ratio": 0.0384,
  "facts_in_images": false,
  "heading_structure": {
    "h1": 0,
    "h2": 2,
    "h3": 205
  },
  "js_dependent": false,
  "rendering_mode": "server_rendered",
  "token_efficiency": 0.0504
}
```

#### Layer 3: Structured Data metadata

```json
{
  "missing_by_type": {},
  "parse_errors": [],
  "schema_types": [
    "Organization",
    "WebSite"
  ]
}
```

#### Layer 3: Structured Data evidence 1

```json
{
  "count": 2,
  "parse_errors": []
}
```

#### Layer 7: AI Surface Visibility metadata

```json
{
  "api_backed": true,
  "api_results_count": 5,
  "citations": [
    "https://www.blivakker.no",
    "https://www.blivakker.no?",
    "https://www.blivakker.no/kundesenter/sporsmal-og-svar",
    "https://www.blivakker.no/",
    "https://www.blivakker.no/product/3323579/cultivator-s-organic-herbal-hair-color-henna-neutral-4pcs",
    "https://www.blivakker.no/product/3242799/davines-volu-shampoo-bar-100g"
  ],
  "generic_openai_api": false,
  "mode": "codex_oauth",
  "oauth_backed": true,
  "prompt_pack": "ecommerce_buyer",
  "prompts": [
    "What does https://www.blivakker.no sell and who is it for?",
    "Name three product categories available at https://www.blivakker.no.",
    "How does https://www.blivakker.no compare to other shops for the same products on price and selection?",
    "What are the shipping costs, delivery times, and return policy at https://www.blivakker.no?",
    "I want to buy a specific product from https://www.blivakker.no. Give me the exact product page link and its current price."
  ]
}
```

#### Layer 7: AI Surface Visibility evidence 1

```json
{
  "api_backed": true,
  "api_results_count": 5,
  "citations": [
    "https://www.blivakker.no",
    "https://www.blivakker.no?",
    "https://www.blivakker.no/kundesenter/sporsmal-og-svar",
    "https://www.blivakker.no/",
    "https://www.blivakker.no/product/3323579/cultivator-s-organic-herbal-hair-color-henna-neutral-4pcs",
    "https://www.blivakker.no/product/3242799/davines-volu-shampoo-bar-100g"
  ],
  "generic_openai_api": false,
  "mode": "codex_oauth",
  "oauth_backed": true,
  "prompts": [
    "What does https://www.blivakker.no sell and who is it for?",
    "Name three product categories available at https://www.blivakker.no.",
    "How does https://www.blivakker.no compare to other shops for the same products on price and selection?",
    "What are the shipping costs, delivery times, and return policy at https://www.blivakker.no?",
    "I want to buy a specific product from https://www.blivakker.no. Give me the exact product page link and its current price."
  ]
}
```

#### Layer 8: Ecommerce Catalog Discovery metadata

```json
{
  "category_like_links": 12,
  "commerce_platform": {
    "confidence": "none",
    "implications": {},
    "markers_matched": [],
    "platform": "unknown"
  },
  "internal_links": 995,
  "pagination_like_links": 0,
  "product_like_links": 957,
  "sampled_product_pages": 5,
  "sampled_product_urls": [
    "https://www.blivakker.no/product/890/american-crew-forming-cream-herre-85g",
    "https://www.blivakker.no/product/1181/elizabeth-arden-red-door-eau-de-toilette-for-her-50ml",
    "https://www.blivakker.no/product/1319/lancome-miracle-eau-de-parfum-30ml",
    "https://www.blivakker.no/product/1801/tigi-bedhead-wax-stick-73g",
    "https://www.blivakker.no/product/1851/wella-professionals-sp-classic-volumize-shampoo-250ml"
  ],
  "sitemap_directives": [
    "https://www.blivakker.no/sitemap.xml\r"
  ]
}
```

#### Layer 8: Ecommerce Catalog Discovery evidence 1

```json
{
  "category_like_links": 12,
  "category_link_samples": [
    "/merker",
    "/products/harpleie/solprodukter-til-har",
    "/products/harpleie/solprodukter-til-har",
    "/products/harpleie/solprodukter-til-har",
    "/products/hudpleie/solprodukter",
    "/products/hudpleie/solprodukter/solkrem-og-solpleie",
    "/products/hudpleie/solprodukter/after-sun",
    "/products/hudpleie/solprodukter/selvbruning"
  ],
  "commerce_platform": {
    "confidence": "none",
    "implications": {},
    "markers_matched": [],
    "platform": "unknown"
  },
  "failed_sitemaps": [],
  "fetched_sitemaps": [
    "https://www.blivakker.no/sitemap.xml",
    "https://www.blivakker.no/sitemaps/sitemap-products-1.xml"
  ],
  "internal_links": 995,
  "max_sample_urls": 5,
  "pagination_like_links": 0,
  "product_like_links": 957,
  "product_link_samples": [
    "/products/medlemstilbud",
    "/products/bestselgere",
    "/products/nyheter",
    "/products/salg-og-tilbud/pakkepris",
    "/products/kundesenter/kundeklubb",
    "/products/tilbud",
    "/products/bestselgere",
    "/products/bestselgere"
  ],
  "sample_url_discovery": "robots_sitemap_then_current_page_links",
  "sampled_pages_loaded": 5,
  "sampled_product_pages": 5,
  "sampled_product_urls": [
    "https://www.blivakker.no/product/890/american-crew-forming-cream-herre-85g",
    "https://www.blivakker.no/product/1181/elizabeth-arden-red-door-eau-de-toilette-for-her-50ml",
    "https://www.blivakker.no/product/1319/lancome-miracle-eau-de-parfum-30ml",
    "https://www.blivakker.no/product/1801/tigi-bedhead-wax-stick-73g",
    "https://www.blivakker.no/product/1851/wella-professionals-sp-classic-volumize-shampoo-250ml"
  ],
  "sitemap_directives": [
    "https://www.blivakker.no/sitemap.xml"
  ]
}
```

#### Layer 9: Ecommerce Product Data Readiness metadata

```json
{
  "acp_field_validation": {
    "acp_feed_ready": true,
    "field_pass_counts": {
      "availability": 5,
      "currency": 5,
      "description": 5,
      "image": 5,
      "price": 5,
      "title": 5
    },
    "records_checked": 5,
    "violations": []
  },
  "category_terms": [
    "After Sun",
    "Brandsdal Group AS",
    "Merker",
    "Selvbruning",
    "Solkrem og solpleie",
    "Solprodukter",
    "Solprodukter til hår",
    "Vis alt",
    "her"
  ],
  "missing_offer_fields": {},
  "missing_product_fields": {},
  "offers_detected": 5,
  "per_page_scorecards": [
    {
      "acp_violations": 0,
      "json_ld_parse_errors": 0,
      "offer_price_present": true,
      "page_score": 100.0,
      "products_detected": 1,
      "source": "direct_product_sample",
      "url": "https://www.blivakker.no/product/890/american-crew-forming-cream-herre-85g"
    },
    {
      "acp_violations": 0,
      "json_ld_parse_errors": 0,
      "offer_price_present": true,
      "page_score": 100.0,
      "products_detected": 1,
      "source": "direct_product_sample",
      "url": "https://www.blivakker.no/product/1181/elizabeth-arden-red-door-eau-de-toilette-for-her-50ml"
    },
    {
      "acp_violations": 0,
      "json_ld_parse_errors": 0,
      "offer_price_present": true,
      "page_score": 100.0,
      "products_detected": 1,
      "source": "direct_product_sample",
      "url": "https://www.blivakker.no/product/1319/lancome-miracle-eau-de-parfum-30ml"
    },
    {
      "acp_violations": 0,
      "json_ld_parse_errors": 0,
      "offer_price_present": true,
      "page_score": 100.0,
      "products_detected": 1,
      "source": "direct_product_sample",
      "url": "https://www.blivakker.no/product/1801/tigi-bedhead-wax-stick-73g"
    },
    {
      "acp_violations": 0,
      "json_ld_parse_errors": 0,
      "offer_price_present": true,
      "page_score": 100.0,
      "products_detected": 1,
      "source": "direct_product_sample",
      "url": "https://www.blivakker.no/product/1851/wella-professionals-sp-classic-volumize-shampoo-250ml"
    }
  ],
  "price_currencies": [
    "NOK"
  ],
  "price_values": [
    299.0,
    859.0,
    729.0,
    249.0,
    249.0
  ],
  "product_names": [
    "American Crew Forming Cream Herre 85g",
    "Elizabeth Arden Red Door Eau De Toilette For Her 50ml",
    "Lancôme Miracle Eau De Parfum 30ml",
    "Tigi Bedhead Wax Stick 73g",
    "Wella Professionals Sp Classic Volumize Shampoo 250ml"
  ],
  "products_detected": 5,
  "return_policies_detected": 0,
  "sampled_product_pages": 5,
  "sampled_product_urls": [
    "https://www.blivakker.no/product/890/american-crew-forming-cream-herre-85g",
    "https://www.blivakker.no/product/1181/elizabeth-arden-red-door-eau-de-toilette-for-her-50ml",
    "https://www.blivakker.no/product/1319/lancome-miracle-eau-de-parfum-30ml",
    "https://www.blivakker.no/product/1801/tigi-bedhead-wax-stick-73g",
    "https://www.blivakker.no/product/1851/wella-professionals-sp-classic-volumize-shampoo-250ml"
  ],
  "shipping_details_detected": 0,
  "variant_option_labels": []
}
```

#### Layer 9: Ecommerce Product Data Readiness evidence 1

```json
{
  "availability_hits": [
    "på lager",
    "utsolgt"
  ],
  "category_terms": [
    "After Sun",
    "Brandsdal Group AS",
    "Merker",
    "Selvbruning",
    "Solkrem og solpleie",
    "Solprodukter",
    "Solprodukter til hår",
    "Vis alt",
    "her"
  ],
  "json_ld_parse_errors": [],
  "missing_offer_fields": {},
  "missing_product_fields": {},
  "offers": 5,
  "price_currencies": [
    "NOK"
  ],
  "price_hits_sample": [
    "299,-",
    "119 kr",
    "149 kr",
    "189 kr",
    "239 kr",
    "299 kr",
    "135 kr",
    "169 kr"
  ],
  "price_values": [
    299.0,
    859.0,
    729.0,
    249.0,
    249.0
  ],
  "product_names": [
    "American Crew Forming Cream Herre 85g",
    "Elizabeth Arden Red Door Eau De Toilette For Her 50ml",
    "Lancôme Miracle Eau De Parfum 30ml",
    "Tigi Bedhead Wax Stick 73g",
    "Wella Professionals Sp Classic Volumize Shampoo 250ml"
  ],
  "products": 5,
  "return_hits": [
    "retur"
  ],
  "return_policies": 0,
  "sampled_product_pages": 5,
  "sampled_product_urls": [
    "https://www.blivakker.no/product/890/american-crew-forming-cream-herre-85g",
    "https://www.blivakker.no/product/1181/elizabeth-arden-red-door-eau-de-toilette-for-her-50ml",
    "https://www.blivakker.no/product/1319/lancome-miracle-eau-de-parfum-30ml",
    "https://www.blivakker.no/product/1801/tigi-bedhead-wax-stick-73g",
    "https://www.blivakker.no/product/1851/wella-professionals-sp-classic-volumize-shampoo-250ml"
  ],
  "shipping_details": 0,
  "shipping_hits": [
    "frakt",
    "levering",
    "hentested",
    "bring"
  ],
  "variant_option_labels": []
}
```

#### Layer 10: Agent Shopping Task Readiness metadata

```json
{
  "buyer_agent_scenarios": [
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "find_product_by_need",
      "prompt": "Find a relevant product from buyer intent.",
      "recommendation": "Expose factual product descriptions, category terms, and use-case attributes in visible text and feeds.",
      "risk": "Wrong recommendations if product text/feed lacks intent terms.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "filter_by_price",
      "prompt": "Filter products by a buyer budget.",
      "recommendation": "Expose current price and currency in Product/Offer schema, feed rows, and visible product text.",
      "risk": "Agents may recommend unaffordable products if price is not machine-readable.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "filter_by_availability",
      "prompt": "Exclude unavailable or out-of-stock products.",
      "recommendation": "Expose availability in Offer schema/feed and keep it synchronized with product and cart state.",
      "risk": "Agents may send shoppers to dead ends if stock state is unclear.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "select_exact_variant",
      "prompt": "Select the exact shade, size, volume, or variant requested.",
      "recommendation": "Expose variant IDs, option labels, variant URLs, price, stock, and images.",
      "risk": "Wrong-product purchase risk if variant data is ambiguous.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "compare_alternatives",
      "prompt": "Compare relevant alternatives without inventing differentiators.",
      "recommendation": "Expose comparable attributes, reviews/ratings where genuine, and structured category/spec data.",
      "risk": "Agents may invent or omit differences when comparison attributes are weak.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "purchase_handoff",
      "prompt": "Hand the shopper to a reliable product/cart purchase path.",
      "recommendation": "Provide canonical product/variant URLs and, where safe, cart deep links or documented commerce APIs.",
      "risk": "Shopper may fail to complete purchase if product, variant, or cart handoff is unstable.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "answer_shipping_returns",
      "prompt": "Answer shipping and return confidence questions.",
      "recommendation": "Expose shipping, delivery, return, terms, and support policy URLs in visible text and structured data.",
      "risk": "Shipping or return uncertainty reduces buyer confidence and can produce unsupported agent claims.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "gift_under_budget_with_delivery_constraint",
      "prompt": "Find a gift under a buyer budget with delivery confidence.",
      "recommendation": "Expose price, availability, delivery estimates, and gifting/category attributes in feed and visible text.",
      "risk": "Budget or delivery mismatch can make agent recommendations unusable.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "compare_similar_products",
      "prompt": "Compare similar products using factual attributes.",
      "recommendation": "Publish structured attributes/specs and genuine review/rating evidence where available.",
      "risk": "Agents may invent differentiators when comparable attributes are missing.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "check_return_eligibility",
      "prompt": "Check whether the chosen item is return-eligible.",
      "recommendation": "Expose return window, exceptions, hygiene/product exclusions, and policy URL near product data.",
      "risk": "Unsupported return claims create trust and support risk.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "estimate_landed_cost",
      "prompt": "Estimate landed cost including shipping threshold or delivery fee.",
      "recommendation": "Expose delivery fees, free-shipping thresholds, taxes/duties caveats, and target country.",
      "risk": "Unexpected total cost reduces conversion and increases wrong answers.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "find_replacement_or_compatible_product",
      "prompt": "Find a replacement or compatible alternative when an item is unavailable.",
      "recommendation": "Expose categories, attributes, compatibility/substitute tags, and stock state.",
      "risk": "Agents need alternatives instead of dead-end out-of-stock recommendations.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "avoid_restricted_or_unsafe_item",
      "prompt": "Avoid restricted, unsafe, or policy-sensitive recommendations.",
      "recommendation": "Classify restricted products and expose safety/compliance notes without overclaiming.",
      "risk": "Platforms may suppress or mis-handle prohibited/unsafe categories.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "handoff_to_cart_or_exact_product_url",
      "prompt": "Hand off to exact product, variant, or cart URL.",
      "recommendation": "Provide canonical variant URLs, add-to-cart/deep links where safe, or documented cart API handoff.",
      "risk": "Wrong URL or variant handoff creates wrong-product purchase risk.",
      "status": "pass"
    }
  ],
  "failed_tasks": [],
  "sampled_product_pages": 5,
  "task_results": {
    "answer_shipping_returns": true,
    "avoid_restricted_or_unsafe_item": true,
    "check_return_eligibility": true,
    "compare_alternatives": true,
    "compare_similar_products": true,
    "estimate_landed_cost": true,
    "filter_by_availability": true,
    "filter_by_price": true,
    "find_product_by_need": true,
    "find_replacement_or_compatible_product": true,
    "gift_under_budget_with_delivery_constraint": true,
    "handoff_to_cart_or_exact_product_url": true,
    "purchase_handoff": true,
    "select_exact_variant": true
  }
}
```

#### Layer 10: Agent Shopping Task Readiness evidence 1

```json
{
  "availability_hits": [
    "på lager",
    "utsolgt"
  ],
  "button_samples": [
    "✓ Bestillinger før kl. 12 sendes samme dag",
    "✓ Norges beste skjønnhetsbutikk på nett",
    "✓ Årets Nettbutikk 2026 og 2025",
    "Søk blant merker, kategorier og produkter",
    "✓ Bestillinger før kl. 12 sendes samme dag",
    "✓ Norges beste skjønnhetsbutikk på nett",
    "✓ Årets Nettbutikk 2026 og 2025",
    "Meld deg på"
  ],
  "buyer_agent_scenarios": [
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "find_product_by_need",
      "prompt": "Find a relevant product from buyer intent.",
      "recommendation": "Expose factual product descriptions, category terms, and use-case attributes in visible text and feeds.",
      "risk": "Wrong recommendations if product text/feed lacks intent terms.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "filter_by_price",
      "prompt": "Filter products by a buyer budget.",
      "recommendation": "Expose current price and currency in Product/Offer schema, feed rows, and visible product text.",
      "risk": "Agents may recommend unaffordable products if price is not machine-readable.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "filter_by_availability",
      "prompt": "Exclude unavailable or out-of-stock products.",
      "recommendation": "Expose availability in Offer schema/feed and keep it synchronized with product and cart state.",
      "risk": "Agents may send shoppers to dead ends if stock state is unclear.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "select_exact_variant",
      "prompt": "Select the exact shade, size, volume, or variant requested.",
      "recommendation": "Expose variant IDs, option labels, variant URLs, price, stock, and images.",
      "risk": "Wrong-product purchase risk if variant data is ambiguous.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "compare_alternatives",
      "prompt": "Compare relevant alternatives without inventing differentiators.",
      "recommendation": "Expose comparable attributes, reviews/ratings where genuine, and structured category/spec data.",
      "risk": "Agents may invent or omit differences when comparison attributes are weak.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "purchase_handoff",
      "prompt": "Hand the shopper to a reliable product/cart purchase path.",
      "recommendation": "Provide canonical product/variant URLs and, where safe, cart deep links or documented commerce APIs.",
      "risk": "Shopper may fail to complete purchase if product, variant, or cart handoff is unstable.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "answer_shipping_returns",
      "prompt": "Answer shipping and return confidence questions.",
      "recommendation": "Expose shipping, delivery, return, terms, and support policy URLs in visible text and structured data.",
      "risk": "Shipping or return uncertainty reduces buyer confidence and can produce unsupported agent claims.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "gift_under_budget_with_delivery_constraint",
      "prompt": "Find a gift under a buyer budget with delivery confidence.",
      "recommendation": "Expose price, availability, delivery estimates, and gifting/category attributes in feed and visible text.",
      "risk": "Budget or delivery mismatch can make agent recommendations unusable.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "compare_similar_products",
      "prompt": "Compare similar products using factual attributes.",
      "recommendation": "Publish structured attributes/specs and genuine review/rating evidence where available.",
      "risk": "Agents may invent differentiators when comparable attributes are missing.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "check_return_eligibility",
      "prompt": "Check whether the chosen item is return-eligible.",
      "recommendation": "Expose return window, exceptions, hygiene/product exclusions, and policy URL near product data.",
      "risk": "Unsupported return claims create trust and support risk.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "estimate_landed_cost",
      "prompt": "Estimate landed cost including shipping threshold or delivery fee.",
      "recommendation": "Expose delivery fees, free-shipping thresholds, taxes/duties caveats, and target country.",
      "risk": "Unexpected total cost reduces conversion and increases wrong answers.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "find_replacement_or_compatible_product",
      "prompt": "Find a replacement or compatible alternative when an item is unavailable.",
      "recommendation": "Expose categories, attributes, compatibility/substitute tags, and stock state.",
      "risk": "Agents need alternatives instead of dead-end out-of-stock recommendations.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "avoid_restricted_or_unsafe_item",
      "prompt": "Avoid restricted, unsafe, or policy-sensitive recommendations.",
      "recommendation": "Classify restricted products and expose safety/compliance notes without overclaiming.",
      "risk": "Platforms may suppress or mis-handle prohibited/unsafe categories.",
      "status": "pass"
    },
    {
      "evidence": {
        "availability_hits": [
          "på lager",
          "utsolgt"
        ],
        "price_hits_sample": [
          "299,-",
          "119 kr",
          "149 kr"
        ],
        "return_hits": [
          "retur"
        ],
        "sampled_product_pages": 5,
        "shipping_hits": [
          "frakt",
          "levering",
          "hentested"
        ],
        "task_result": true
      },
      "id": "handoff_to_cart_or_exact_product_url",
      "prompt": "Hand off to exact product, variant, or cart URL.",
      "recommendation": "Provide canonical variant URLs, add-to-cart/deep links where safe, or documented cart API handoff.",
      "risk": "Wrong URL or variant handoff creates wrong-product purchase risk.",
      "status": "pass"
    }
  ],
  "price_hits_sample": [
    "299,-",
    "119 kr",
    "149 kr",
    "189 kr",
    "239 kr",
    "299 kr",
    "135 kr",
    "169 kr"
  ],
  "return_hits": [
    "retur"
  ],
  "sampled_product_pages": 5,
  "shipping_hits": [
    "frakt",
    "levering",
    "hentested",
    "bring"
  ],
  "task_results": {
    "answer_shipping_returns": true,
    "avoid_restricted_or_unsafe_item": true,
    "check_return_eligibility": true,
    "compare_alternatives": true,
    "compare_similar_products": true,
    "estimate_landed_cost": true,
    "filter_by_availability": true,
    "filter_by_price": true,
    "find_product_by_need": true,
    "find_replacement_or_compatible_product": true,
    "gift_under_budget_with_delivery_constraint": true,
    "handoff_to_cart_or_exact_product_url": true,
    "purchase_handoff": true,
    "select_exact_variant": true
  }
}
```

#### Layer 11: Purchase Handoff Readiness metadata

```json
{
  "cart_buttons_detected": 56,
  "cart_links_detected": 6,
  "maturity_label": "cart/deep-link evidence",
  "maturity_level": 3,
  "mcp_manifest_detected": false,
  "mcp_manifest_summary": null,
  "product_links_detected": 3679,
  "sampled_product_pages": 5
}
```

#### Layer 11: Purchase Handoff Readiness evidence 1

```json
{
  "api_evidence": [],
  "cart_buttons": [
    "Bekreftet kjøper",
    "Bekreftet kjøper (vareprøve)",
    "Bekreftet kjøper",
    "Bekreftet kjøper",
    "Bekreftet kjøper",
    "Bekreftet kjøper",
    "Bekreftet kjøper",
    "Bekreftet kjøper"
  ],
  "cart_links": [
    "/cart",
    "/cart",
    "/cart",
    "/cart",
    "/cart",
    "/cart"
  ],
  "forms": [
    {
      "action": "",
      "method": ""
    },
    {
      "action": "",
      "method": ""
    },
    {
      "action": "",
      "method": ""
    },
    {
      "action": "",
      "method": ""
    },
    {
      "action": "",
      "method": ""
    },
    {
      "action": "",
      "method": ""
    }
  ],
  "has_availability": true,
  "has_price": true,
  "has_shipping_or_return": true,
  "maturity_level": 3,
  "mcp_manifest": null,
  "product_links": [
    "/products/medlemstilbud",
    "/products/bestselgere",
    "/products/nyheter",
    "/products/salg-og-tilbud/pakkepris",
    "/products/kundesenter/kundeklubb",
    "/products/tilbud",
    "/products/bestselgere",
    "/products/bestselgere"
  ],
  "sampled_product_pages": 5
}
```


## Limitations / What Was Not Tested

- Single approved URL only; no full-site crawl.
- Crawler registry entries may be pending source verification.
- No affiliate recommendations included by default.
- No live answer-engine visibility API checks were run.

## Affiliate Disclosure

No affiliate links are included. Affiliate output is disabled by default and requires explicit approval.
