FreeMarkup tool

E-commerce Schema Validator

Enter the URL of a product page and the validator fetches it, pulls out the JSON-LD blocks and reviews every Product entity it finds. Each product gets its own card with blocking errors in red and softer warnings in amber, so you can see what to fix first.

Reads JSON-LD blocksErrors and warnings splitOne product URL per run

Updated · by the Linkstonic team

linkstonic.com/tool/schema-validator-ecommerceLive
How it works

What the validator looks at

The fetch and the checks run on Linkstonic's server, and the page shows what comes back. These are the behaviors you can rely on.

01

One page per run

Paste a single product page URL, the kind with one item and a buy button. Leave the box empty or at the https:// placeholder and you get a "Product page URL required" message. Category pages with many products can work, but results are easier to read one product at a time.

02

JSON-LD only

The tool extracts script blocks of type application/ld+json and looks for Product entities inside them. Markup written as microdata or RDFa in the HTML attributes isn't part of this check, so a store using those formats can come back empty even when Google reads its markup fine.

03

Final URL

Above the results you get a count of Product entities found and a link to the final URL that was checked. If that link differs from what you typed, the page redirected, and you should check that the redirect target is the product you meant to test.

04

Errors vs warnings

Each product card shows its name, or "Product #1", "Product #2" if it has none. Red bullets are errors, amber bullets are warnings. When a product has zero errors you see "No blocking errors flagged." even if warnings remain, so read the amber list too.

05

Nothing found

"No Product JSON-LD found." can mean the page has no markup, uses microdata, or adds its JSON-LD with JavaScript after load, which a plain server fetch may not see. Check the page in Google's Rich Results Test, which renders JavaScript, before assuming it's missing.

Worked example

A typical product page result

This is an illustrative result for a made-up store on example.com. It shows how a page with one Product block and a couple of soft issues reads in the tool.

Input
https://store.example.com/product/trail-runner-2
Output
1Product entity found
Trail Runner 2Product card name
0Errors
2Warnings
No blocking errors flagged.Status line on the card

The green line appears because there are no errors, but the two amber warnings still sit on the same card. On a real store those are worth fixing before a sale, when product listings get the most attention.

Use cases

Who runs product markup checks

The same check answers different questions depending on who's asking.

Store owners after a theme change

Theme and plugin updates are the most common way product markup breaks. Run a couple of product URLs straight after any update, before the next Search Console report surfaces the problem days later.

Developers shipping templates

Check a staging product page before a release goes out. The per-product cards make it easy to see when a change has added a second Product block or dropped a field.

SEO consultants auditing a shop

Sampling one product from each template gives a quick picture of markup health on a new client's store. The error and warning lists translate directly into tickets for the dev team.

Reference

Product properties Google asks for

Google's product documentation splits requirements between product snippets and merchant listings. These are the properties we check first on any store.

PropertyWhat it holdsWhy it matters
nameThe product's nameRequired for every Product rich result
imageOne or more product image URLsRequired for merchant listing experiences
offers.priceThe current price as a numberNeeded for price to show in search
offers.priceCurrencyThree-letter ISO 4217 code, such as USDPairs with price; must match the page
offers.availabilityA schema.org value such as InStockShows stock status in results
gtin / sku / mpnProduct identifiersHelps match the page to the exact product
aggregateRating / reviewRating data from real reviews on the pageOnly eligible when reviews are visible

Google updates these requirements from time to time. Check its Product structured data docs before a big template change.

E-commerce Schema Validator illustration: a curly braces icon next to a sample result card with product entity found and product card name rows
E-commerce Schema Validator, sample result
Our take

Where product markup goes wrong

Most broken product markup isn't missing. It's out of date. A theme update changes the price format, a sale price shows on the page while the JSON-LD still has the old one, or an out-of-stock item is still marked InStock. Google expects markup to match the visible page, and mismatches like these can cost a store its product rich results.

The second problem is duplication. An SEO plugin outputs one Product block, the theme outputs another and a reviews app adds a third. The validator's product count shows this straight away. Two or three Product entities for a single item usually means you should turn one or two sources off.

AI shopping answers in ChatGPT, Gemini and Google's AI Mode pull product facts from feeds and pages together. When your Merchant Center feed, your JSON-LD and your visible price disagree, the answer can show the wrong price or skip your store. I'd treat consistency across all three as the real goal, and the validator as one of the checks.

Practical tips

A quick product markup audit

You don't need to test every SKU. A sample of the right pages finds most template problems.

  1. 01

    Test one product from each template: simple product, product with variants, and a bundle if you sell them.

  2. 02

    Include one out-of-stock item and one on sale, since those are where values most often drift.

  3. 03

    Compare the price in the results against the price a shopper sees, including tax display.

  4. 04

    If the product count is more than one, find which plugin or app adds each block.

  5. 05

    Confirm the final URL matches the canonical URL of the product page, especially for variant URLs with query strings.

E-commerce Schema Validator tips illustration: a checklist card that starts with "Test one product from each template" and "Include one out-of-stock item and one"
E-commerce Schema Validator, checklist
Our customers

How we help marketers win

01techventuresShare of voice
02northlineReporting time
03arclabsAI mentions
FAQ

E-commerce Schema Validator questions

01Why does the validator say no Product JSON-LD was found?

Either the page has no JSON-LD Product block, it uses microdata or RDFa, or the markup is added by JavaScript after the page loads. This tool reads JSON-LD only. Run the URL through Google's Rich Results Test to see what Google renders.

02What is the difference between an error and a warning?

Errors are problems the checker treats as blocking and are shown in red. Warnings, in amber, are issues that don't block the result but are worth fixing. A product with warnings and no errors still gets the green "No blocking errors flagged" line.

03Why are two or three products listed for one item?

Several sources are probably outputting Product markup at once, such as your theme, an SEO plugin and a reviews app. Keep one complete block and disable the others so search engines get a single, consistent description.

04Is this the same as Google's Rich Results Test?

No. It's a quick focused check on Product JSON-LD. Google's Rich Results Test renders JavaScript and applies Google's own eligibility rules, so always run it before releasing template changes.

Beyond one-off checks

See how your pages do in Google and AI answers

Linkstonic tracks rankings, audits your site and shows whether ChatGPT, Gemini and Perplexity mention you. The free plan needs no credit card.