Skip to content
Back to blog

GMC Products Stuck on Pending: Why It Happens and How to Fix It

Your Google Merchant Center products have been pending for days? Here's what pending actually means, why it takes longer than the docs claim, and how to clear the backlog without resetting the review clock.

Alex DiazFounder, SnowPipeMay 7, 20269 min read
google-merchant-centertroubleshootingproduct-feedsguide

You submitted a fresh feed to Google Merchant Center, watched the upload finish cleanly, and now 80 percent of your catalog has been sitting on pending for three days. The Diagnostics tab is empty. Support docs say "usually within 3 to 7 business days." You're past that window. Customers are searching for your products and not seeing them.

Pending is not an error. It's not a bug. But it is the most common reason new Shopping campaigns sit dead for a week and a half, and the official docs underplay how long it actually takes for a fresh account.

This post covers what pending really means, why it stretches past the documented timeline, the three things that actually speed it up, and the resubmit anti-pattern that quietly resets the clock on half your catalog.

What "pending" means in GMC

Pending means Google has accepted the product into the catalog but has not yet decided whether it can show in Shopping. Three checks happen during this window:

  1. Policy review. Google compares the product against Shopping policies, looking for prohibited items, restricted categories, and content that needs human review.
  2. Trust scoring. Google evaluates your store's pattern of feed submissions, return policy publication, business contact verification, and historical disapproval rate.
  3. Landing page crawl. Google's bot fetches the product URL, verifies the price and availability match the feed, checks the page renders without redirects, and confirms the structured data.

All three have to pass for a product to leave pending. Any one of them can stall a product indefinitely without surfacing in the Diagnostics tab, because Diagnostics only shows confirmed issues, not in-flight checks.

The real timeline (not the docs version)

The Merchant Center docs say "products typically appear in Shopping ads within 3 to 7 business days." That number is the median for a trusted account with a clean feed history. For a new account or a freshly verified domain, the realistic floor is 7 to 14 business days, and 21+ days is not unusual if any of the three checks above raise a soft flag.

Trust accrues quietly. Once your account has been live for a few months with consistently low disapproval rates, the same submission that took 14 days as a new merchant will clear in 24 to 48 hours.

This means the "stuck on pending" experience is mostly a new-account problem. If you've been submitting feeds to GMC for a year and you suddenly see widespread pending across a recently uploaded batch, that's a different signal worth investigating.

Why it takes longer than expected

These are the patterns that consistently extend the pending window beyond the documented range.

1. Mixed disapprovals and pending in the same feed

If 30 percent of your products are disapproved, the remaining 70 percent that look healthy will still pend longer. Google interprets a high disapproval rate as a signal that the merchant is still figuring out the policy, and slows the review on everything else from that account until the rate improves.

Fix: Clear all disapprovals in Diagnostics before assuming the pending products are the problem. Sort by issue type, fix the most common categories first (usually GTIN, image, or price mismatch), and resubmit the corrected products only, not the entire feed (more on that below).

2. Missing or wrong productType

productType is your store's own categorization, separate from googleProductCategory. Google uses both during the review: googleProductCategory for taxonomy matching and productType as a sanity check. Products without a productType are routed to a slower default-priority review queue.

Fix: Set productType on every product. Use a hierarchy with > separators, like Apparel > Women's > Outerwear > Coats. The Google product data spec covers the format. Don't repeat googleProductCategory; use your own taxonomy here.

3. Landing page redirect or session check

If the product URL in your feed redirects (even to a clean canonical), or if the page requires a session cookie, Google's crawler treats the product as ungated and delays the review until it can confirm price and availability.

Common causes: geo-redirects (US visitor sent to /en-us/), cart-required pages, age gates, A/B test routers, paywalls.

Fix: Test every product URL with curl -I -A "Googlebot" from outside your CDN. The first response should be 200, not 301 or 302. If you have a geo-redirect, exclude Google's IPs or add X-Robots-Tag: noindex to the redirect target so the crawler follows the original URL.

4. Price or availability mismatch with the landing page

Google compares the feed price to the price extracted from your product page's structured data. A mismatch (even a few cents from currency rounding) flips the product into a soft-pending state until the next crawl confirms.

Fix: Make sure the feed price exactly matches <meta itemprop="price"> or your JSON-LD "price" field. Currency code matters too: a feed in USD against a page tagged USD (with a trailing space, this happens) will mismatch.

5. New domain with no policy publication

If your domain has been live for less than 30 days, or your store doesn't have visible Shipping, Returns, and Refund pages linked in the footer, Google adds a soft delay to the review until the trust signals catch up.

Fix: Publish Shipping, Returns, Privacy, and Terms pages. Link them from the footer. Verify your business contact info matches the domain registration. Add the structured data for Organization and WebSite to your homepage.

6. Identifier conflicts with another merchant

Google deduplicates products globally by GTIN. If two merchants submit the same GTIN with conflicting attributes (different brand, different productType, different image), both go into extended pending until Google can sort out which submission is the canonical one.

Fix: Verify your GTINs with the GS1 check digit calculator. For unbranded or store-exclusive products, set identifier_exists to false and provide brand plus mpn instead.

The resubmit anti-pattern

Here's the trap: you see products on pending, you panic, you re-export the feed and resubmit. Some merchants do this daily. It is the single most common reason a healthy feed stays in pending limbo.

Each resubmit can reset the review clock on every product whose attributes changed since the last submission, even by a single character. Title rewrites, description tweaks, price updates, even a change to gtin formatting (with vs without leading zeros) trigger a fresh review. If you resubmit during the review window, you push every product whose attributes shifted back to day zero.

The rule: during the initial review window for a new account, do not push feed updates more often than once every 3 days. After the first batch crosses out of pending, normal cadence (hourly or per-change webhook) resumes safely.

How to monitor pending products without making it worse

The right workflow during the pending window:

  1. Open ProductsAll products in Merchant Center.
  2. Filter by Status = Pending.
  3. Sort by Updated date ascending. The oldest pending products are your bellwether: if they don't move within 14 business days, something specific is wrong.
  4. Click into a few oldest pending products and look for a yellow banner. Sometimes a non-blocking warning lives there but doesn't surface in the Diagnostics tab. These banners are gold; they tell you exactly what's blocking the review without affecting the official disapproval rate.
  5. Don't click "Refresh" or "Re-fetch" on individual products unless the banner explicitly says to. Manual refetch counts as a resubmit for that product.

What good looks like

For an established account with a clean feed:

  • Pending → Approved transition: 24 to 72 hours for 95 percent of products
  • Pending tail (the last 5 percent that take longer): 5 to 7 business days
  • Sustained disapproval rate: under 3 percent

For a brand-new account with the same feed quality:

  • Pending → Approved transition for the first batch: 7 to 14 business days
  • After the first 30 days of clean operation: the established-account numbers above

If you're outside those bands by a wide margin, the cause is almost always one of the six patterns earlier in this post, not a Google bug.

How SnowPipe handles this

SnowPipe syncs Shopify catalogs to Google Merchant Center via the Merchant API (the v1 successor to Content API for Shopping). Two design decisions in SnowPipe directly reduce pending-window pain:

Streaming validation before submission. SnowPipe runs every product through a pre-flight check (GTIN check digit, image URL reachable, price format, required Google attributes present) before any data leaves the platform. Products that would otherwise enter GMC and immediately disapprove are flagged in the SnowPipe UI before the API call. This keeps your account-level disapproval rate low, which directly improves the trust score that governs how fast pending resolves.

Multipart batch writes to Merchant API v1. SnowPipe submits products in batches of 1000 per request via the multipart wire format. Google's per-call latency is constant, but the throughput difference vs per-product writes is 5 to 10x. For a 50,000-product catalog this is the difference between a 5-hour push and a 35-minute push, and it stays inside Google's per-day update quota with room to spare.

You can see the Products tab inside any GMC connection in SnowPipe and watch pending drain in real time, with deep links into the GMC dashboard for any individual product.

Summary

Pending is not an error and rarely indicates a feed problem. For new accounts the documented 3 to 7 business day window is closer to 7 to 14, and trust accrual makes future reviews dramatically faster. The two highest-leverage things you can do during a stuck-pending stretch are: clear all disapprovals first, and stop resubmitting the feed daily. The patterns above (productType missing, landing page redirects, price mismatches, identifier conflicts, missing trust pages) cover roughly 90 percent of pending stretches that exceed the documented window.

For complex feeds, the right tooling pre-validates products before submission and submits via batched Merchant API v1 calls. Either approach (manual cleanup with a slower cadence, or SnowPipe's pre-flight + multipart batch) gets the same result: a feed that flows through pending in days, not weeks.


Tired of fighting GMC pending status one product at a time? Try SnowPipe free, no credit card required.

Ready to automate your product feeds?

Connect your store and sync to Google, Facebook, and more — in minutes. No credit card required.