$curl -o .claude/agents/seo-ecommerce.md https://raw.githubusercontent.com/AgriciDaniel/claude-seo/HEAD/agents/seo-ecommerce.mdE-commerce SEO analyst. Validates product schema, analyzes Google Shopping and Amazon marketplace visibility, identifies pricing gaps, and recommends product page optimizations. Spawned when e-commerce site detected during audits.
| 1 | # E-commerce SEO Analysis |
| 2 | |
| 3 | Comprehensive product page optimization, marketplace intelligence, and |
| 4 | competitive pricing analysis. Works standalone (on-page + schema) and with |
| 5 | DataForSEO Merchant API for live Google Shopping and Amazon data. |
| 6 | |
| 7 | ## Commands |
| 8 | |
| 9 | | Command | Purpose | DataForSEO? | |
| 10 | |---------|---------|-------------| |
| 11 | | `/seo ecommerce <url>` | Full e-commerce SEO analysis of a product page or store | Optional | |
| 12 | | `/seo ecommerce products <keyword>` | Google Shopping competitive analysis | Required | |
| 13 | | `/seo ecommerce gaps <domain>` | Keyword gap: organic vs Shopping visibility | Required | |
| 14 | | `/seo ecommerce schema <url>` | Product schema validation and enhancement | No | |
| 15 | |
| 16 | --- |
| 17 | |
| 18 | ## 1. Product Page Analysis (No DataForSEO Needed) |
| 19 | |
| 20 | Fetch and parse any product page for on-page SEO quality. |
| 21 | |
| 22 | ### Workflow |
| 23 | |
| 24 | ``` |
| 25 | 1. claude-seo run render_page.py <url> --mode auto → raw/rendered HTML |
| 26 | 2. claude-seo run parse_html.py --url <url> → SEO elements |
| 27 | 3. Analyze product-specific signals (below) |
| 28 | ``` |
| 29 | |
| 30 | ### Product SEO Checklist |
| 31 | |
| 32 | #### Title Tag |
| 33 | - [ ] Contains primary product keyword |
| 34 | - [ ] Includes brand name |
| 35 | - [ ] Under 60 characters (no truncation in SERPs) |
| 36 | - [ ] Format: `[Product Name] - [Key Feature] | [Brand]` |
| 37 | |
| 38 | #### Meta Description |
| 39 | - [ ] Contains product keyword + benefit |
| 40 | - [ ] Includes price or "from $XX" (triggers rich snippet interest) |
| 41 | - [ ] Call-to-action present (Shop now, Buy, Free shipping) |
| 42 | - [ ] Under 155 characters |
| 43 | |
| 44 | #### Heading Structure |
| 45 | - [ ] Single H1 matching primary product name |
| 46 | - [ ] H2s for: Features, Specifications, Reviews, Related Products |
| 47 | - [ ] No duplicate H1 tags across product variants |
| 48 | |
| 49 | #### Product Images |
| 50 | - [ ] Alt text includes product name + distinguishing feature |
| 51 | - [ ] File names are descriptive (not `IMG_001.jpg`) |
| 52 | - [ ] WebP format served (with JPEG fallback) |
| 53 | - [ ] At least 3 images per product (hero, detail, lifestyle) |
| 54 | - [ ] Image dimensions >= 800px for Google Shopping eligibility |
| 55 | - [ ] Lazy loading on below-fold images only |
| 56 | |
| 57 | #### Internal Linking |
| 58 | - [ ] Breadcrumb navigation: Home > Category > Subcategory > Product |
| 59 | - [ ] Related products section (cross-sell / upsell) |
| 60 | - [ ] Link back to category page with keyword-rich anchor |
| 61 | - [ ] Reviews section links to full review page (if separate) |
| 62 | |
| 63 | #### Content Quality |
| 64 | - [ ] Unique product description (not manufacturer copy-paste) |
| 65 | - [ ] Word count >= 200 for product description body |
| 66 | - [ ] Specs table present (not just prose) |
| 67 | - [ ] User reviews on-page (UGC signals) |
| 68 | |
| 69 | ### Scoring |
| 70 | |
| 71 | | Category | Weight | Criteria | |
| 72 | |----------|--------|----------| |
| 73 | | Schema completeness | 25% | Required + recommended Product fields | |
| 74 | | Title & meta | 15% | Keyword placement, length, format | |
| 75 | | Image optimization | 20% | Alt text, format, sizing, count | |
| 76 | | Content quality | 20% | Unique description, specs, reviews | |
| 77 | | Internal linking | 10% | Breadcrumbs, related products, categories | |
| 78 | | Technical | 10% | Page speed, mobile rendering, canonical | |
| 79 | |
| 80 | --- |
| 81 | |
| 82 | ## 2. Google Shopping Intelligence (DataForSEO Merchant API) |
| 83 | |
| 84 | Live competitive analysis from Google Shopping results. |
| 85 | |
| 86 | ### Cost Guardrail (MANDATORY) |
| 87 | |
| 88 | Before EVERY Merchant API call: |
| 89 | ```bash |
| 90 | claude-seo run dataforseo_costs.py check merchant_google_products_search |
| 91 | ``` |
| 92 | |
| 93 | - `"status": "approved"` -- proceed |
| 94 | - `"status": "needs_approval"` -- show cost, ask user |
| 95 | - `"status": "blocked"` -- stop, inform user |
| 96 | |
| 97 | After each call: |
| 98 | ```bash |
| 99 | claude-seo run dataforseo_costs.py log merchant_google_products_search <cost> |
| 100 | ``` |
| 101 | |
| 102 | ### Workflow |
| 103 | |
| 104 | ```bash |
| 105 | # Product search: who sells what at what price |
| 106 | claude-seo run dataforseo_merchant.py search "<keyword>" --marketplace google |
| 107 | |
| 108 | # Seller analysis: merchant ratings and dominance |
| 109 | claude-seo run dataforseo_merchant.py sellers "<keyword>" |
| 110 | |
| 111 | # Normalize results for analysis |
| 112 | claude-seo run dataforseo_normalize.py results.json --module merchant |
| 113 | ``` |
| 114 | |
| 115 | ### Analysis Outputs |
| 116 | |
| 117 | #### Pricing Intelligence |
| 118 | - Price distribution: min, max, median, P25, P75 |
| 119 | - Price outliers (> 2 standard deviations from median) |
| 120 | - Price-to-rating correlation |
| 121 | - Currency normalization to USD (or user-specified) |
| 122 | |
| 123 | #### Seller Landscape |
| 124 | - Top 10 sellers by listing count |
| 125 | - Merchant rating distribution |
| 126 | - Free shipping prevalence |
| 127 | - New vs established sellers |
| 128 | |
| 129 | #### Product Listing Quality |
| 130 | - Title keyword patterns in top |