Zac's on-site SEO methodology from SEO实战密码 — optimize every page on your e-commerce store for maximum search visibility and conversion. From category landing pages to product variants, structured data to internal linking.
Category pages are often the highest-value pages in an e-commerce store. They attract commercial intent traffic, pass link equity to product pages, and establish topical relevance for entire product segments. Yet most stores treat them as simple product lists — a massive missed opportunity.
Zac emphasizes that category pages should be treated as landing pages, not just indexes of products. A well-optimized category page can rank for dozens or even hundreds of commercial keywords. Think of each category page as a storefront within your store — it needs to welcome visitors, establish relevance, and guide them toward a purchase decision.
The difference between a category page that ranks and one that doesn't comes down to five key elements. Use the checklist below to audit every category on your site.
Five essential elements every category landing page must include
| Element | Purpose | Best Practice | Common Mistake |
|---|---|---|---|
| Hero Image | Visual anchor that sets category context | High-quality, original lifestyle image showing products in use; optimised with descriptive alt text | Using generic stock photos or no hero image at all |
| Tagline / H1 | Primary keyword signal and user orientation | Unique H1 containing primary keyword; clearly describes the category value proposition | Auto-generated H1s like "Category — Products" or keyword stuffing |
| Category Description | Relevance signal for search engines; buying guidance for users | 200–400 words of unique content; answers common questions; highlights subcategories | Thin or duplicate descriptions copied from supplier feeds |
| Navigation & Filters | Help users find the right product quickly | Clear faceted navigation with well-labelled filters; sort options; mobile-friendly touch targets | Overwhelming filter options; no "clear all" button; broken filter combinations |
| Breadcrumbs | User orientation and internal link equity distribution | Visible breadcrumb trail with structured data (BreadcrumbList schema); clickable links | No breadcrumbs, or breadcrumbs without schema markup |
Category descriptions are one of the most neglected on-site SEO elements. Many stores either omit them entirely or copy generic text from suppliers. Here is what Zac recommends you include — and what you must avoid:
| Do Include | Do NOT Include | Why |
|---|---|---|
| Primary and secondary keywords naturally integrated | Keyword stuffing or forced repetition | Natural language signals relevance; stuffing triggers Panda penalties |
| Buying guidance and product selection tips | Generic fluff or filler text | Shoppers want help deciding; unique guidance improves dwell time and conversion |
| Links to relevant subcategories | Links to unrelated products or categories | Internal links distribute relevance; irrelevant links dilute topical focus |
| Unique value proposition of the category | Duplicate content copied from manufacturers | Duplicate descriptions cannibalise rankings; unique copy builds authority |
| Shipping, return, and warranty highlights | Legal disclaimers or fine print | Practical information aids purchase decisions; disclaimers are off-putting |
Category pages hold significant link equity. Use them strategically to boost your most important product pages and subcategories. Zac's internal linking rules for category pages:
| Link Type | Target | Strategy |
|---|---|---|
| Subcategory links | Child categories within the parent | Link from category description to each subcategory page using descriptive anchor text |
| Featured products | Best-selling or high-margin products | Feature 3–5 top products at the top of the product grid with contextual links |
| Related category links | Complementary categories | Include a "Shop by Category" section with links to related taxonomies |
| Informational content | Buying guides or size charts | Link from category description to guide content that helps users make informed decisions |
The category page is your best chance to rank for commercial keywords. If you treat it like a warehouse shelf, search engines will treat it like one too.
Product pages are where the transaction happens. Every element — from the title tag to the customer reviews — must be optimised to attract search traffic and convert visitors into buyers. Zac's product page SEO framework covers all six critical elements.
The title tag is the single most important on-page SEO element for product pages. It appears in search results, browser tabs, and social shares. Zac's formula for product title tags is simple but powerful:
| Component | Example | Notes |
|---|---|---|
| Product Name | Merino Wool Hiking Socks | Primary keyword — the exact product name customers search for |
| Separator | | | Clean pipe separator between elements |
| Category / Type | Men's Hiking Gear | Contextual category that increases relevance for broader searches |
| Brand (optional) | SmartWool | Include brand if it has search demand; omit for lesser-known brands |
| Full Example | Merino Wool Hiking Socks | Men's Hiking Gear | SmartWool | 35 characters — well within the 60-character limit |
Critical rule: Keep the entire title under 60 characters so it displays fully in search results. For products with long names, prioritise the product name and category, and drop the brand if needed.
Meta descriptions don't directly affect rankings, but they dramatically impact click-through rates. A well-written meta description can increase CTR by 5–15%. For e-commerce product pages, follow these guidelines:
| Best Practice | Do This | Avoid This |
|---|---|---|
| Include unique selling points | "Free shipping on orders over $50. 30-day returns. 100% satisfaction guaranteed." | Generic descriptions like "Buy our products. Best prices." |
| Use active call-to-action language | "Shop now for premium merino wool socks — built for comfort on the trail." | Passive descriptions that simply describe the product without prompting action |
| Include primary keyword naturally | "Discover our merino wool hiking socks, designed for all-day comfort." | Keyword stuffing: "Merino wool socks. Buy merino wool socks. Best merino wool socks." |
| Stay within 155–160 characters | Concise, compelling copy that fits the search result snippet | Truncated descriptions that cut off mid-sentence in results |
| Include price and promotions | "Starting at $29.99 — use code HIKE20 for 20% off your first order." | Outdated pricing or expired promotion references |
One of the biggest mistakes e-commerce stores make is using manufacturer-supplied product descriptions verbatim. These descriptions appear on dozens or hundreds of other sites, creating massive duplicate content issues. Zac's advice: always rewrite supplier descriptions.
Here is a practical workflow for creating unique product descriptions at scale:
| Step | Action | Time Estimate |
|---|---|---|
| 1 | Read the supplier description and identify 3–5 key product features | 2 minutes |
| 2 | Rewrite each feature in your own words, focusing on benefits not features | 5 minutes |
| 3 | Add unique information: sizing tips, usage scenarios, compatibility notes | 3 minutes |
| 4 | Include a paragraph about why this product solves a specific customer problem | 3 minutes |
| 5 | Integrate 1–2 secondary keywords naturally into the text | 2 minutes |
Structured data helps search engines understand your product pages and enables rich results like price, availability, and review stars in search listings. Zac recommends implementing the following properties for every product page:
| Property | Required? | Description | Example Value |
|---|---|---|---|
name |
Required | Product name matching the title tag | "Merino Wool Hiking Socks" |
description |
Required | Unique product description | "Premium merino wool blend..." |
image |
Required | URL to primary product image | "https://example.com/socks.jpg" |
offers |
Strongly Recommended | Price, currency, availability, condition | "$29.99, USD, InStock" |
brand |
Strongly Recommended | Brand name of the product | "SmartWool" |
aggregateRating |
Recommended | Average customer review rating | "4.5, based on 128 reviews" |
sku |
Recommended | Stock keeping unit identifier | "MWS-001-BLK" |
gtin |
Nice to Have | Global Trade Item Number (UPC, EAN) | "0843672012345" |
Customer reviews are a powerful SEO asset. They provide fresh, unique content that search engines love, naturally include long-tail keywords, and improve conversion rates. Zac's perspective on reviews and user-generated content (UGC):
Reviews are free, fresh, unique content that your customers write for you. Encourage reviews on every product page. Respond to negative reviews thoughtfully. The SEO benefit of a 100-review product page is equivalent to 3–5 well-written blog posts — without the writing effort.
URL structure is a foundational element of e-commerce SEO. Well-structured URLs help search engines understand page hierarchy, improve user experience, and can even influence click-through rates in search results. Zac recommends keeping URLs clean, logical, and keyword-rich.
| Best Practice | Good Example | Bad Example |
|---|---|---|
| Use descriptive keywords | /men/hiking-boots/ |
/cat-123/ |
| Use hyphens as word separators | /merino-wool-socks/ |
/merino_wool_socks/ or /merinowoolsocks/ |
| Keep URLs short and readable | /hiking-socks/ |
/shop/mens/accessories/socks/hiking/merino-wool/ |
| Avoid unnecessary parameters | /products/hiking-socks/ |
/products.php?id=4829&color=red&size=l&ref=facebook |
| Use lowercase throughout | /category/product-name/ |
/Category/Product-Name/ (case conflicts) |
| Include category path (optional) | /men/hiking-gear/socks/ |
/p/293847/ |
There are two main approaches to e-commerce URL structure: nested (includes category path) and flat (product directly under domain). Each has advantages:
| Structure | Example | Pros | Cons |
|---|---|---|---|
| Nested | /men/hiking-gear/merino-wool-socks/ |
Clear hierarchy; keyword-rich path; helps contextual relevance | Longer URLs; tricky if product belongs to multiple categories; URL changes when category path changes |
| Flat | /products/merino-wool-socks/ |
Short and clean; no redirects needed if categories change; easier to manage | Less contextual relevance; may miss keyword opportunities in the URL path |
Zac's recommendation: use nested URLs for stores with a stable, well-structured category hierarchy. Use flat URLs if your products frequently cross categories or you anticipate restructuring your taxonomy.
/women/running-shoes/gel-nimbus-25/
/hiking-socks/merino-wool-crew/
/blenders/countertop/vitamix-pro-750/
Short, readable, keyword-rich, clear hierarchy.
/product.php?id=48293&cat=12&color=red
/c/12/p/394832/
/Men's-Gear/Hiking-Socks-Merino-Wool-Crew-Length-Blue/
Long, parameter-heavy, unreadable, mixed case, repetitive.
Product variants (different colors, sizes, materials) create a common canonical URL challenge. Each variant has its own URL, but all variants are essentially the same product. Without proper canonicalization, search engines see these as duplicate content. Zac's approach:
| Scenario | Canonical URL | Explanation |
|---|---|---|
| Color variants (same product, different colors) | Canonical to the main product URL (e.g., /product/hiking-socks/) |
All color variants are the same product; the main product URL is the authority |
| Size variants (same product, different sizes) | Canonical to the main product URL | Size variations do not change the product identity; one canonical prevents dilution |
| Significantly different models (e.g., Pro vs Lite version) | Self-canonical (each variant points to itself) | If variants have different names, prices, and specifications, treat them as distinct products |
| Regional variants (US vs EU packaging) | Self-canonical with hreflang annotations | Region-specific pages should target different countries; use hreflang instead of forcing one canonical |
Breadcrumbs are a critical navigation element that serves both users and search engines. They clarify page hierarchy, reduce bounce rates, and appear as a rich snippet in Google search results when properly marked up with structured data.
Breadcrumbs provide three distinct benefits in an e-commerce context:
| Benefit | Impact | How It Works |
|---|---|---|
| User Experience | Reduces bounce rate by 10–15% | Users can easily navigate back to parent categories without hitting the browser back button |
| SEO & Internal Links | Distributes link equity through the category hierarchy | Each breadcrumb link passes authority to parent pages, reinforcing topical relevance |
| Search Result Rich Snippet | Increases CTR by up to 5% | Google displays breadcrumb paths in search results with BreadcrumbList schema |
| Page Depth Signal | Helps search engines understand site structure | Breadcrumbs make page hierarchy explicit, helping crawlers understand which pages are top-level vs deep-linked |
To enable breadcrumb rich results in Google, you must implement BreadcrumbList schema.org markup on every page. Here is the recommended implementation pattern:
| Element | Schema Property | Example Value |
|---|---|---|
| Breadcrumb container | @type: BreadcrumbList |
Root object for the breadcrumb schema |
| Each breadcrumb item | itemListElement |
Array of ListItem objects in order |
| Item position | position |
1, 2, 3, 4 (sequential integers) |
| Item name | name |
"Home", "Men's Hiking Gear", "Socks" |
| Item URL | item |
"https://example.com/men/hiking-gear/" |
Here is what a complete breadcrumb trail looks like for a typical e-commerce product page, with the corresponding schema markup logic:
| Level | Breadcrumb Text | URL Path | Position |
|---|---|---|---|
| 1 | Home | https://example.com/ |
1 |
| 2 | Men | https://example.com/men/ |
2 |
| 3 | Hiking Gear | https://example.com/men/hiking-gear/ |
3 |
| 4 | Socks | https://example.com/men/hiking-gear/socks/ |
4 |
| 5 | Merino Wool Hiking Socks | https://example.com/men/hiking-gear/socks/merino-wool/ |
5 |
Breadcrumbs are one of the few SEO elements that benefit users, search engines, and click-through rates simultaneously. If your e-commerce site doesn't have breadcrumbs with schema markup, start there. It is a 15-minute fix with measurable results.
Out-of-stock and discontinued products create a dilemma: keep the page live and risk a poor user experience, or remove it and lose the accumulated SEO value. Zac provides a clear decision framework based on the nature of the stockout.
| Situation | Recommended Action | SEO Impact | Implementation |
|---|---|---|---|
| Temporary out-of-stock (restocking expected within 30 days) |
Keep page live | Preserves rankings; maintains accumulated link equity | Display "Back in stock on [date]" message. Offer backorder or email notification option. Update schema.org availability to BackOrder or PreOrder. |
| Medium-term out-of-stock (restocking within 30–90 days) |
Keep page live with warnings | Rankings may dip slightly but recover faster than creating a new page | Prominently display expected restock date. Offer email notification. Consider linking to alternative products. |
| Permanently discontinued (product no longer available; similar alternative exists) |
301 redirect to closest alternative | Transfers 80–95% of link equity to the new page | Identify the most relevant replacement product. Implement 301 redirect. Update any internal links pointing to the old URL. |
| Discontinued, no replacement (product category or line completely ended) |
Return 404 with helpful navigation | Better to 404 than to redirect to an irrelevant page (which signals low quality) | Create a custom 404 page with category links, search bar, and popular products. Remove from sitemap. |
| Seasonal product (returns annually) |
Keep page live year-round | Maintains rankings for the next season; signals expertise in seasonal products | Update page with "Seasonal — check back [season]" messaging. Keep product URL and schema intact. |
Zac's specific rules for handling each stockout scenario, based on his experience with large e-commerce operations:
BackOrder. Keep the add-to-cart button active with a clear restock date. Search engines understand backorders and will not penalize the page.Every out-of-stock product is a fork in the SEO road. Make the wrong turn and you lose rankings and traffic you spent months building. Zac's framework gives you a clear decision tree — follow it and you preserve your hard-earned SEO equity.
Faceted navigation is one of the most dangerous SEO problems in e-commerce. Every filter combination — color, size, price range, brand, material — can generate a new URL, creating millions of thin, low-quality pages that waste crawl budget and dilute ranking signals.
Consider a simple e-commerce store selling shoes with 10 filter options (size, color, brand, price range, material, width, heel type, closure type, occasion, season). If each filter has just 5 values, the theoretical number of filter combinations is 510 = 9.7 million unique URLs. Each of these URLs could be indexed by Google — but almost none of them provide unique value.
The consequences of unfiltered faceted navigation are severe:
| Problem | Impact | Severity |
|---|---|---|
| Crawl budget waste | Googlebot spends 80%+ of its time crawling filter pages instead of real product pages | Critical |
| Thin content duplication | Thousands of near-identical pages with minimal unique content indexed | Critical |
| Keyword cannibalisation | Multiple filter pages competing for the same keyword clusters | High |
| PageRank dilution | Link equity spread across millions of low-value pages | High |
| Duplicate content penalties | Google may lower overall site quality score due to mass duplication | High |
There are five main approaches to managing faceted navigation. Each has trade-offs. Choose based on your site size, technical resources, and SEO priorities:
| Solution | How It Works | Pros | Cons | Best For |
|---|---|---|---|---|
| robots.txt | Disallow crawling of parameter-based URLs via Disallow: /*?* patterns |
Simple to implement; instantly stops crawl waste | URLs may still be indexed if linked externally; no control over which parameters are blocked | Small to medium stores with limited filter complexity |
| Nofollow | Add rel="nofollow" to all filter page links |
Prevents link equity from flowing to filter pages; easy to implement | Does not prevent indexing; nofollow is a hint, not a directive | Supplemental measure alongside other solutions |
| Noindex | Add <meta name="robots" content="noindex"> to filter pages |
Prevents indexing of filter pages; preserves crawl budget | Noindexed pages still consume crawl budget; does not consolidate link equity | Stores with moderate filter usage; pages that add no unique value |
| Canonical URL | Set rel="canonical" on filter pages pointing to the parent category |
Consolidates ranking signals to the parent category; most SEO-friendly approach | Requires dynamic URL handling; incorrect implementation can cause indexing issues | Medium to large stores with strong technical SEO resources |
| AJAX Filters | Load filter results without changing the URL using JavaScript (history.replaceState) | No new URLs are created at all; elegant UX; preserves crawl budget completely | Requires JavaScript development; filters won't work without JS enabled | Modern stores with JavaScript frameworks (React, Vue, Alpine.js) |
There is one exception to the "noindex filter pages" rule: if a specific filter combination attracts real search volume, it may be worth keeping it indexed. For example, "women's running shoes size 10" or "organic cotton baby clothes under $50" are legitimate search queries. Here is a framework for deciding:
| Criteria | Do Index | Do NOT Index |
|---|---|---|
| Search volume | Filter combination has 50+ monthly searches in keyword tools | Zero or negligible search volume (most filter combinations) |
| Unique content potential | You can add a unique description to the filter page | Page has no content beyond the product grid |
| Conversion potential | Filter represents a clear buyer intent (e.g., "vegan leather handbags") | Exploratory or browsing intent (e.g., "sort by price low to high") |
| Crawl budget | Only 5–10 indexed filter pages total; site has healthy crawl budget | Site has more than 10,000 products and crawl budget is already strained |
| Example | /women/running-shoes/wide-width/ (keyword: "wide width running shoes women") |
/shoes/?sort=price_desc (no search value) |
Faceted navigation is the top technical SEO killer for e-commerce sites. Left unchecked, it can destroy your crawl budget, dilute your PageRank, and tank your rankings. The fix is not complicated — but it requires discipline and the right approach for your store size.
Internal linking is one of the most powerful yet underutilized SEO levers in e-commerce. A well-planned internal linking strategy distributes link equity, establishes topical relevance, and helps search engines discover and understand your most important pages.
Related product sections (e.g., "Customers who bought this also bought," "You might also like," "Complete the look") are natural internal linking opportunities. Each related product link passes relevance signals between product pages. Best practices:
| Technique | Implementation | SEO Benefit |
|---|---|---|
| Cross-sell links | "Frequently bought together" section on product pages | Creates thematic clusters; increases page views per session |
| Upsell links | "Premium alternative" or "Upgrade to" links | Passes link equity to higher-value product pages |
| Complementary items | "Complete your setup" with complementary products | Establishes topical relationships between product categories |
| Recently viewed | Personalized related products based on user history | Dynamic but still passes link equity through internal links |
Cross-category links connect products and content across different branches of your site. These links help distribute link equity from high-authority pages to deeper pages that need ranking support. Zac's approach:
| Link Source | Link Target | Anchor Text Strategy |
|---|---|---|
| High-traffic category page | Low-traffic subcategory page | Use natural, descriptive anchor text that includes the subcategory keyword |
| Blog article | Product category or specific product | Use contextual phrases that match the article's topic and the product's keywords |
| Product page | Related category page (e.g., from "Hiking Socks" to "Hiking Boots") | "Shop our complete hiking gear collection" rather than generic "click here" |
| Homepage | Top 5–10 category or subcategory pages | Use branded anchor text with category names for maximum relevance |
Content articles (buying guides, reviews, comparison posts) are powerful internal linking hubs. They naturally attract informational traffic and can funnel readers to product and category pages. Article-to-product linking best practices:
| Article Type | Link Placement | Number of Links | Example |
|---|---|---|---|
| Buying guide | Inline within relevant product recommendations | 3–5 links per article | "For beginners, we recommend the Merino Wool Hiking Socks for their durability and comfort." |
| Comparison post | Within each product review section | 2–4 links per product compared | "The SmartWool Classic offers better moisture-wicking than the competition." |
| "Best of" listicle | Each item in the list links directly to the product | 1 link per listed product | "1. Merino Wool Hiking Socks — Best overall for long hikes." |
| Tutorial / how-to | Tools or products mentioned in the instructions | 2–3 links per article | "You will need a pair of waterproof hiking socks for this trail." |
Link depth refers to how many clicks it takes to reach a page from the homepage. Zac recommends keeping your most important product pages within 3 clicks of the homepage. Pages deeper than 4–5 clicks receive significantly less link equity and are less likely to rank.
Here is a link depth optimization table showing the relationship between depth and ranking potential:
| Clicks from Homepage | Link Equity Passed | Ranking Potential | Recommendation |
|---|---|---|---|
| 1 click | 100% (homepage direct) | Excellent | Reserve for top categories and flagship products |
| 2 clicks | ~85% | Very Good | Target for main category pages and top subcategories |
| 3 clicks | ~70% | Good | Target for important product pages; use internal links to maintain flow |
| 4 clicks | ~55% | Fair | Acceptable for deep products; add internal links from blog posts |
| 5+ clicks | ~40% or less | Poor | Restructure navigation to reduce depth; add direct links from higher-level pages |
To reduce link depth: add contextual links from blog content, use breadcrumb navigation, include "featured products" sections on category pages, and consider creating a site-wide "Best Sellers" or "Popular Products" section that links directly to top products from any page.
Internal linking is free SEO. Every link on your site is a vote for the importance of the target page. The stores that win in SEO are the ones that use these votes strategically — not randomly or by default.
Common questions about on-site SEO for e-commerce, answered based on Zac's SEO实战密码 methodology.
The category page optimization checklist includes: hero image (high-quality category banner), tagline/unique value proposition, category description (200–400 words of unique content), navigation and filtering options, and breadcrumbs with structured data markup. Each element serves both SEO and user experience — never optimize one at the expense of the other.
Use the formula: Product Name | Category | Brand. Keep it under 60 characters. Include the primary keyword naturally. Avoid keyword stuffing. For variant products (different colors, sizes), include the distinguishing attribute in the title tag but use a canonical URL pointing to the main product page.
The recommended structure is: domain.com/category/subcategory/product-name. Use hyphens to separate words. Keep URLs short and descriptive. Avoid unnecessary parameters, IDs, and session strings. For product variants, use canonical URLs pointing to the main product page to avoid duplicate content issues.
For temporarily out-of-stock products: keep the page live, display the restock date, and accept backorders. For permanently discontinued products: 301 redirect to the most relevant alternative product. If no relevant replacement exists, return a 404 status with helpful navigation links to the category page and popular products.
Faceted navigation creates an infinite number of filter combination URLs (e.g., /shoes/?color=red&size=10&brand=Nike), generating millions of thin, duplicate pages. Solutions include: blocking parameter URLs via robots.txt, adding noindex tags, implementing canonical URLs pointing to the parent category, or using AJAX to keep filter parameters out of the URL entirely. Choose based on your store size and technical resources.
The 3-click rule states that your most important product pages should be reachable within 3 clicks from the homepage. Pages deeper than 4–5 clicks receive significantly less link equity and are less likely to rank well. Use breadcrumbs, contextual links from blog content, featured product sections, and well-structured category navigation to reduce link depth for priority pages.
Yes, always rewrite manufacturer-supplied product descriptions. Duplicate descriptions appear on dozens or hundreds of other sites and provide no unique value to search engines. Zac recommends identifying 3–5 key features from the supplier description and rewriting them in your own words, focusing on benefits rather than features, and adding unique information like sizing tips or usage scenarios.
Continue your SEO journey with our complete series of e-commerce optimization guides.