WebshopsGuide · 13 min read

WooCommerce SEO in 2026: the checklist for Google and AI search

WooCommerce gives you a decent SEO base, but not a finished one. This checklist covers what to fix, from filters and product data to structured data, Merchant Center and what ChatGPT and Google's AI take from your shop.

On this page
  1. Structure: categories, filters and URLs
  2. Product pages: your own text and complete data
  3. Structured data: what WooCommerce outputs and what Google needs
  4. Google Merchant Center and free listings
  5. Speed and Core Web Vitals on WooCommerce
  6. Indexing hygiene: what to keep out of Google
  7. What ChatGPT and Google's AI take from your shop
  8. The WooCommerce SEO checklist in one table
  9. FAQ

The short answer

WooCommerce gives you a decent SEO base: readable URLs, Product structured data, and cart and checkout pages kept out of Google by default. The work that decides whether you get found is still yours. In 2026 it comes down to six checks:

  1. Categories built around what people search, and filters that don't flood Google with URLs.
  2. Product pages with your own text and complete data: GTIN, brand, variants, price and stock.
  3. Structured data that meets Google's requirements for merchant listings, and is tested.
  4. A Google Merchant Center feed, so your products can appear in free listings.
  5. A fast shop, and a clear rule for products that sell out or disappear.
  6. Reviews, specs and shipping and returns information that ChatGPT and Google's AI can read.

Structure: categories, filters and URLs

Structure decides whether Google finds your category and product pages, and how much crawling it wastes.

  1. Make categories your main landing pages. Name them after what buyers search, such as "wall-hung toilets", and add a short intro above the products and useful text or FAQs below.
  2. Use attributes for filters, categories for demand. Colour, size and material belong in attributes. If people search a combination by name, such as "black herringbone floor", give it a real category instead of hoping a filter URL ranks.
  3. Stop filters from multiplying URLs. WooCommerce's filters and sorting add parameters such as filter_colour, min_price and orderby, and every combination is a new URL. Google's advice: if you don't need those URLs in search, disallow them in robots.txt, because canonical and nofollow are "generally less effective in the long term". A rule can be as short as Disallow: /*?*filter_; test it before it goes live.
  4. Paginate properly. Page 2 and beyond need their own URL, a normal link to the next page and a canonical tag pointing to themselves, not to page 1. Google no longer uses rel="next" and rel="prev".
  5. Leave the product base alone on a live shop. With pretty permalinks, WooCommerce puts products under /product/ and categories under /product-category/. You can change that under Settings, Permalinks, but WooCommerce warns that old URLs then return 404 errors unless you set up redirects. Think twice about "shop base with category" too: it puts the category in the product URL, so moving a product changes its URL.

Product pages: your own text and complete data

  • Unique titles and descriptions. Put product type, brand, model and the attribute people search for in the title. Open the description with who it's for and what sets it apart. Manufacturer text sits on every shop that sells the product, so it gives Google and AI no reason to choose yours.
  • GTIN, brand and MPN. Since WooCommerce 9.2 the Inventory tab, and each variation, has a field for the GTIN, the product's barcode number (labelled "GTIN, UPC, EAN, or ISBN"). Since 9.3 a valid GTIN also goes into WooCommerce's structured data, and since 9.6 Brands is part of core and adds the brand. Core has no field for the MPN, the manufacturer's part number; add it through your SEO or feed plugin for products without a GTIN.
  • Variations. Google wants every variant selectable through its own URL, showing the right price, image and availability. WooCommerce preselects a variation with URL parameters such as ?attribute_pa_colour=black: that's the URL to use per variant in your feed. Since WooCommerce 11.0, such a URL with every option selected gets its own Offer, with that variation's price, SKU and GTIN.
  • Price and stock in the HTML. Google recommends product markup in the initial HTML and warns that JavaScript-generated markup can make Shopping crawls "less frequent and less reliable". WooCommerce prints its markup on the server; check that add-ons don't change prices, stock or delivery times after the page loads.

An example: for FloorDeals, a flooring webshop on WooCommerce with a showroom in Emmeloord, we designed the whole site. Product pages show the price per m², reviews and stock, with an m² calculator that adds 15% for cutting waste. Next to a Google Ads campaign we built a showroom page with seven patterns, opening hours, prices, how a visit works, reviews and an FAQ. It went live in September 2026 and is in the top 2 for the brand plus "Emmeloord". The buyer's questions are answered on the page, in text machines can read.

Structured data: what WooCommerce outputs and what Google needs

Google has two kinds of product results: product snippets for pages where people can't buy, and merchant listings for pages where customers buy from you, which can show price, availability, shipping and returns. A shop wants merchant listings. Structured data is the code that describes your product to machines, and WooCommerce outputs it (as JSON-LD) on every product page, without a plugin:

PropertyGoogle, merchant listingsWooCommerce core
name, imageRequiredYes
price and currencyRequired, as a single Offer above zeroYes, but a price range (AggregateOffer) for variable products with different prices, except on a variation URL (since 11.0)
availabilityRecommendedYes, from the stock status
gtin, brandRecommendedYes, when filled in
mpnRecommendedNo
aggregateRating, reviewRecommendedYes, when a product has ratings
shipping and returnsRecommended, ideally shop-wide in Organization markupNot on the product
variants (ProductGroup)Advised for products with variantsNo ProductGroup; a variation URL gets inProductGroupWithID (since 11.0)

Two gaps matter most. On its main URL, a variable product with different prices gets a price range where merchant listings need one Offer, so give your feed the variation URLs. And shipping and returns are missing: Google recommends one shop-wide policy for both in your Organization markup.

SEO plugins fill part of this. Yoast's WooCommerce SEO add-on works on WooCommerce's own Product markup, sets brand and manufacturer from your taxonomy settings and can add a return policy for your organisation. Rank Math has a WooCommerce Product schema type that pulls in the product data; markup for variable products is a PRO feature there. Whatever you use, test a simple and a variable product in Google's Rich Results Test: you want one Product with a complete Offer, matching the visible text.

Google Merchant Center and free listings

Structured data describes the page Google crawls; a Merchant Center feed sends your whole catalogue at once. Google recommends both, because providing both "maximizes" your eligibility and helps Google verify your data.

The reward is free listings: approved products can show without ad spend in Search, the Shopping tab, Images and Lens, YouTube, Gemini, Maps and your Business Profile (some surfaces only in certain countries). New Merchant Center accounts are opted in by default. Google recommends adding your return policy, requires shipping settings or costs in 30 countries, including the Netherlands, Belgium, Germany and the UK, and requires the GTIN where the manufacturer assigned one, otherwise the MPN.

  • Connect the shop. Google for WooCommerce, the official extension, syncs products to Merchant Center automatically, including the core GTIN field. Use version 3.8.1 or later for Google's Merchant API. A small shop that rarely changes can also let Google build a feed from its crawled pages.
  • Keep feed and page identical. Merchant Center checks feeds against your site, so price and stock must match the product page.
  • Fix disapprovals monthly. Fix the cause in WooCommerce, not only in the feed.
  • Ads are a separate decision. The extension can also run Performance Max, Google's automated campaign type, from the feed (how we run ads).

Speed and Core Web Vitals on WooCommerce

Core Web Vitals measure loading, responsiveness and visual stability. The thresholds for a good score:

2.5 sLargest Contentful Paint: the main content has loaded
200 msInteraction to Next Paint: the page responds to a tap or click
0.1Cumulative Layout Shift: nothing jumps while the page loads

Source: Google Search Central, Core Web Vitals, 10 December 2025; measured at the 75th percentile of page loads (web.dev).

Google says good Core Web Vitals align with what its core ranking systems seek to reward. On WooCommerce, these are the levers:

  • Hosting and caching. WooCommerce recommends server-level caching (Varnish, NGINX FastCGI Cache or Redis) plus a CDN, a network that serves your files from servers close to the visitor. Keep cart, checkout and my account out of the page cache, and bypass it for visitors with WooCommerce's cart and session cookies: those pages show the current customer's details and cart.
  • Images. Google Search supports WebP and AVIF. WordPress handles AVIF since version 6.5 if your server supports it, and says AVIF can be up to 50% smaller than JPEG at the same quality. Lazy-load images below the fold, but not the main product image: it's often the element LCP measures.
  • Plugins. Each plugin can add scripts to every page. Measure them with Query Monitor, as WooCommerce suggests, remove what you don't use, and test product and category pages in PageSpeed Insights, not just the homepage.
  • Order storage. High-Performance Order Storage (HPOS) keeps orders in their own tables. It's on by default for new shops since WooCommerce 8.2; older shops must switch it on. It helps the order side, not product pages.

Indexing hygiene: what to keep out of Google

  • Cart, checkout and my account. WooCommerce already marks these noindex, a tag that keeps a page out of Google's index, and sends a noindex header on endpoints such as order-received. Check that your SEO plugin hasn't overridden it, and don't also block them in robots.txt: Google only sees a noindex on a page it may crawl.
  • Internal search results. They create endless thin URLs. WordPress marks them noindex by default (since 5.7), product searches included; check that your SEO plugin keeps it that way. Your sitemap should list only canonical category and product URLs.

Every shop needs a rule for out-of-stock products. A simple one:

  1. Temporarily out of stock: keep the page. Say when it's expected back and link to alternatives. WooCommerce sets the availability in its markup from the stock status. Its "Hide out of stock items from the catalog" setting removes them from your catalogue; decide if you want that for products back next week.
  2. Gone for good, with a successor: 301. Redirect to the new model or the closest product. Google treats a permanent redirect as a strong signal and shows the new URL in its results.
  3. Gone for good, no replacement: 404 or 410. Google treats both the same way and drops the URL. Don't send them all to the homepage; that's not what the visitor wanted.

There's no separate trick. Google says there are no extra requirements for AI Overviews or AI Mode: a page needs to be indexed and eligible for a snippet, with no special AI files or schema, and your Merchant Center and Business Profile should be up to date. Everything above is AI work too. What the platforms document about shopping:

  • ChatGPT. OpenAI says product results are selected independently and are not ads. ChatGPT uses the conversation and "structured metadata from first-party and third-party providers", and ranks merchants on factors such as availability, price and quality. Its shopping research reads sites it trusts for price, availability, reviews, specs and images.
  • Feeds. Merchants can share product feeds with OpenAI through the Agentic Commerce Protocol, an open standard from OpenAI and Stripe, but only approved partners are onboarded. Shopify shops are connected through Shopify Catalog, and OpenAI mentions providers such as Stripe and Salesforce as other routes. It names no WooCommerce route, so what ChatGPT reads on your pages counts most.
  • Checkout. In March 2026 OpenAI said the first version of Instant Checkout lacked flexibility and refocused on discovery, with merchants using their own checkout, though ChatGPT may still offer it for some eligible products. Google's newest checkout capabilities for merchants are rolling out in the US, with Australia and Canada to follow in early 2027. For now, aim to be found.
  • Merchant Center. Google added optional "conversational attributes", such as product Q&As, manuals and related accessories, to help AI systems understand your products in AI Mode.

Give them what they read: let OAI-SearchBot, OpenAI's search crawler, crawl your shop (our ChatGPT guide shows how), complete product data on the page and in your feeds, genuine reviews in your markup, shipping and returns pages with actual costs, delivery times and return periods, and buying guides that answer questions like "vinyl or laminate for a kitchen?". For the bigger picture, read what GEO is.

The WooCommerce SEO checklist in one table

AreaCheckWhy it matters
CategoriesNamed after what buyers search, with useful textYour main landing pages
Filters and pagesFilter URLs disallowed; paginated pages self-canonicalLess crawling wasted
URLsProduct base unchanged; redirects for every changed URLOld URLs otherwise return 404 errors
Product textOwn titles and descriptions, no manufacturer copyA reason to pick your page
Product dataGTIN and brand, MPN where there's no GTINGoogle can match your product to searches
VariationsEach variant reachable through its own URLThe right variant, price and image in results
Structured dataOne Product with one Offer, testedRequired for merchant listings
Shipping and returnsShop-wide policy in markup and Merchant CenterShown in product results
Merchant CenterFeed synced, prices match, disapprovals fixedFree listings across Google, including Gemini
SpeedCore Web Vitals within Google's thresholds; cart and checkout not cachedPart of what Google rewards
IndexingCart, checkout, account and search noindexKeeps the index to pages that can rank
StockKeep, 301, or 404/410No dead ends for visitors or Google
AI searchCrawlable, reviews, clear policies, buying guidesWhat AI assistants read

If you'd rather have it done, it's the work in our SEO and GEO service, and when we build a webshop it's in from the start.

Sources

Facts checked on 10 October 2026.

Portrait of Etienne
About the authorEtienne Rozenblad

Etienne runs SEO and GEO for clients such as Slaapkops and Wrap je Keuken, and tests every tactic on Tjenno AI's own sites first. Former agency owner with a bachelor's in Commercial Economics.

Meet the team →
FAQ

Questions about WooCommerce SEO

Still a question? Mail hello@tjenno.ai

Is WooCommerce good for SEO?

Yes, as a base. WooCommerce outputs Product structured data and keeps cart, checkout and account pages out of Google by default. The work that makes the difference is still yours: unique product text, complete product data, controlled filters and a fast shop.

Do I need Yoast or Rank Math for WooCommerce SEO?

Not for basic product markup, because WooCommerce outputs it itself, brand included since version 9.6. A plugin can fill gaps such as manufacturer, a return policy and markup for variable products. Whatever you use, test a simple and a variable product in Google's Rich Results Test.

Should I remove /product/ from my WooCommerce URLs?

On a live shop, usually not. WooCommerce warns that changing permalinks makes old product URLs return 404 errors unless you set up redirects. On a new shop, choose a structure once and keep it.

What should I do with out-of-stock products in WooCommerce?

If the product comes back, keep the page live and say when. If it's gone for good and has a successor, redirect it with a 301. If there's no replacement, let it return a 404 or 410: Google treats both the same way.

How do I get my WooCommerce products into ChatGPT?

Let OAI-SearchBot crawl your shop and make product data, reviews and shipping information complete on the page. OpenAI says product results in ChatGPT are not ads. Direct product feeds are only onboarded for approved partners, and OpenAI names an automatic route for Shopify shops, not for WooCommerce.

Do I need Google Merchant Center if I don't run Shopping ads?

It's worth it. Free listings can show your products in Google Search, the Shopping tab, Images, YouTube and Gemini without ad spend, and Google recommends a Merchant Center feed alongside structured data on your pages.

Let's see where
you stand.

Three short steps, no sales pitch. You tell us what you sell and what needs to improve. Within 2 working days we show you what Google and the AI assistants currently say about you.

  • Where you stand in Google and in AI answers
  • What your competitors do better
  • The first three things to fix
EtienneTjenno AI · your point of contact20 min · no deck

Questions we answer in a 20-minute intro:

  1. Why does my competitor show up in ChatGPT and we don't? Usually it comes down to the sources AI trusts. In the free analysis we show you which ones mention them, and how to get you in.
  2. How do we get more leads without a bigger ad budget? By putting ads and SEO on one keyword plan, so they stop competing for the same clicks. We'll show you where that pays off first.
  3. Our new website looks great. So why doesn't it rank? Often it's structure, speed or content Google can't read. We check it live and give you the first three fixes.
  4. What does AI say about our company right now? Let's ask it together. In the intro we check Google's AI overview, ChatGPT, Perplexity and Gemini for your name.
  5. Which of our marketing actually brings in customers? We tie every channel to calls, forms and sales, so you know what each euro brings in. Want to see where you stand?