Why does Google keep pulling my preorder products from Shopping?
Preorder items keep vanishing from Google Shopping because Shopify's default schema, your product feed, and the actual page don't agree on availability — here's how to line them up.
What's going on
Merchants selling preorders on Shopify frequently see those specific listings pulled from Google Shopping or flagged in Merchant Center, even though the rest of their catalog is fine. The pattern is usually the same: Google compares what your product feed says (availability = preorder or backorder), what your structured data (JSON-LD) says, and what a real shopper sees on the live product page — and when any two of those disagree, Google treats the listing as inaccurate and removes or disapproves it rather than risk showing a shopper false stock information.
Shopify's out-of-the-box theme schema doesn't have a native preorder concept — it only ever outputs InStock or OutOfStock, based on whether the variant has inventory and whether continue-selling-when-out-of-stock is enabled. So a store that uses tags, a metafield, or a preorder app to let customers buy ahead of stock often ends up with a page that visually says something like "Preorder — ships August 15" while the underlying schema.org markup still says plain InStock or OutOfStock. Google's crawlers pick up on that mismatch, and separately, Merchant Center has its own strict rules for the availability_date field whenever a feed uses the preorder or backorder value.
Why it happens
The root cause is that three separate systems have to describe the same product state consistently — Shopify's inventory and continue-selling setting, your product feed's availability and availability_date fields, and your theme's schema.org JSON-LD — and Shopify doesn't wire these together automatically for preorders the way it does for simple in-stock and out-of-stock items.
Google Merchant Center also applies stricter rules specifically to preorder and backorder listings: availability_date is required, must be a real future date and time, and generally must stay under a year out. A missing or vague date, or a landing page that doesn't clearly show an expected ship date, is a common trigger for disapproval even when the rest of the listing is accurate.
Because preorder logic is often bolted on through a theme edit, a tag, or a third-party app rather than built into Shopify's core, it's easy for one piece — say, a feed app — to get updated while the schema markup or storefront copy lags behind, reintroducing the mismatch after it was previously fixed.
4 ways to fix it
Get your structured data to actually reflect preorder status
Shopify's default theme JSON-LD only outputs InStock or OutOfStock, driven by inventory tracking and whether continue-selling-when-out-of-stock is on — there's no native preorder state in the stock schema markup. If you mark items as preorder through tags, a metafield, or a preorder app, you'll need a theme customization that swaps the schema availability value to the PreOrder schema.org type whenever that condition is true, along with an expected ship or release date. Test the change on a live preorder product page with Google's Rich Results Test before asking Google to re-crawl it.
Set availability and availability_date correctly in your product feed
In Google Merchant Center, any product using the preorder or backorder availability value must also include availability_date as a specific future date and time, and it generally can't be more than a year out — a missing or open-ended date is one of the most common disapproval triggers. Check how your feed source handles preorder items: Shopify's native sales channel tends to follow your inventory policy rather than a dedicated preorder flag, so many merchants end up using a metafield or a feed app to set availability and availability_date explicitly, then keep that date updated as the real ship estimate changes.
Make sure your feed, structured data, and product page all agree
Google disapproves listings when sources disagree — for example, the feed says preorder but the page or schema says in stock, or vice versa. Because your inventory settings, your feed's availability field, and any manual schema edits are three separate systems, updating one without the others is the most common way a preorder listing silently disappears from Shopping. After making a fix, check that specific product's status in Merchant Center's Diagnostics tab for the actual disapproval reason instead of guessing, and only request a review once the data is consistent everywhere a shopper or Google could see it.
Check that your inventory settings aren't contradicting your preorder logic
If continue-selling-when-out-of-stock is off, Shopify will treat a zero-inventory preorder product as out of stock, even while your theme displays a preorder message to customers — which conflicts with a feed that says preorder. Confirm your inventory tracking and continue-selling setting match the preorder behavior you actually want shown to Google, especially if a preorder app is managing part of this logic at the variant level.
Bottom line
This is a data-consistency problem, not an arbitrary Google penalty: Google needs your feed's availability and availability_date, your theme's structured data, and what a shopper actually sees on the page to all agree that an item is a genuine, dated preorder. Most removals clear up once those three sources are reconciled and you request a fresh Merchant Center review rather than resubmitting repeatedly without changing anything. If preorders are a recurring part of your catalog, a dedicated preorder or inventory-schema app is usually more durable than one-off theme edits, but that's a catalog-management decision independent of any particular vendor.
Browse the rest of the problem library, run a free storefront scan to catch issues like this automatically, or email us and we'll work out a custom solution for it.