Our methodology

Three sources. One clearer diagnosis.

Merchant Debugger compares the value you provide with structured product data and the information visible on a public product page. It points to a likely source of a mismatch, not to a guaranteed cause of Google’s decision.

What the three sources mean

Your submitted value
The price or availability you enter in the form or CSV. It should be the value you sent to Google. We do not fetch your feed or read your Merchant Center account, so check that this input is current.
Structured product data
Machine-readable JSON-LD in the page: Product and its Offer data. The checker selects a likely main product using page and product URLs, the canonical URL and title. For price it reads an offer price or lowPrice/highPrice range; for availability it reads Offer availability. This is not a complete schema audit.
Visible page value
Text detected in the rendered browser page. We rank candidates using product context, location, price-related markup and visibility. This is a best-effort reading, not every shopper’s session: variants, currency, location, consent screens and delayed JavaScript can change what appears.

Price: compare like with like

We compare the submitted price, the structured offer and the detected visible price. Use the same currency and intended variant. The checker does not convert currencies.

  1. Feed price
  2. Product/Offer price
  3. Visible price
  4. Diagnosis
Illustrative example
Feed price
€129
Product/Offer price
€159
Visible price
€159

Likely source: the submitted feed price

The two page sources agree at €159, while the submitted value is €129. Check whether your feed still sends an old price. Confirm the intended product and variant before updating it. This is an example, not a live merchant result.

A range is not one exact price

If Product offers contain lowPrice and highPrice, we check whether the submitted price is inside that range. A visible match inside the range suggests the current price is consistent, but does not verify every variant. Being inside the range alone is not enough to identify the right variant.

Try a free price check

Availability: compare the selling status

We compare your submitted status with Offer availability and the status detected in visible page text. Values are normalized to in_stock, out_of_stock, preorder or backorder. A preorder and a backorder are different states, not simply “in stock”.

  1. Feed availability
  2. Offer availability
  3. Visible availability
  4. Diagnosis
Illustrative example
Feed availability
out_of_stock
Offer availability
in_stock
Visible availability
in_stock

Likely source: the submitted feed availability

The feed says out_of_stock; Offer data and the visible page say in_stock. The page sources agree, so review the feed’s availability and stock synchronization. First confirm you are comparing the same variant.

The current visible-availability detector recognizes a limited set of English and German phrases. Choosing another interface language does not add support for every merchant language. An unrecognized status may remain unverified.

Try a free availability check

How we identify a likely source

For a simple three-value comparison, agreement between two sources points us toward the third. If all three agree, no mismatch is detected in those observations. Missing values, conflicting signals and ranges need a more cautious result. We cannot reconstruct what Google saw on an earlier crawl or prove which feed rule or app caused the difference.

From diagnosis to a next step

What we found
The values observed and how they differ.
Likely source
The source most worth reviewing, with uncertainty kept visible.
What to fix
A suggested correction to review before applying it yourself.
Where to look
The relevant feed, theme, Product/Offer markup, variant setting or app. Platform hints are added when Shopify or WooCommerce is detected.

Single checks and CSV checks use the same module-specific diagnosis. Human-readable recommendations in a result CSV use your interface language at download time; technical column names and diagnosis codes stay unchanged.

What Merchant Debugger does not do

Blocked or unverified pages

Some stores block automated inspection. We do not bypass anti-bot protections or solve access challenges. A blocked page, timeout or insufficient evidence can leave a product unverified. “Couldn’t verify” does not mean the product is wrong, and missing evidence is not a confirmed mismatch. Open the page manually and compare the values before changing anything.

Privacy, without an account

No account is required. We do not keep a permanent history of your CSV files, product URLs or results. Product data is processed temporarily; minimal payment and recovery records are kept separately. Download results before leaving the page.

Read the Privacy Policy