A product page works for Google, AI assistants and customers when it answers a buyer’s questions without them having to call. This product page checklist covers the parts that matter: your own description, specifications as text, intended use and limitations, variants with their own URLs, price and stock that match the structured data, described images, visible reviews and shipping and returns information.
Use the list per product or per product type. With a large catalogue, start with the products that sell or get viewed the most.
What belongs in the copy of a product page?
- A title that says what it is. Brand, product type and the feature that sets it apart: “Veluwe walking boot, waterproof, men’s”. Not a string of keywords.
- Your own description. Write what you know about the product, not only the manufacturer’s text. In its guidance on helpful, reliable content, Google asks whether a page contains original information and shows that someone really knows the product.
- The key information first. What it is and who it is for, in the first sentences. Details below.
- Intended use. Which situation is it meant for? “For daily walks of up to 15 kilometres on paved and unpaved paths.”
- Limitations. Where does it stop? “Not suitable for crampons”, “runs small, choose half a size up”. An AI assistant asked “is this suitable for...” can work with this. More on that in GEO for online shops.
- Specifications as text. Dimensions, weight, material, power, capacity, compatibility. Put them in a table in the HTML, not in an image or only in a PDF.
- Size chart. For clothing and shoes: sizes in centimetres, with an explanation of how to measure.
- What is in the box. A frequent question for electronics and sets.
Title and opening of the same product page
VoorMen’s walking boots waterproof cheap buy | veluwe walking boot | best walking boot. The Veluwe is a top-quality boot for every walker.
NaVeluwe walking boot, waterproof, men’s. A light, waterproof walking boot for daily walks on paved and unpaved paths. Not suitable for crampons. Runs small: choose half a size up.
How do you handle variants and URLs?
- A URL for every variant. In its documentation on product variants, Google asks that each variant can be preselected through its own URL, with the right image, price and availability. That can be done with parameters (
?colour=green) or with a path (/walking-boot/green). - A canonical. If variants use an optional parameter, the URL without the parameter is the canonical. If each variant has its own page, set the canonical product URL on every variant page. That is how Google describes it in its guidance on URL structure for ecommerce sites.
- Descriptive URLs.
/veluwe-walking-boot-waterproofsays more than/product/3243. - Variant names that differ. “Veluwe walking boot, green, size 43” instead of “Veluwe walking boot” three times.
Two ways to set up variants
| One page with parameters | A separate page per variant | |
|---|---|---|
| Example URL | /veluwe-walking-boot?colour=green | /veluwe-walking-boot-green |
| Canonical | The URL without the parameter | The canonical product URL, on every variant page |
| What must be right on the URL | The correct photo, price and availability for that variant | The correct photo, price and availability for that variant |
| Basket | The customer adds exactly that variant | The customer adds exactly that variant |
How do you keep price, stock and structured data in line?
- Product schema and Offer present. According to the merchant listing documentation,
name,imageandoffersare required, withprice(above zero) andpriceCurrencyin the Offer. - Recommended fields filled in.
availability,brand,gtin,sku,itemCondition,shippingDetailsand, where relevant,color,sizeandmaterial. - Price in the schema matches the page. Also during a sale or with volume discounts. Check a product that is on offer.
- Stock in the schema matches the page. Sold out in the text means sold out in the markup.
- One product block. The theme, a review app and an SEO plugin sometimes each output their own version. See which structured data does an online shop need?
- Feed matches the page. If you use Google Merchant Center, price and stock in the feed must match the site. In Share your product data with Google, Google describes how the two can drift apart.
- Markup in the initial HTML. Google recommends not loading product markup only through JavaScript.
How do you describe product photos?
- Your own sharp photos. Google writes in its image guidelines that sharp photos appeal to users more than blurry ones.
- A photo for every variant. The green boot shows green, not black.
- Alt text that describes. What is in the photo: “Green Veluwe walking boot, side view showing the tread”. Not a list of keywords; Google advises against that. See alt text.
- Short, descriptive file names.
veluwe-walking-boot-green.jpg, notIMG_4821.jpg. - Images next to the text. Google recommends placing images close to the text they relate to.
What do you do with reviews and customer questions?
- Visible on the page. According to the review snippet guidelines, ratings in your structured data must also be visible to the visitor, with the score.
- Linked to the right product. Reviews of another model or an older version do not belong there.
- Critical reviews too. A page with nothing but five stars raises questions. Reply to complaints with what you have done.
- No invented or bought reviews. Google’s general guidelines prohibit misleading markup, fake reviews included.
Customer questions belong on the product page too:
- Real customer questions on the page. From email, chat and customer service, not made up.
- The answer in the first sentence. “Yes, the boot fits with an orthotic insole. Take out the inner sole first.”
- Visible in the HTML. An expandable block is fine, but the answer has to be in the code without a click.
Google has not shown FAQ rich results since 7 May 2026; see an FAQ that helps customers, Google and AI assistants. A question block on the product page therefore helps the visitor and no longer earns an extra feature in Google.
This is how an AI assistant can use an answer from your product page:
Does the Veluwe walking boot fit with an orthotic insole?
Yes. According to Outdoorwinkel De Heide, the Veluwe walking boot fits with your own orthotic insole if you take out the inner sole. The shop also notes that the boot runs small, so choose half a size up if you are unsure.
Bronnen: deheide.example.com/veluwe-walking-boot
Which shipping, returns and business details belong there?
- Shipping costs and delivery time with the product. Not only on a separate page.
- Return period and conditions. A short summary with a link to the full returns page. Google recommends putting your general returns policy in structured data under Organization; see the return policy documentation.
- Business details within reach. The Dutch Chamber of Commerce (KVK) suggests that online sellers show their company name, KVK number, VAT number, address, email and phone number on every page, for example in the footer.
Which technical points have to be right?
- The page returns status 200. No redirect or error code.
- No noindex on a product you sell.
- Reachable through links. The product page can be found through its category, not only through your shop’s search function. See category pages that get found and help people choose.
- Text in the server HTML. The description and specifications are in the HTML the server returns, not only in tabs that load through JavaScript after a click.
- Breadcrumb. Shows where the product sits in your shop, visibly and in structured data.
How Outseen approaches this
Outseen has a standard approach for online shops on Shopify and WooCommerce. Atlas, Outseen’s own research engine, examines the public code of fetched product pages: titles, headings, HTTP responses, indexing instructions, canonicals and supported JSON-LD such as product and breadcrumb. Each finding states what was found on which URL and when. A specialist reviews the content, such as descriptions, limitations and reviews, and after a change Atlas can check again.
What does this mean for your online shop?
Do not start with the whole catalogue. Pick the products that sell best or raise the most questions, and add one product that is on offer. Sales are exactly when the page, the structured data and the feed most often drift apart.
Check one product that is on offer
- The sale price on the page is also in the structured data.
- Stock in the markup matches what the page shows.
- Your feed has the same price and stock.
- A sold-out variant is also marked as sold out in the markup.
- There is only one product block in the source code.
- When the sale ends, the price is reset everywhere.
What you find on those few products usually sits in your template or your plugins, and so on more pages. Fix it there and the fix applies to your whole shop. Which other markup an online shop needs is covered in which structured data does an online shop need?