← Back to blog
6 min readBy Feedyio

Price and stock accuracy: why hourly feed sync keeps your account out of trouble

Your Shopify store changes prices and stock all day - a flash sale here, a sold-out variant there. The feed you sent this morning is already out of date by lunch. That gap between what your feed says and what a shopper sees on the product page is the single most common reason Google disapproves products, and if it keeps happening it can suspend the whole account. This article explains what Google actually checks, why fast-moving catalogs break feeds, the layered defense that keeps you safe, and how a frequent feed refresh holds your numbers steady everywhere you list.

What "inaccurate price/availability" really means to Google

When Google Merchant Center flags "Inaccurate price" or "Inaccurate availability", it is not judging your prices. It is comparing two things and finding they disagree: the price and availability values in your feed versus the price and stock status it reads on your landing page. If the feed says €29.90 and the page says €24.90, or the feed says in_stock while the page shows "Sold out", the offer is inconsistent - and an inconsistent offer is a bad shopping experience.

Google's own guidance is direct: fix it by keeping your feed and your site in sync, enabling automatic item updates, and using correct structured data on the landing page. For catalogs that change quickly, it recommends pushing updates through the Content API rather than waiting on a once-a-day file. The theme throughout is the same - the closer your feed tracks reality, the fewer disapprovals you collect.

Why sales and fast-moving stock break feeds

A feed is a snapshot. It is accurate the moment it is generated and slowly drifts out of date until the next refresh. For a slow catalog that drift barely matters. For an active store it is a problem, because the things that move fastest are exactly the things shoppers click:

  • Time-boxed sales. You launch a 24-hour promo at 09:00. If your feed only rebuilds at midnight, every offer advertises the old, higher price for nine hours - and the new, lower price for the rest of the day after the sale ends. Both windows are mismatches.
  • Fast-selling SKUs. A popular variant sells out mid-afternoon. Until the next refresh your feed still says in_stock, so Google keeps showing it, shoppers click, and they land on a "Sold out" page. That is wasted spend and an inaccurate-availability flag waiting to happen.
  • Price rules and currency. Automatic discounts, market-specific pricing, and rounding can all change the displayed price without anyone touching the product manually. If the feed does not recompute on the same schedule, it lags.

The pattern is consistent: the more your store changes, the shorter the window in which a daily feed is actually correct.

The three layers of defense

No single setting fixes this. Think of it as three layers that reinforce each other, so that when one drifts, another covers the gap.

  1. Frequent feed sync. This is the foundation. The more often the feed regenerates from live store data, the smaller the drift window. An hourly refresh shrinks the worst case from "wrong for most of a day" to "wrong for at most an hour" - and usually much less, because the next sync catches it.
  2. Correct structured data on the page. Add schema.org markup to your product pages with matching price, priceCurrency, availability and condition. This is what Google reads when it crawls the landing page, so it must show the same numbers a customer sees. Structured data is a safety net, not a substitute - it does not replace regular feed updates, but it gives Google a second, consistent source to check against.
  3. Automatic item updates. With this enabled in Merchant Center, Google reads the structured data from your landing page and corrects small discrepancies on the fly, keeping offers active instead of disapproving them while you fix the feed. It works precisely because layers one and two are in place: the page data is accurate and matches.

Run all three and a single late refresh stops being a disaster. The feed is rarely far off, the page markup backs it up, and automatic updates patch the rest.

From warning to suspension: how it escalates

Disapprovals are not binary. Google tends to escalate, and understanding the steps tells you why you should fix mismatches early rather than ignore the first email.

  • Warning with a deadline. The first time Google notices a price or availability mismatch, it usually warns you and gives you a window to fix it before products are removed.
  • Disapproval. If the mismatch persists, the affected offers are disapproved and drop out of Shopping. Google may also preemptively disapprove offers it can no longer trust.
  • Account suspension. Repeated or unresolved misrepresentation can suspend the whole Merchant Center account - not just the bad offers. After a suspension you request a re-review, and if it fails, there is typically a cool-down period before you can try again. (Exact day counts change; verify the current numbers in Google's policy before quoting them.)

The lesson is to stay in the first row. Accurate, frequently refreshed data means you rarely trip a warning at all, so escalation never starts.

Why this matters beyond Google

Google gets the headlines because suspensions are dramatic, but the same accuracy problem costs you everywhere you list. Comparison sites and marketplaces all rank on a mix of price and reliability, and stale data quietly pushes you down.

  • Comparison sites such as Heureka and Zboží.cz read the availability and delivery fields in your feed to decide placement and to show the right delivery promise. A feed that claims same-day shipping on a sold-out item erodes the trust those platforms measure.
  • Marketplaces score listing quality, and an offer that mismatches the live page - wrong price, phantom stock - hurts that score and, in the worst case, gets the listing pulled.

So the work you do to keep Google happy pays off on every other channel at the same time. One accurate feed, many satisfied platforms.

How Feedyio helps

Feedyio is a Shopify app that builds and refreshes your product feeds for Google and 130+ other channels. It does one job well: it keeps the product feed accurate and fresh - it reads your live store data and regenerates the feed on an hourly schedule, so price changes, new sales and sold-out variants flow through within the hour instead of waiting for a manual export. To be clear about scope: Feedyio generates the feed that each channel reads; it is not a marketplace listing API and does not sync orders back into your store. What it guarantees is that the feed every channel pulls reflects what is actually on your site, which is exactly the layer that prevents inaccurate-price and inaccurate-availability disapprovals. Pair that frequent refresh with structured data on your pages and automatic item updates in Merchant Center, and you have all three layers of defense working together.

Want your prices and stock to match everywhere, automatically? Try Feedyio free on the Shopify App Store.