WooCommerce SEO is the work of getting a WordPress store’s product pages, category pages and content to rank in Google. WooCommerce gives you editable permalinks and basic Product schema on single product pages. WordPress adds a sitemap and canonical tags on single pages. Everything else is your setup: an SEO plugin for titles and archive canonicals, robots rules for filter URLs, page caching on decent hosting, and sensible out-of-stock settings.
That split is the whole story. On Shopify, the platform makes most technical choices for you. On WooCommerce, you, your plugins and your host make them, which means more control and more ways to get it wrong.
This guide covers only the WooCommerce layer. General WordPress SEO (themes, editors, site-wide plugins and content) has its own home in my WordPress SEO guide, so I won’t repeat it here.
What Decides Your WooCommerce SEO Setup?
Four facts about your store change the plan. I ask them before I touch a single setting.
- Is the store already live and ranking? A new store can pick its URL structure freely. A live one should treat permalinks as frozen.
- How many products, and do you use filters? Filters on a big catalog can create more URLs than you have products, by a long way.
- What does your hosting do? Page caching and server speed decide your Core Web Vitals more than any theme setting.
- Who maintains the site? WooCommerce, WordPress, the theme and every plugin need updates. If nobody owns that, SEO problems arrive with the next release.
Which Permalink Settings Should You Use?
WooCommerce’s permalink documentation puts the settings in Settings > Permalinks. By default, products live at /product/product-name/, categories at /product-category/name/ and tags at /product-tag/name/. For the product URL you get four choices: Default, Shop base, Shop base with category, and Custom base.
If your store is new, pick once and never touch it again. I usually leave the default /product/ base. It gives every product one URL no matter how many categories it sits in, and that’s the cleanest setup for SEO.
If your store is live and ranking, don’t change it. The same documentation warns that changing permalink structures updates existing product URLs, and old links return 404 errors unless you set up redirects. A prettier URL is never worth that risk on its own.
If you use “Shop base with category”, know about the WooCommerce 10.5 change. According to the WooCommerce developer blog, the URL now uses the product’s deepest category, and the built-in canonical redirect sends old URLs to the new one with a 301. That’s handled for you. Still, if you relied on a plugin’s “primary category” choice to shape URLs, open a few products after updating and check the address they actually load at.
Should You Remove /product/ and /product-category/?
Rank Math’s general settings include free WooCommerce options to remove the product base, the category base and parent slugs. My take is cautious. On a new store it’s a style choice. On a live store it changes every URL at once, and it puts products and pages in the same URL space, where a product and a page with the same name will collide.
I’ve never seen /product/ be the reason a store didn’t rank. Thin category pages and duplicate filter URLs, yes, over and over.
How Should You Optimize Product and Category Pages?
The fields are the same as any WordPress post, plus two product-specific ones. The long description sits in the main editor. The short description usually shows next to the price, depending on your theme. Write both for shoppers, and put your SEO plugin’s title and meta description on every product that earns impressions.
My general method for product pages (titles, copy, images, reviews and internal links) lives in my guide to product page SEO. It applies to WooCommerce unchanged.
Category pages matter more. One strong category lifts every product inside it, and categories are where you win broad terms. Add a real description to each category in Products > Categories, then check your theme actually prints it on the page, because some themes don’t. My category page SEO guide covers the copy and structure.
Product tags are the quiet problem. Every tag creates a /product-tag/ archive, and most stores have dozens of tags with two or three products each. If tags exist only for internal sorting, I set them to noindex in the SEO plugin and stop linking to them.
What Structured Data Does WooCommerce Output?
WooCommerce prints JSON-LD Product markup with offers (price, currency and availability) on single product pages, according to its structured data wiki. Since version 3.5.6 it no longer prints product markup on category or shop archives, in line with Google’s rule that only visible data should be marked up.
A working base. The trouble comes from layering. SEO plugins, schema plugins and review plugins often extend or replace WooCommerce’s markup, and I regularly find two Product blocks on one page, one with ratings and one without.
The fix is simple to check. Run one product URL through Google’s Rich Results Test and confirm one Product entity with offers. My product schema markup guide explains which properties matter and how merchant listings differ from product snippets.
Which SEO Plugin Should a WooCommerce Store Use?
You need one, in practice. WordPress core gives you a sitemap and canonicals on single pages, but no canonical on product category archives and no field for a custom title tag. Here are the two I see most often, named neutrally. Nobody pays for these mentions.
Yoast SEO with the Yoast WooCommerce SEO add-on. The add-on’s product page lists product schema (price, availability, ratings and identifiers), breadcrumbs, optimized product sitemaps that skip cart, checkout and filter pages, and a redirect manager. It needs Yoast SEO installed, includes Yoast SEO Premium in the price, and was listed at $178.80 per year excluding VAT when I checked in October 2026.
Rank Math. Its free version has a WooCommerce section with the base-removal options above, plus an option to remove schema markup on shop archives. Product identifiers and noindexing products hidden from the catalog are listed as PRO features.
If you already run one of them, stay with it. If you’re choosing fresh, pick the one whose interface your team will actually use every week. If you have both installed, remove one today. Two SEO plugins means two sets of titles, canonicals and schema fighting each other.
How Do You Stop Filter URLs Wasting Crawl?
WooCommerce gives you filters but no crawl protection. Attribute filters add parameters like filter_color=blue,red with a companion query_type_color, price filters use min_price and max_price, ratings use rating_filter and sorting uses orderby. WordPress’s default virtual robots.txt blocks none of them.
If filtered pages show up in Search Console’s Page indexing report by the hundreds, block those parameters in robots.txt and promote the few combinations people actually search for into real product categories. If your filter plugin uses its own parameter names, open a few filtered URLs and write the rules around what you see, not around WooCommerce’s defaults.
I keep the parameter names and the exact robots.txt rules in one place, my faceted navigation SEO guide, so they stay consistent. Use those rules, then check what canonical your SEO plugin prints on a filtered page.
How Do Hosting and Caching Affect WooCommerce SEO?
This is where WooCommerce stores win or lose Core Web Vitals. The same theme can pass on good hosting with page caching and fail on a cheap shared plan, because an uncached WordPress page runs PHP and database queries on every visit.
Cache the right pages. WooCommerce’s caching guidance says Cart, My Account and Checkout must stay dynamic, and lists cookies such as woocommerce_cart_hash and woocommerce_items_in_cart to exclude. Product and category pages can be cached, and they’re the pages Google crawls.
Google’s LCP guidance on web.dev calls 2.5 seconds or less “good,” measured across 75% of page visits. PageSpeed Insights reports that field data over the previous 28 days, so a fix takes weeks to show fully. Be patient. WordPress core already adds fetchpriority="high" to the image it expects to be the LCP, but sliders and lazy-load plugins often undo that. My guide on how to improve LCP shows how to find the real cause.
Then there’s upkeep. WooCommerce, WordPress core, the theme and every plugin need updates, tested on staging, with a backup first. My WordPress maintenance checklist has the weekly-to-yearly routine, and our WordPress maintenance service takes it off your plate if nobody on your team owns it.
What Should Happen to Out-of-Stock Products?
WooCommerce has a setting in Products > Inventory called “Out of stock visibility,” which hides out-of-stock items from the catalog. It’s tempting. I’d leave it off for temporary stockouts.
Here’s why. Hiding a product from shop and category listings strips away the internal links that pointed at it, even though the product URL itself can still be reached through old backlinks, bookmarks, emails and whatever Google already has in its index. For a product coming back next month, that’s the wrong signal. Keep it visible, show the stock status clearly and link to alternatives.
If the product is coming back, keep the page live with its availability set to out of stock. If it’s discontinued with a replacement, redirect it. If nothing replaces it, let it return a 404 or 410. My out-of-stock products SEO guide covers each case, including back-orders and seasonal items.
Which Edge Cases Change the Plan?
- Multilingual stores. WordPress has no native language system, so WPML or Polylang outputs your hreflang. Check the tags on a translated product, not just the settings screen.
- Headless WooCommerce. With a separate front end, none of the plugin output above appears automatically. Titles, canonicals, schema and sitemaps become your developers’ job.
- Block-based Product Filters. The newer filter block adds a
filter_stock_statusparameter for stock filtering. Thefilter_rule in my faceted navigation guide already catches it, so check that rule is in place. - Moving to or from Shopify. Every
/product/URL needs a redirect to Shopify’s fixed/products/path, or the reverse. My pillar on Shopify SEO covers the Shopify side of that move.
WooCommerce SEO Decision Matrix
| If your store is | And | Then start with |
|---|---|---|
| New, not launched | Any size | Pick permalinks once, install one SEO plugin, write category descriptions |
| Live and ranking | Thinking of changing URLs | Don’t. Fix titles and categories instead |
| Using “Shop base with category” | Updated to 10.5 or later | Spot-check product URLs and redirects |
| Large catalog | Filters indexed by the hundreds | Robots rules for filter parameters, promote real facets to categories |
| On cheap shared hosting | LCP or INP failing | Page caching with WooCommerce exclusions, then the LCP guide |
| Running two SEO plugins | Any | Remove one, recheck schema with the Rich Results Test |
| Hiding out-of-stock items | Stock usually returns | Turn the hide setting off, show availability |
When Should You Bring In Help?
Plugin settings and category copy are owner work. Permalink changes on a live store, robots rules, caching setup and schema conflicts are not, because one wrong line can hide a whole category folder or break checkout.
That technical and catalog work is what our ecommerce SEO service covers for WooCommerce stores. If you’d rather see what your store gets wrong first, start with the free SEO audit. Still deciding on a platform? My Shopify vs WooCommerce SEO comparison gives the verdict.
Frequently Asked Questions
Is WooCommerce Good for SEO?
Yes, if someone maintains it. WooCommerce gives you editable permalinks, one URL per product by default, Product schema on single products and the whole WordPress content system. What it doesn’t give you is protection: filters, caching, plugins and updates are your job.
Should I Remove /product/ From WooCommerce URLs?
Not on a live store. Changing permalinks changes every product URL, and old links return 404s unless you redirect them. On a new store it’s a style choice, but removing bases can make product and page URLs collide.
Do I Need the Yoast WooCommerce SEO Add-On?
No, it’s optional. Yoast SEO or Rank Math alone covers titles, meta descriptions, canonicals and sitemaps. The add-on adds product-specific schema, breadcrumbs and product sitemaps that skip cart, checkout and filter pages, which helps larger stores that want it handled in one tool.
Does WooCommerce Add Product Schema Automatically?
Yes. WooCommerce outputs JSON-LD Product markup with offers on single product pages, but not on category or shop archives. Check one product in Google’s Rich Results Test, because SEO and review plugins can add a second, conflicting block.
Last updated: October 2026 by Mizanur Rahman



