Contents
- The 5 unique e-commerce SEO challenges
- Catalog crawler: 500k SKUs without crashing the server
- Automatic Product schema and its 12 subtypes
- Synchronised Google Merchant Center feed
- Filters and facets: SEO-friendly without duplication
- Category page strategy
- Gap against marketplaces
- Case study: outdoor store with 3,400 SKUs
- E-commerce SEO checklist
- FAQs
The 5 unique e-commerce SEO challenges
Marketplace dominance
Amazon, Mercado Libre, Falabella and similar occupy 60%+ of top 10 for transactional queries. Own-site strategy requires different rules.
Large dynamic catalogue
Stock changes daily. Prices vary. New SKUs added weekly. SEO must absorb that velocity without degrading.
Filters creating cannibalisation
Every filter (size, colour, brand, price) is a potential URL. Most ecommerce generates thousands of duplicate URLs.
GMC feed vs SEO misaligned
The Ads feed sends data different from the page schema, confusing the ranker and losing rich results.
Privacy law and consent mode
Conversion tracking and cross-device broken for 60%+ users who reject consent — SEO attribution underestimated.
Catalog crawler: 500k SKUs without crashing the server
Classic crawlers (Screaming Frog, Sitebulb) request all URLs at the same speed. In an ecommerce with 30,000 SKUs that can bring down the server. Semalt implements adaptive rate limiting: monitors your site TTFB in real time and adjusts speed. If it detects 429 or 503, automatic exponential backoff.
Catalog crawler differences
Beyond adaptive rate, Semalt Catalog Crawler understands ecommerce has categories, subcategories, product pages, applied filters and variants. Classifies each URL in its category and emits segmented reports instead of a flat list of 30,000 URLs.
Discontinued SKU detection
When a product goes permanently out of stock, the crawler detects the pattern (redirect to parent category, «sold out» H1 response, «not available» text) and proposes action: 301 to similar product, keep the URL with «coming soon» banner, or remove from sitemap. Badly managed discontinued products typically represent 8-15% of lost organic traffic in large stores.
Automatic Product schema and its 12 subtypes
Google in 2026 supports 12 Product schema subtypes with different rich results:
| Subtype | Use | Rich result |
|---|---|---|
| Product | Generic base | Star + price + stock |
| ProductGroup | Product with variants (size, colour) | Variant selector in SERP |
| ProductModel | Specific model within family | Model filters |
| SomeProducts | Category with multiple items | Grid preview |
| Vehicle | Cars, motorcycles | Highlighted specs |
| Book | Books | ISBN, author, series |
| Software | Apps, SaaS | Technical requirements, rating |
| Drug | Pharmacy | Dosage, active ingredients |
| Food | Food | Nutrition, allergens |
| MedicalDevice | Medical equipment | Certifications |
| Furniture (2026) | Furniture | Dimensions, material |
| Cosmetic (2026) | Cosmetics | Ingredients, skin type |
Semalt E-commerce Suite auto-detects the best subtype per SKU based on category and attributes, and generates valid JSON-LD. If your Vtex/Shopify already emits basic schema, Semalt enriches it with missing fields without duplicating.
Ingredients of a winning Product schema
Minimum fields + boosters (for fashion store)
- name, description, image (minimum 3 images at 1200px+)
- sku, mpn, gtin (for Google Shopping eligibility)
- brand.name (mandatory 2026)
- offers.price, priceCurrency, availability, priceValidUntil
- offers.itemCondition (NewCondition, UsedCondition, RefurbishedCondition)
- offers.shippingDetails with local + international shipping
- offers.hasMerchantReturnPolicy with return days + cost
- aggregateRating (minimum 5 real reviews)
- review (2-5 reviews embedded in schema)
- size, colour, material (for fashion / furniture)
- audience.suggestedGender, suggestedAge (optional)
Synchronised Google Merchant Center feed
The Google Merchant Center (GMC) feed powers Google Shopping, Ads and Free Listings. Semalt generates and syncs the feed in 3 formats:
Traditional XML feed
Refresh every 6 hours, 500k products supported. RSS 2.0 structure with official GMC fields.
Content API v2.1
Instant push per SKU when price or stock changes. Ideal for fashion stores with fast turnover.
Structured data feed
Feed inferred from Product schema on your site, not separate. Requires perfect schema but eliminates duplicity.
Schema vs feed misalignment = ranking penalty
If price on the feed and schema differ, Google detects inconsistency and suspends the rich result. Semalt reconciles both automatically and alerts on divergence — problem #1 in our audits.
Filters and facets: SEO-friendly without duplication
The minefield. A typical ecommerce has 8-15 filters per category (size, colour, brand, price, material, shipping, promo). Combinations = millions. The Semalt rule is simple: only 3 filter combinations should be indexable.
Indexable (create SEO landing)
- Category + brand («nike sneakers»)
- Category + type («running sneakers»)
- Category + gender («women sneakers»)
NOT indexable (canonical to parent)
- Price filters («sneakers $30-60»)
- Multiple combinations (brand + colour + size)
- Sorting (?sort=price-asc)
- Views (?view=list) or paginations with different view
Semalt automatically detects which filter URLs Google is indexing and executes appropriate canonical/noindex via the AutoSEO module. Reduces on average 68% of indexed URLs in badly configured stores — concentrates authority on URLs that matter.
Category page strategy
Category pages are what ranks for head queries. They require more work than product cards:
Header with unique natural H1
«Nike sneakers» not «Nike sneakers | YourStore». Semalt AI suggests optimised H1 per category.
Introduction 150-250 words SEO
Category context with secondary keywords. Placed before the product grid so Google reads it.
Product grid with ItemList schema
ItemList schema pointing to the first 24 products. Increases clicks from Google Shopping.
Bottom content (category footer)
500-800 words covering: why buy locally, buying guide, brand comparison, FAQ. Semalt AI generates adapted drafts.
Internal links to subcategories
Minimum 5 internal links with descriptive anchor. Helps distribute link juice.
Structured FAQ with FAQPage schema
4-8 questions covering: shipping, return, sizes, warranty. Frequently wins rich result.
Gap against marketplaces
First time we ran Backlink Gap against a giant marketplace we laughed: we thought it was a lost fight. But filtering by «specific topic + long-tail», 340 keywords appeared where the marketplace was top 10 with generic listings. We with rich content pages beat them in 5 months.
SEO Manager, tech accessories ecommerceThe strategy against giants is not competing on head keywords («headphones») but on specific long-tail («wireless noise-cancelling headphones under $100 store»). Semalt filters the keyword gap by query complexity and value:
Head keywords
- High volume (5k-50k/month)
- Dominated by marketplaces
- Very high competition
- Low conversion
Generally avoid
Specific long-tail
- Volume 100-800/month
- Marketplaces with weak listing
- Medium competition
- Conversion 3-5x head
Semalt sweet spot
Ultra long-tail
- Volume 10-80/month
- Little competition
- Very high conversion
- Requires scale
Complementary
Case study: outdoor store with 3,400 SKUs
Vtex client, outdoor and camping store. Had 3,400 SKUs but only 2,100 were indexed on Google. Organic traffic stuck at 18,700 sessions/month for 8 consecutive months.
Catalog crawl + gap identification
1,300 SKUs not indexed due to orphan (no internal links), 800 with broken schema, 200 with mispointed canonical.
Fix schema + canonicals via AutoSEO
Complete Product schema (12 minimum fields) injected on 3,400 SKUs. Canonicals corrected. GMC feed reconciled.
Categories rewritten
18 main categories rewritten with 6-point formula (H1, intro, grid, footer content, internal links, FAQ).
Long-tail attack
140 specific long-tail landings identified in Gap analysis, published using AI templates.
90-day result:
E-commerce SEO checklist
Complete initial audit (one-off)
- Full catalog crawl and URL classification (SKUs, categories, filters, other)
- Product schema audit across 100% of SKUs
- Schema vs GMC feed reconciliation
- Detection of mispointed canonicals
- Identification of orphan SKUs (no internal links)
- Indexable vs blocked filter audit
- Detection of discontinued SKUs with traffic or backlinks
- Category pagination analysis
- Keyword gap vs marketplaces + top 3 sector competitors
- Core Web Vitals baseline per template
Monthly routine (3-4 hours)
- Review new SKUs and validate schema
- Audit permanent zero-stock SKUs and decide 301 / keep / delete
- Update top 20 category landings (freshness signal)
- Report rich results won/lost vs previous month
- Ship 30-50 new long-tail landings from Gap analysis
- Review indexing speed of new SKUs
- Validate GMC feed against rejects / warnings in Merchant Center
- Update seasonal categories (Black Friday, Christmas, Mother's Day)
More in this series: Semalt Analytics: the SEO data GA4 hides, Semalt AutoSEO: optimisation that runs 24/7, Competitor analysis without leaving a trace.
FAQs
Does it support my platform (Vtex, Shopify, WooCommerce, Prestashop, Magento)?
Yes, native integrations for the 5 major platforms. Installation 5-20 minutes via official plugin or app. Custom platforms connect via API or webhook.
Can I keep my current SEO stack (Yoast, RankMath, native SEO)?
Yes. Semalt coexists with any plugin. Detects schema duplication and respects the most recent source on conflict.
How does it compete with marketplaces on brand searches?
It does not. Google prioritises marketplace listings for brand queries because the user expects to buy. Strategy: dominate long-tail where the marketplace listing is weak, and compete on categories where your own brand has differentiated expertise.
How many products does it support?
500,000 SKUs on the Pro plan. Unlimited on Enterprise. One of our clients handles 2.3M SKUs (auto parts aggregator) without issue.
Compatible with privacy laws and consent mode?
Yes. Semalt Analytics log-based tracking does not depend on consent. Pseudonymised cross-device strictly complies with GDPR and similar frameworks.
A well-optimised ecommerce can compete with marketplaces — but requires discipline in catalog, schema, feed, canonicals and category content. Semalt centralises all five fronts.
Audit your ecommerce with Semalt today
Setup: 30 minutes. Complete catalog crawl: 2-6 hours depending on size. First actionable insights: same day.
Sign in to Semalt E-commerce →