WooCommerce SEO Health Check
Scan live WooCommerce product URLs to inspect Schema.org Product JSON-LD, price/stock snippets, Open Graph tags, and search indexability.
WooCommerce Product SEO: Schema, Rich Results & Indexability
1. Why Product-Level SEO Is Different From Page-Level SEO
A WooCommerce product page competes for clicks against dozens of visually similar listings in Google Shopping-style search results. Product structured data is what lets Google differentiate a plain blue link from a rich result showing price, star rating, and availability directly in search results â and rich results consistently see higher click-through rates than plain listings for commercial-intent queries. Unlike blog-post SEO, which is mostly about content and backlinks, product SEO is heavily dependent on getting a handful of technical elements â schema, canonical tags, Open Graph images â correctly and consistently generated across an entire catalog, often thousands of near-identical pages.
2. How the Health Score Is Calculated
The score starts at a 30-point baseline and adds points for each detected element: Product schema (+25, the single largest factor, since it's the prerequisite for any rich result), price schema (+15), availability schema (+10), an Open Graph image (+10), a canonical tag (+10), and a title tag length in the 30-60 character range that Google typically displays without truncation (+5) â capped at 100. The weighting reflects real impact: Product schema alone is worth more than every other factor combined because without it, none of the richer search features (price, stock, rating display) are possible regardless of how well-optimized everything else is.
3. How to Use This Scanner
- Paste the full URL of a live WooCommerce product page (not the catalog or category page â this checks the individual product template).
- Run the scan and review which of the five checks passed or failed.
- For any "MISSING" result, check which SEO plugin your theme/store uses (Yoast, RankMath, SEOPress, or WooCommerce's own basic output) and confirm Product schema generation is actually enabled for the product post type.
- Re-scan after making a fix to confirm the change took effect â plugin caching can sometimes serve stale HTML to the first request after a settings change.
4. Common WooCommerce Product SEO Mistakes
- Relying on a theme's built-in, incomplete schema. Many page-builder themes output partial Product schema (name and image, but no price or availability) that passes a casual glance but fails to qualify for rich results.
- Duplicate canonical issues on variable products. Product variation URLs (with query-string attribute selections) should canonicalize back to the parent product page â a missing or self-referencing-incorrectly canonical here creates duplicate-content signals across what search engines see as many near-identical URLs.
- Missing og:image on out-of-stock or seasonal products. Products with dynamically swapped feature images (seasonal variants, sold-out placeholders) sometimes fall back to a generic image or none at all in the Open Graph tag specifically, even though the on-page image looks correct.
- Title tags that don't fit Google's display width. Titles well over 60 characters (common when a plugin auto-appends "| Store Name | Category" to every product title) get truncated in search results, often cutting off the actual product name.
5. Who Should Use This Tool
Store owners auditing their own catalog for missed rich-result opportunities, agencies performing a WooCommerce SEO audit for a client, and developers verifying that a new theme or SEO plugin configuration is actually outputting schema correctly before rolling it out store-wide.
6. Limitations
This scanner checks the raw server-rendered HTML only â it does not execute JavaScript, so schema or meta tags injected client-side after page load won't be detected even if a real browser (or Google's renderer) would see them. Detection uses pattern matching for key schema properties rather than a full JSON-LD parse-and-validate pass, so it can miss subtle structural errors that a dedicated validator like Google's Rich Results Test would catch. A passing score here means the basic elements are present and detectable â it is not a guarantee of rich-result eligibility, which Google ultimately decides algorithmically.
Pre-render WooCommerce Product SEO for instant indexing
Nimbica builds full static HTML with pre-baked JSON-LD Product Schema to deliver 100% reliable indexing for search engine bots.
Frequently Asked Questions
Why is Product Schema.org markup crucial for WooCommerce SEO?
Schema.org Product markup gives Google structured data it can use to show rich snippets in search results â price, stock status, and star ratings alongside your listing. Google is selective about which pages actually get rich-result treatment, but pages without valid Product markup are never eligible for it at all, so the schema is a prerequisite, not a guarantee.
Does this tool execute JavaScript when it scans my product page?
No. The scan fetches your page's raw server-rendered HTML only â it does not run a headless browser or execute any client-side JavaScript. If your Product schema or meta tags are injected by a JavaScript SEO plugin after page load rather than rendered server-side, this scanner will not see them even though Google's renderer might. Most WordPress SEO plugins (Yoast, RankMath, SEOPress) output schema server-side in the initial HTML, which is what this tool checks for.
What exactly happens to the URL I submit?
Your server (Nimbica's backend) fetches the URL you enter, over HTTPS with an 8-second timeout, identifying itself as "NimbicaBot/1.0" in the User-Agent header. The page is not stored, and the check runs once per submission â it's a scan, not a monitor. Private, non-public, or restricted URLs (localhost, internal IP ranges, etc.) are rejected before any fetch happens.
How does the scanner detect Product schema â does it validate the full JSON-LD structure?
It uses pattern matching to check for the presence of key schema properties (`"@type": "Product"`, a `price` field, an `availability` field) rather than a full JSON-LD parse-and-validate pass. This means it can correctly flag "schema present" even if some optional fields are missing or slightly malformed, and it can't catch every possible JSON-LD syntax error. For a full structural validation, pair this with Google's Rich Results Test or our own Structured Data Preview tool.
