Merchant Center
How to Fix Availability Mismatches in Google Merchant Center
Why your stock status in Merchant Center doesn’t match your product pages, and how to fix and prevent it.
An availability mismatch means the stock status in your product data differs from what your landing page shows. Google may disapprove the product, and it says too many incorrect availability values put the account at risk of suspension.
The most common cause is timing, but a few setup choices (like using out_of_stock to hide products) also trigger it.
Short answer: Your availability value must match the landing page, structured data and checkout. Most mismatches come from stock changing on the site before the next data update. Schedule updates to match stock changes or rely on automatic item updates, use pause or excluded_destination instead of out_of_stock to hide products, then request a website check, which can take up to 12 hours.
Key Takeaways
- Availability must be consistent across the landing page, structured data, checkout and your data source.
- Timing between site and data updates is the most common cause.
- Don’t use out_of_stock to hide products; use pause (up to 14 days) or excluded_destination.
- Automatic item updates treat in_stock, preorder and backorder as compatible with in_stock.
- Request a website check after fixing; it can take up to 12 hours.
What the availability mismatch means
Google’s availability mismatch article says the availability value in your data must match your landing page. The issue shows a timestamp of when the mismatch was detected, so the status on your site may already have changed by the time you look.
The availability attribute rules go further: availability must be consistent across the landing page, structured data, checkout and your data source. A mismatch anywhere in that chain can trigger disapproval.
Availability values and what the page must show
| Value | When to use it | Schema.org values that map to it | Landing page should show |
|---|---|---|---|
| in_stock | Available to buy now | InStock, LimitedAvailability, OnlineOnly | An active buy or add-to-cart button |
| out_of_stock | Temporarily unavailable and not accepting orders | OutOfStock, SoldOut, Discontinued, InStoreOnly | “Sold out” text or a disabled buy button |
| preorder | New, unreleased products (availability_date required) | PreOrder, PreSale | The expected shipping date |
| backorder | Existing products temporarily out but accepting orders (availability_date required) | BackOrder | The expected shipping date |
| build_to_order | Vehicles only |
Variant availability must match per variant. If one size is sold out, that variant’s product in your data should be out_of_stock while the others stay in_stock, and the page should disable the unavailable option.
Common causes
- Timing. Stock sells out on the site, but the feed or app hasn’t updated yet. Google names this as a common cause.
- Using out_of_stock to hide products. Setting in-stock items to out_of_stock for a holiday, maintenance or to stop ads creates a mismatch, because the page still lets people buy.
- Variant problems. The link opens the default variant, which has different stock from the variant in your data.
- Structured data disagrees with the page. The markup still says InStock after the product sold out, or the reverse.
- Preorder or backorder not shown on the page. The data says preorder but the page has no expected shipping date.
- Caching. A cached page shows old stock status to crawlers.
Pause, excluded_destination or out_of_stock
Choosing the right attribute prevents a large share of availability mismatches. Google’s guidance is clear on each.
| Goal | Use | Why |
|---|---|---|
| Hide products briefly (for example, a short promotion change) | pause | Google supports pause for up to 14 days |
| Hide products longer, or for maintenance or holidays | excluded_destination | Removes products from chosen destinations without misstating stock |
| Stop Shopping ads but keep free listings | excluded_destination (Shopping ads excluded) | Lets free listings continue |
| Product genuinely sold out and not taking orders | out_of_stock | Matches what the page shows |
| Product discontinued | Remove it from your data | Google says not to keep discontinued products as out_of_stock |
| Seasonal or limited items | expiration_date | Ends the listing on a set date |
Don’t delete products just to hide them. Google says re-added items take significant time to show again. Use pause or excluded_destination instead.
How to confirm the cause
- Open Products > Needs attention, select the availability issue and note the timestamp and sample products.
- Check the live page for each sample: is there an active buy button, a sold-out message or a shipping date?
- Check the page’s structured data for the availability value.
- Check the value currently in Merchant Center and when your data source last updated.
- If the page and data already agree, the mismatch was likely a timing gap that has since closed.
Automatic item updates and relaxed matching
Automatic item updates can update availability from your landing page data. They are enabled by default and live in the Automations tab under Products.
For availability, Google uses relaxed matching: in_stock, preorder and backorder are considered compatible with in_stock. That reduces false mismatches when your site and data use slightly different values for products that can be ordered.
As with prices, automation is meant to correct sporadic problems for a small share of products. If stock changes more than once a day, Google suggests more frequent data updates (the Merchant API is designed for frequent changes) rather than relying on automation.
How to fix availability mismatches
Fix the data and the page
- Make the landing page, structured data and checkout agree on the real stock status.
- Update the availability value in your platform or data source to match.
- Replace any out_of_stock values used for hiding with pause or excluded_destination.
- Schedule data updates to coincide with stock updates on the site, or rely on automatic item updates for occasional gaps.
Request a website check
Google says requesting a website check after fixing speeds up reapproval. Otherwise Google reviews the product automatically later. The check can take up to 12 hours, and you can’t submit a new request during that time.
If the issue persists after the check and you are confident the data is correct, use I disagree with the issue > Request review. Google notes there is sometimes a limit on the number of reviews, which is stated on the issue. See how to prepare for a review.
Platform notes
On Shopify and WooCommerce, stock status normally syncs from the store’s inventory. Check that inventory tracking is on for each variant and that the Google app or extension is syncing. See how to manage out-of-stock products for platform-specific options.
Preventing availability mismatches
- Match the update frequency of your product data to how fast stock changes.
- Render Product structured data in the server HTML so it reflects real stock.
- Use pause, excluded_destination and expiration_date for their intended purposes.
- Remove discontinued products rather than leaving them out_of_stock.
- Show expected shipping dates on preorder and backorder pages.
- Spot-check a few low-stock products each week.
When to get help
If mismatches keep returning, affect many products, or appear alongside price mismatches, the cause is usually in how data flows from the store to Google. Our disapproval service traces and fixes that flow. For broader problems, see the product disapprovals guide.
Frequently asked questions
Can I set products to out of stock to stop them showing in Shopping ads?
No. Google says not to use out_of_stock to hide in-stock items. Use pause for up to 14 days, or excluded_destination to remove products from Shopping ads while keeping other destinations.
How long does the website check take after fixing availability?
Google says it can take up to 12 hours, and you can’t submit a new request during that time.
Does preorder count as in stock?
For automatic item updates, Google treats in_stock, preorder and backorder as compatible with in_stock. Preorder and backorder items still need an availability_date and an expected shipping date on the page.
Can availability mismatches get my account suspended?
Google says too many incorrect availability values put the account at risk of suspension.
What should I do with discontinued products?
Remove them from your product data. Google says not to keep them as out_of_stock.
Need help with availability issues?
We find where stock data falls out of sync between your store and Merchant Center and fix it at the source.
Sources
- Google Merchant Center Help — How to fix: Mismatched product availability
- Google Merchant Center Help — Availability [availability]
- Google Merchant Center Help — Automatic item updates
- Google Merchant Center Help — The Needs attention tab
- Google Merchant Center Help — Request a review
- Google Search Central — Merchant listing structured data
Last reviewed October 10, 2026 against the official documentation listed above. Google changes Merchant Center features and policies regularly — always confirm details in your own account.
