pdp-builder — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited pdp-builder (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
You generate a complete, conversion-optimized PDP. The 2026 benchmark is clear: average sites convert at 1.5-3%, top performers at 4-8% — a 2-3× gap explained by measurable elements, not magic. Your job is to ship those elements.
The single biggest gap-closer: image quality + social proof + page speed. Walmart found each 1-second-faster page delivered +2% conversion. Page loading in 2.4s converts at 1.9%; 5.7s converts at 0.6%.
============================================================ === PRE-FLIGHT === ============================================================
Verify before building:
Recovery:
============================================================ === PHASE 1: VISUAL HIERARCHY (F-PATTERN) === ============================================================
Eye-tracking shows users scan PDPs in F-pattern. The viewport-above-fold zones (in priority order):
Generate the layout as semantic HTML with proper landmarks (<main>, <section>, <aside>). Mobile-first CSS (default styles for ≤768px, media queries for tablet/desktop). Touch targets ≥44px.
VALIDATION: Lighthouse mobile Best Practices ≥ 90. CLS < 0.1 (every image has explicit width/height). LCP image preloaded.
============================================================ === PHASE 2: IMAGE PIPELINE === ============================================================
93% of consumers cite visual appearance as the top purchase factor. The image system MUST:
<picture><source type="image/avif">....<head>: <link rel="preload" as="image" href="..." imagesrcset="..." imagesizes="...">.<video autoplay muted loop playsinline poster> on desktop, click-to-play on mobile (battery).VALIDATION: Hero image LCP < 2.5s on Slow 4G. Image markup passes Lighthouse Image best practices.
============================================================ === PHASE 3: SOCIAL PROOF BLOCK === ============================================================
Products with 5+ reviews convert 270% better. Build the proof block as:
nofollow outbound links.VALIDATION: Above-fold area on mobile shows at least one social proof element. AggregateRating schema validates.
============================================================ === PHASE 4: CTA & VARIANT SELECTOR === ============================================================
Critical CTAs:
Variant selectors:
aria-label, current-state styling, "out of stock" greyed not hidden.Inventory urgency (only if accurate):
VALIDATION: CTA is keyboard-focusable, has visible focus ring, aria-disabled when out-of-stock.
============================================================ === PHASE 5: SCHEMA.ORG MARKUP === ============================================================
Generate JSON-LD for the product:
{
"@context": "https://schema.org",
"@type": "Product",
"name": "...",
"image": ["..."],
"description": "...",
"sku": "...",
"brand": { "@type": "Brand", "name": "..." },
"offers": {
"@type": "Offer",
"url": "...",
"priceCurrency": "USD",
"price": 49.99,
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"shippingDetails": { "@type": "OfferShippingDetails", ... },
"hasMerchantReturnPolicy": { "@type": "MerchantReturnPolicy", ... }
},
"aggregateRating": { "@type": "AggregateRating", "ratingValue": 4.7, "reviewCount": 128 },
"review": [ ... top 3 reviews ... ]
}Include shippingDetails and hasMerchantReturnPolicy — these unlock Google Shopping rich results in 2026.
VALIDATION: Passes Google Rich Results Test for Product. AggregateRating has a real value (not 0/0).
============================================================ === PHASE 6: CRO EXPERIMENTATION HARNESS === ============================================================
Top performers run disciplined experiments and read the data honestly. Generate:
pdp.experiments.json) compatible with Optimizely, VWO, Statsig, GrowthBook, or LaunchDarkly.pdp_view, pdp_image_zoom, pdp_variant_select, pdp_add_to_cart, pdp_buy_now, pdp_exit.VALIDATION: Sample-size calculator does the math (not just emits a TODO). Experiment config maps to user's chosen platform.
============================================================ === PHASE 7: OUTPUT PACKAGE === ============================================================
pdp/
├── README.md # Where to drop files in each platform
├── components/
│ ├── ProductHero.{tsx|liquid|vue}
│ ├── ProductGallery.{tsx|liquid|vue}
│ ├── ProductVariants.{tsx|liquid|vue}
│ ├── ProductSocialProof.{tsx|liquid|vue}
│ ├── ProductSchema.{tsx|liquid|vue}
│ └── ProductCTA.{tsx|liquid|vue}
├── styles/
│ └── pdp.css # Mobile-first responsive
├── schema/
│ └── product-jsonld.example.json
├── experiments/
│ └── pdp.experiments.json
├── tracking/
│ └── events.spec.md
└── perf/
└── lighthouse-budget.json # CI gate: LCP<2.5s, INP<200ms, CLS<0.1============================================================ === SELF-REVIEW === ============================================================
Score 1–5:
Most common gap: forgetting LCP image preload → hero takes 4s on Slow 4G → conversion craters. Verify the <link rel="preload"> is in the head, not just <img loading="eager">.
============================================================ === LEARNINGS CAPTURE === ============================================================
Append to ~/.claude/skills/pdp-builder/LEARNINGS.md:
============================================================ === STRICT RULES === ============================================================
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.