Help us improve
Share bugs, ideas, or general feedback.
From claude-seo
Analyzes e-commerce SEO: product page optimization, Google Shopping visibility, Amazon marketplace intelligence, schema validation, and competitor pricing. Use for product SEO audits.
npx claudepluginhub agricidaniel/claude-seo --plugin claude-seoHow this skill is triggered — by the user, by Claude, or both
Slash command
/claude-seo:seo-ecommerce <url or keyword><url or keyword>The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Comprehensive product page optimization, marketplace intelligence, and
Analyzes e-commerce product pages for on-page SEO including titles, meta, headings, images, and schema validation. Provides Google Shopping visibility, Amazon intelligence, competitor pricing, and keyword gaps via DataForSEO Merchant API.
Routes natural language e-commerce questions to the right Apify Actor for scraping pricing, reviews, bestsellers, seller discovery, tech stack detection, and more across 30+ platforms.
Extracts product data, prices, reviews, and seller info from e-commerce platforms via Apify's scraping tool. Use for price monitoring, competitor analysis, MAP enforcement, or review sentiment analysis.
Share bugs, ideas, or general feedback.
Comprehensive product page optimization, marketplace intelligence, and competitive pricing analysis. Works standalone (on-page + schema) and with DataForSEO Merchant API for live Google Shopping and Amazon data.
| Command | Purpose | DataForSEO? |
|---|---|---|
/seo ecommerce <url> | Full e-commerce SEO analysis of a product page or store | Optional |
/seo ecommerce products <keyword> | Google Shopping competitive analysis | Required |
/seo ecommerce gaps <domain> | Keyword gap: organic vs Shopping visibility | Required |
/seo ecommerce schema <url> | Product schema validation and enhancement | No |
Fetch and parse any product page for on-page SEO quality.
1. python scripts/fetch_page.py <url> → raw HTML
2. python scripts/parse_html.py --url <url> → SEO elements
3. Analyze product-specific signals (below)
[Product Name] - [Key Feature] | [Brand]IMG_001.jpg)| Category | Weight | Criteria |
|---|---|---|
| Schema completeness | 25% | Required + recommended Product fields |
| Title & meta | 15% | Keyword placement, length, format |
| Image optimization | 20% | Alt text, format, sizing, count |
| Content quality | 20% | Unique description, specs, reviews |
| Internal linking | 10% | Breadcrumbs, related products, categories |
| Technical | 10% | Page speed, mobile rendering, canonical |
Live competitive analysis from Google Shopping results.
Before EVERY Merchant API call:
python scripts/dataforseo_costs.py check merchant_google_products_search
"status": "approved" -- proceed"status": "needs_approval" -- show cost, ask user"status": "blocked" -- stop, inform userAfter each call:
python scripts/dataforseo_costs.py log merchant_google_products_search <cost>
# Product search: who sells what at what price
python scripts/dataforseo_merchant.py search "<keyword>" --marketplace google
# Seller analysis: merchant ratings and dominance
python scripts/dataforseo_merchant.py sellers "<keyword>"
# Normalize results for analysis
python scripts/dataforseo_normalize.py results.json --module merchant
Load references/marketplace-endpoints.md for full API parameter details.
Cross-marketplace intelligence comparing Google Shopping and Amazon.
python scripts/dataforseo_costs.py check merchant_amazon_products_search
Amazon endpoints are in the warn_endpoints set -- always requires user approval.
# Amazon product search
python scripts/dataforseo_merchant.py search "<keyword>" --marketplace amazon
# Cross-marketplace comparison
python scripts/dataforseo_merchant.py compare "<keyword>"
| Metric | Google Shopping | Amazon |
|---|---|---|
| Avg price | $ | $ |
| Median rating | X.X | X.X |
| Avg review count | N | N |
| Top seller share | % | % |
| Free shipping % | % | % |
Identify mismatches between organic and Shopping visibility.
dataforseo_labs_google_ranked_keywords for domainmerchant_google_products_search for top organic keywords| Gap Type | Meaning | Action |
|---|---|---|
| Organic Only | Ranks organically but no Shopping ads | Create Google Merchant Center feed, bid on these keywords |
| Shopping Only | Shopping visibility but weak/no organic | Create content (buying guides, comparison pages) for these keywords |
| Both Present | Visible in both channels | Optimize: ensure price consistency, enhance schema |
| Neither | No visibility in either | Low priority unless high volume |
## Keyword Gap Analysis: example.com
### Opportunities: Organic → Shopping (12 keywords)
| Keyword | Organic Pos | Volume | CPC | Recommended Action |
|---------|------------|--------|-----|-------------------|
### Opportunities: Shopping → Organic (8 keywords)
| Keyword | Shopping Rank | Volume | CPC | Content Type Needed |
|---------|-------------|--------|-----|-------------------|
Validate and generate Product schema following Google's current requirements.
{
"@context": "https://schema.org",
"@type": "Product",
"name": "",
"image": [""],
"description": "",
"brand": { "@type": "Brand", "name": "" },
"offers": {
"@type": "Offer",
"url": "",
"priceCurrency": "USD",
"price": "0.00",
"availability": "https://schema.org/InStock",
"seller": { "@type": "Organization", "name": "" }
}
}
sku -- product identifiergtin13 / gtin14 / mpn -- global trade identifiersaggregateRating -- star rating + review countreview -- individual reviews (minimum 1)color, material, size -- variant attributesshippingDetails -- ShippingDetails with rate and delivery timehasMerchantReturnPolicy -- MerchantReturnPolicy with type and daysprice must be a number string, not "$29.99" (no currency symbol)availability must use full Schema.org URL enumimage should be array with >= 1 high-res image URLpriceCurrency must be ISO 4217 (USD, EUR, GBP)brand.name must not be empty or "N/A"priceValidUntil must be ISO 8601aggregateRating present: ratingValue and reviewCount required| Completeness | Score |
|---|---|
| All required fields | 50/100 |
| + aggregateRating | 65/100 |
| + sku/gtin/mpn | 75/100 |
| + shippingDetails | 85/100 |
| + merchantReturnPolicy | 90/100 |
| + reviews (3+) | 100/100 |
| Skill | Integration Point |
|---|---|
| seo-schema | Delegates Product schema generation; reuses validation logic |
| seo-images | Product image audit (alt text, format, dimensions) — plus DigitalSourceType: TrainedAlgorithmicMedia IPTC label for AI-generated product images (Merchant Center requirement) |
| seo-content | Product description E-E-A-T and uniqueness analysis |
| seo-dataforseo | Organic keyword rankings for gap analysis |
| seo-technical | Core Web Vitals for product pages (LCP on hero image) |
| seo-google | Google Merchant Center feed validation via GSC |
Google-led standard (co-developed with Shopify, Etsy, Walmart, Wayfair, Visa, Mastercard, etc.) for letting AI agents discover, negotiate, and transact with merchants without one-off integrations. Already powers direct buying from AI Mode and Gemini.
Merchants already on Google Merchant Center with clean Product schema can
declare a UCP profile at /.well-known/ucp listing capabilities
(dev.ucp.shopping.checkout, .fulfillment, .discount). See
references/ucp-universal-commerce-protocol.md for audit criteria,
capability examples, and the relationship to AP2 (Agent Payments Protocol).
# Discover and validate the UCP profile
python scripts/ucp_check.py https://store.example.com --json
# With endpoint reachability probes (HEAD each declared capability)
python scripts/ucp_check.py https://store.example.com --probe-endpoints --json
The script returns: profile presence, version, declared capabilities,
structural issues (missing fields, unknown capability IDs), and (with
--probe-endpoints) per-endpoint reachability. SSRF-blocked endpoints are
reported explicitly. Missing profile is reported as opportunity, not failure
— UCP adoption is early.
| Error | Cause | Response |
|---|---|---|
| No Product schema found | Page lacks JSON-LD | Analyze page content, generate recommended schema |
| DataForSEO credentials missing | Env vars not set | Run analysis without marketplace data, note limitation |
| Cost check blocked | Daily budget exceeded | Inform user, offer free-only analysis |
| Empty Shopping results | No products for keyword | Suggest broader keyword, check location settings |
| Amazon API timeout | Network/rate limit | Retry with backoff, fall back to Google-only |
| Invalid URL | Malformed input | Validate via google_auth.validate_url(), show error |
| Non-product page | URL is category/homepage | Detect page type, suggest /seo ecommerce schema instead |
## E-commerce SEO Report: [URL or Keyword]
### Overall Score: XX/100
### Product Page SEO
- Schema Completeness: XX/100
- Title & Meta: XX/100
- Image Optimization: XX/100
- Content Quality: XX/100
- Internal Linking: XX/100
### Marketplace Intelligence (if DataForSEO available)
- Google Shopping Listings: N products found
- Price Range: $XX - $XX (median: $XX)
- Top Seller: [name] (XX% market share)
- Amazon Comparison: [available/not checked]
### Top Recommendations
1. [Critical] ...
2. [High] ...
3. [Medium] ...
Generate a PDF report? Use `/seo google report`