Google & every connected channel

Pre-flight validation

Catch disapprovals before Google does.

Google rejects products days after you publish — silently. Simple Product Feeds validates your feed against each channel’s real requirements in the app, before the channel ever fetches, and tells you exactly what’s wrong and how to fix it.

Grouped by root cause · per-finding fix guidance · mute what’s acceptable.

The problem

A disapproval doesn’t announce itself

A product quietly drops out of Shopping. Impressions fall. Weeks later you trace a revenue dip back to it — then open Merchant Center and face a wall of “600 errors” with no sense of which ones actually cost you sales, or how to fix them at the source.

Anatomy of a Silent Failure

How a routine sitewide sale quietly burned three weeks of ROAS.

1 of 5: The Dashboard
Spend this week
$3,200
Campaigns
Active
Products live
450
Disapprovals
0
Campaigns running. Nothing flagged. This is what the dashboard looks like on the day revenue started slipping.

Mid-sized Shopify store. 450 products. Running Shopping campaigns for over a year. Spend, products, and campaign status all look normal. There is no indicator on this dashboard that anything is wrong.

The mechanism

Every channel’s rules, checked before the channel sees a row

Connect a feed to a channel and it’s validated against that channel’s actual requirements. Findings group issues by cause — what’s wrong, why, how many products, with sample rows — so you fix the one config-level cause that clears hundreds of errors, not one product at a time.

Google Merchant Center · findings 634 errors · 1,902 warnings
error Missing GTINidentifier_exists set to false — fix with a rule or a supplemental identifier 602 products
error Empty descriptionopen in Shopify to add copy 1 product
warning Image too smallbelow Google's recommended resolution 88 products
warning Generic product typeconsider a more specific google_product_category 1,814 products

Fix at the source

Each finding links to the fix — a rule, a product override, or the Shopify admin for source-data issues like missing images. Fix the cause once; the whole category clears on the next sync.

Mute & export

Some warnings are fine — mute them so they stop nagging without hiding real errors. Need the full list? Export every affected product for a category as CSV.

How it works

01

Connect a channel

Validation runs automatically against that channel’s requirements.

02

Read the findings

Grouped by cause, ranked by impact, with sample rows and a fix for each.

03

Fix & re-check

Apply the fix, re-validate until clean — then publish with confidence.

Prefer to drive it from your agent? spf_feed_findings returns the same grouped findings for any feed and channel.

Frequently Asked Questions

Which channels are validated?
Google Merchant Center and Commission Junction today, with more channels added as they ship. Each feed is checked against that channel's own real requirements, not a generic rulebook.
How is this different from Merchant Center's own errors?
It runs in the app, before Google fetches — so you catch and fix disapprovals before they ever cost you impressions. And it groups issues by root cause, so you fix hundreds of products with one change instead of triaging them one by one.
Does it fix problems automatically?
It tells you exactly what's wrong and guides the fix — a rule, a product override, or a source edit in Shopify. You stay in control of every change.
Can I ignore issues that don't matter?
Yes — mute acceptable warnings so your findings stay focused on what actually needs attention, without hiding real errors.

Publish a feed you already know is clean.

See what Google would reject — and fix it — before a single product is disapproved.