Why don’t the prices in the feed match my website?

Kilian Müller
Kilian MüllerOwner of 1hold.de · Google PartnerUpdated
Google Merchant CenterGoogle Certified Specialist

Feed prices usually differ from your website because the product data in Merchant Center is updated less often than the shop, because the structured data on the product page shows a different price, or because the sale price period or currency is set incorrectly. Googlebot regularly crawls your product pages and compares the price in the HTML or the structured data with the price attribute in your product data. If they do not match, the product can be disapproved, and repeated mismatches can lead to an account suspension.

The deciding factor is the price Googlebot sees in the HTML the server delivers, not the one a visitor sees after the page has fully loaded. Prices that are only filled in by JavaScript after loading can therefore cause mismatches.

Why does the price in the feed differ from the website?

  • Different update times. The shop changes a price, but the product data in Merchant Center is only uploaded once a day. Until the next upload, the two values differ.
  • Wrong or outdated structured data. Google uses the Product and Offer markup to read prices. If a plugin writes an old price, a net price or the price of a different variant into the markup, Google sees a mismatch.
  • Price added by JavaScript. If the price only appears after the page has loaded, Googlebot may not find it in the HTML.
  • Bots see a different price than users. Prices that depend on location, customer group, cookies or a pre-selected variant can differ between the crawler and a visitor.
  • Sale price with wrong period. If sale_price_effective_date has the wrong start date or time zone, the sale price is shown when it is not active, or the other way round.
  • Currency or quantity. The price in the product data must use the currency of the target country. For minimum order quantities, the total price for the minimum quantity must be submitted.

How do I fix the mismatch?

  1. Find the affected products. In Merchant Center, open the products list, select the tab for products that need attention and filter for the price issue. The notification shows when the mismatch was found.
  2. Check the product page with the Rich Results Test. It shows the price and currency Google reads from the structured data. Compare them with the price in the feed.
  3. Correct the source. Map the correct price field from the shop to price, use sale_price with a correct sale_price_effective_date for discounts and make sure price and currency in the markup match the visible price.
  4. Update more often. If prices change frequently, schedule more frequent product data uploads or use the Merchant API, which Google recommends for frequent changes.
  5. Wait for the next crawl. According to Google, Googlebot crawls disapproved products again within a few hours or days. If the price matches, the product is approved again.

Do automatic item updates help?

Merchant Center can update price, sale price, availability and condition automatically from the data on your product page. Google describes this as a way to fix occasional mismatches for a small share of products, not as a replacement for current product data. For prices that change more than once a day, automatic updates may not work, and the product may be disapproved instead.

Make sure the price is in the HTML and in the structured data, and that both match the feed exactly. Update the product data as often as the shop prices change, and use automatic item updates only as a safety net.

Sources

Want your product data and shop prices to stay in sync? We check your feed, your structured data and your update schedule and fix the cause of the mismatches. Book a free intro call or read more about our Google Ads services.

Need personal advice?

Our Google-certified experts are happy to help – free and without obligation.

Book a meeting