Skip to content
cccskills
FreePublished on GitHub

pdp-builder

Generate a production-grade Product Detail Page (PDP) optimized for the 2026 conversion benchmarks — 4-8% target vs 1.5-3% average. Triggers: "product page", "PDP", "product detail page", "Shopify product page", "ecommerce conversion".

The English summary is being prepared. Showing the original description.

Works withShopify

Run score Not tested

See how to install

Files included (1)

  • SKILL.md10.2 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Product Detail Page (PDP) Generator

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:

  • Platform identified. Shopify (Liquid / Hydrogen), Next.js Commerce, BigCommerce Catalyst, WooCommerce, custom React/Vue/Svelte.
  • Product data source. Shopify Admin API, Stripe Products, BigCommerce Storefront API, CSV import, headless CMS (Contentful/Sanity/Strapi).
  • Image assets. Minimum: 1 hero + 3 alt angles + 1 lifestyle. Ideal: + product video (autoplay muted on desktop, click-to-play mobile).
  • Reviews data. Yotpo, Judge.me, Loox, Stamped, Trustpilot, or first-party. Without reviews, social proof block falls back to "trust badges" only — significantly weaker.
  • Brand tokens. Colors, fonts, button radius. Without these, generated CSS uses neutral defaults.

Recovery:

  • If image assets are weak (single product shot only), output the PDP with a "MISSING:" placeholder per slot and add a TODO to capture alt angles, lifestyle, and video — flag the conversion impact clearly.
  • If platform is unknown, default to Next.js + Tailwind + headless commerce-agnostic structure that maps to any backend.

============================================================ === PHASE 1: VISUAL HIERARCHY (F-PATTERN) ===

Eye-tracking shows users scan PDPs in F-pattern. The viewport-above-fold zones (in priority order):

  1. Top-left: Hero image (largest, sharpest, fills 50%+ of mobile width).
  2. Top-right: Title + price + reviews snippet (X stars, N reviews).
  3. Second row left: Variant selectors (size, color) + add-to-cart CTA.
  4. Below fold: Detailed description, full reviews, related products, FAQ.

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:

  • Multiple angles: hero + 3-4 alternate angles + lifestyle context.
  • AVIF first, WebP fallback, JPG legacy with <picture><source type="image/avif">....
  • Responsive srcset at 320w/640w/1024w/1600w/2560w.
  • Explicit width/height to reserve space (CLS prevention).
  • Hero image preloaded in <head>: <link rel="preload" as="image" href="..." imagesrcset="..." imagesizes="...">.
  • Zoom on hover/tap (lightbox or in-place pan).
  • Video as <video autoplay muted loop playsinline poster> on desktop, click-to-play on mobile (battery).
  • CDN with image transformation (Cloudinary, imgix, Shopify CDN, Vercel Image Optimization).

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:

  1. Aggregate rating (X.X stars, Y reviews) — top-right of hero, schema.org AggregateRating.
  2. Review excerpts — 3 verified reviews above the fold (rotate top-rated).
  3. Photo reviews — UGC from buyers; massively trust-boosting.
  4. Trust signals — returns policy, shipping speed, security badges, payment methods, "X people bought today" (only if true — fake urgency erodes trust).
  5. Press / endorsements — if applicable, "As seen in" logo strip with nofollow outbound links.
  6. Q&A section — buyer questions + answers (or store-curated FAQ).

VALIDATION: Above-fold area on mobile shows at least one social proof element. AggregateRating schema validates.

============================================================ === PHASE 4: CTA & VARIANT SELECTOR ===

Critical CTAs:

  • Primary: "Add to cart" — high contrast, ≥48px tall, full-width on mobile, sticky on scroll (mobile bottom bar).
  • Secondary: "Buy now" → checkout (Shop Pay / Apple Pay / Google Pay express).
  • Tertiary: Save / Wishlist (heart icon).

Variant selectors:

  • Color: swatches with aria-label, current-state styling, "out of stock" greyed not hidden.
  • Size: pills with size guide modal link.
  • Quantity: stepper (- / number / +), default 1.

Inventory urgency (only if accurate):

  • "Only N left" message at quantities ≤ 5.
  • "Selling fast" pill if velocity > X/day.

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:

  • Variant config file (pdp.experiments.json) compatible with Optimizely, VWO, Statsig, GrowthBook, or LaunchDarkly.
  • At minimum, three experiments scaffolded:
    1. Hero image: lifestyle vs studio
    2. CTA copy: "Add to cart" vs "Add to bag" vs "Buy now"
    3. Social proof position: above-fold vs below-fold
  • Sample size calculator stub: takes baseline CR + MDE + α=0.05 + power=0.8, returns required N per variant. Refuse to call experiments early.
  • Event tracking spec: 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:

  • Complete: All 7 phases delivered? Schema validates? Mobile-first?
  • Robust: Handles missing images / reviews gracefully? Sticky CTA on mobile?
  • Clean: No inline styles, no hardcoded colors outside tokens, no console.log?
  • Conversion-credible: Would a CRO consultant recognize this as 2026-current? F-pattern hierarchy + social proof above fold + schema + perf budget all present?

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:

<YYYY-MM-DD> — <platform, vertical>

  • What worked: <pattern that produced clean output>
  • What was awkward: <retry/manual fix needed>
  • Suggested patch: <concrete improvement>
  • Verdict: [Smooth / Minor friction / Major friction]

============================================================ === STRICT RULES ===

  • Never skip image preload. LCP > 2.5s tanks conversion regardless of other quality.
  • Never fabricate review counts. AggregateRating must be real or absent.
  • Never use fake urgency ("only 2 left" when there are 50). FTC enforces this and shoppers detect it.
  • Never block the CTA with a full-screen popup. Exit intent OK, blocking on load not.
  • Mobile-first or fail. 73% of traffic, 58% of purchases.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Run a full Section 508 + WCAG 2.2 Level AA accessibility audit on a federal / .gov / public-sector website or ICT product. Triggers: "Section 508", "508 audit", "WCAG", "VPAT", "ACR".

The English summary is being prepared. Showing the original description.

tinh2/skills-hub-registry20Updated Sep 5, 2026

Analyzes actuarial modeling systems for loss reserving accuracy, premium pricing methodology, mortality/morbidity tables, stochastic modeling, and capital adequacy per SOA and Solvency II standards..

The English summary is being prepared. Showing the original description.

tinh2/skills-hub-registry20Updated Sep 5, 2026

Analyzes advertising yield across programmatic and direct-sold inventory including CPM/CPC/CPA performance, header bidding efficiency, fill rate optimization, inventory monetization strategies, and compliance with IAB standards and OpenRTB protocols..

The English summary is being prepared. Showing the original description.

tinh2/skills-hub-registry20Updated Sep 5, 2026

adr

Free

Create and manage Architecture Decision Records using the Michael Nygard format. Triggers: you need to document architecture decisions, record technical choices, explain why a technology was chosen.

The English summary is being prepared. Showing the original description.

tinh2/skills-hub-registry20Updated Sep 5, 2026

Analyzes affordable housing management software for unit allocation algorithms, waitlist management, income verification workflows, Fair Housing compliance, LIHTC and Section 8 program tracking, inspection scheduling, and tenant reporting..

The English summary is being prepared. Showing the original description.

tinh2/skills-hub-registry20Updated Sep 5, 2026

Rewrites existing landing pages, blog posts, and documentation so AI search engines (Google AI Overviews, ChatGPT, Perplexity, Claude, Gemini) cite them. Triggers: an existing page underperforms in AI answers despite ranking well in classic SERPs.

The English summary is being prepared. Showing the original description.

tinh2/skills-hub-registry20Updated Sep 5, 2026

See all skills by tinh2

Report a problem with this skill