og:price tags and Google Shopping: keep every price in sync
og:price and product:price are Open Graph tags written for link previews, while Merchant Center’s structured data help is written around schema.org Product markup. Feed both from one price, so no preview, markup or page disagrees.
Why this matters
Google's “About structured data markup for Merchant Center” page is about schema.org: “You can use schema.org structured annotations to allow Google to reliably retrieve up-to-date information directly from your website.” Its requirements are short and strict: “Structured data must match the values that are shown to the customer.” And: “Your landing page can't change based on information about the customer, such as if you adapt prices based on a customer’s IP address or browser type.”
Open Graph tags do a different job. They set the title, image and price a social network or messaging app shows when someone shares your link, and they sit outside the schema.org markup Merchant Center’s help talks about. That is exactly why they drift: nobody looks at them until a shared link shows last month’s sale price.
Where they matter for Shopping is consistency. Google's price mismatch fix page lists “Structured data markup on your website is incorrect” among the usual causes of a mismatch, and the “Price [price]” page says “Automatic item updates use the Schema.org microdata on your landing page to help keep your data fresh.” A page that declares one price in its markup, another in its Open Graph tags and a third on screen is asking for trouble with at least one of them. The safe setup is one price field in your platform feeding the visible price, the Product structured data and the Open Graph tags together. See JSON-LD Product schema for the markup and Open Graph metadata for the rest of the tags.
The free scan reads the price your product page declares and the price it shows. It flags a product page whose structured data has no price, and reports a structured data price that disagrees with the visible price as a failure. It does not see your Merchant Center data, so the submitted price is a manual comparison. The price checks are all on the misrepresentation checker.
Typical evidence
A correct number wearing the wrong currency
Line up og:price against the JSON-LD price and the visible page, and look for three-way mismatches. The currency case is the one people miss — a right-looking amount tagged in the wrong currency resolves to a different price, and won't match your target country.
The public signals this check looks for:
A shared link shows last month’s sale price because the theme writes og…
A shared link shows last month’s sale price because the theme writes og:price from a cached value.
product
product:price:amount carries the price without tax while the page shows it with tax.
The Open Graph tags describe the default variant while the link was for another
The Open Graph tags describe the default variant while the link was for another.
A currency app changes the visible price, but the Open Graph price and currency stay in th…
A currency app changes the visible price, but the Open Graph price and currency stay in the base currency.
An app removed from the theme still writes its own price tags into the page head
An app removed from the theme still writes its own price tags into the page head.
What it looks like once it is right
The shop removes the old app’s tags and lets the theme write the Open Graph price, its currency and the Product structured data from the same price field. Page, markup and link preview all say £18 GBP.
Common mistakes
Common mistake
Fix checklist
One price field, three surfaces, no drift
The cure is mundane and total: a single source of truth feeds the visible page, the JSON-LD schema and the og: tags. If all three read from one field, no two of them can ever be played against each other.
Questions merchants ask
Does Google Shopping use og:price?
Google's Merchant Center help on structured data is written around schema.org Product markup, and its automatic item updates use the schema.org markup on your page. Treat Open Graph tags as link-preview data, and keep them in line with the same price anyway.
What is the difference between og:price and product:price?
Both are Open Graph properties that link previews use to show a price; which ones appear depends on your platform or theme. Whatever your theme writes, the amount and currency should match the visible price for the same variant.
Which price markup matters most for Merchant Center?
The Product structured data. Google's page on structured data for Merchant Center says it must match the values shown to the customer, and its price mismatch fix page lists incorrect structured data markup among the usual causes of a mismatch.
Remediation
Risk signal
Similar cases
Sources
Last reviewed 23 Sep 2026.
That is one issue. The library documents 134.
The free scan lists what it finds on your store. The paid report adds the affected pages, captured evidence and step-by-step fixes. Start free, with no account needed.