At a glance
The spend running on a catalog campaign whose linked product feed has live rejections. When products are rejected at the feed layer (by a feed-management tool such as Feedonomics, or by Meta’s own catalog review), the catalog Meta bids on is incomplete or stale. The bid signal degrades, the affected products stop serving, and ROAS bleeds until the feed clears. This card names the spend that is exposed to that degraded feed so you can fix the rejection rather than keep paying for a campaign that cannot show its best products. Caveat: a rejection does not always zero out a campaign; partial rejections quietly shrink the eligible product set, so the damage is often a slow ROAS erosion rather than a hard stop.
| What it counts | Spend over the window on Meta catalog campaigns (Advantage+ Catalog, DPA) whose linked product feed has one or more active rejections at the time of reading. |
| What “feed rejection” means | A product or set of products rejected before or during ingestion into the Meta catalog, either upstream in a feed-management platform’s export or downstream in Meta Commerce Manager’s catalog review. Rejected items cannot serve. |
| Why it bleeds ROAS | Catalog optimisation depends on the full, accurate product set. Rejections shrink or distort that set, so Meta’s bidding optimises against degraded data. The effect compounds the longer the rejection persists. |
| Common rejection causes | Missing or invalid required attributes, disallowed content, price or availability mismatches between the feed and the landing page, or policy flags on specific products. |
| Chart type | Alert table. Each row names the campaign, the linked feed, the count of active rejections, and the spend exposed. |
| Alert trigger | Any spend on a campaign whose linked product feed has live rejections. The card is loud because even a small spend against a broken feed signals a fixable leak. |
| iOS 14.5+ ATT impact | Indirect. A degraded feed weakens the catalog signal that Meta’s optimiser already struggles to fill post-ATT, so feed health matters more, not less, in the modeled-conversion era. |
| Currency | Account currency on the Meta side; workspace display currency for multi-platform rollups, treated as approximate. |
| Time window | 30D (30-day rolling). |
| Roles | owner, marketing, operations |
Calculation
Calculated automatically from your Meta Ads (Facebook) data joined to your product-feed health. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.Worked example
A US outdoor-gear brand running Advantage+ Catalog campaigns with the catalog fed by a feed-management export. Reading taken on 14 Mar 26 over the trailing 30 days. All figures are illustrative.| Campaign | Linked feed | Active rejections | 30-day spend ($) | Flagged |
|---|---|---|---|---|
| Advantage+ Catalog (all products) | main-export | 412 of 6,800 items | 38,000 | Yes |
| Advantage+ Catalog (top sellers) | bestsellers-export | 0 | 14,000 | No |
| DPA retargeting | main-export | 412 of 6,800 items | 9,000 | Yes |
| Manual broad audience | none (no catalog) | n/a | 6,500 | No |
- The card reads $47,000 of spend exposed to a feed with active rejections across the two campaigns linked to
main-export. - Only 6% of items are rejected, but the damage is larger than 6%. Catalog optimisation reallocates budget across the eligible set, so removing 412 items, especially if they include high-velocity products, distorts bidding for the whole campaign, not just the rejected lines.
- The bestsellers campaign is clean. It is fed by a separate, smaller export with no rejections, which is why its ROAS held while the main-export campaigns drifted down over the month.
- The fix is upstream, not in Ads Manager. Open the feed-management platform, read the rejection reasons (commonly a missing required attribute or a price mismatch against the landing page), correct the source data, and re-export. Confirm the catalog clears in Commerce Manager.
- Expect a recovery lag. Once the feed clears and the items re-enter the catalog, Meta needs time to relearn and redistribute budget. ROAS does not snap back instantly; budget the following week for recovery, not the same day.
- Rejections rising + ROAS drifting down on the same campaign = feed degradation. Fix upstream.
- Rejections on high-velocity SKUs = disproportionate ROAS damage. Prioritise those.
- Clean feed, separate campaign holding ROAS = isolate the broken feed and fix it without touching the healthy one.
Sibling cards merchants should reference together
| Card | Why pair it with Spend on Campaigns with Active Feed Rejections | What the combination tells you |
|---|---|---|
| ROAS by Campaign | The efficiency the rejection is eroding. | A ROAS slide on a feed-linked campaign confirms the rejection is causing real damage. |
| Active Ads on Out-of-Stock SKUs | The sibling catalog-data-quality alert. | Out-of-stock and rejected items are two ways the catalog feed costs you money. |
| Spend by Campaign | The budget exposed to the broken feed. | How much spend is at risk until the feed clears. |
| ROAS Trend | The shape of the erosion. | A gradual ROAS decline matching the rejection onset confirms cause and effect. |
| Wasted-Spend Burst (3-day spike) | The general waste alert. | A feed rejection can show up there as a zero-conversion burst on the affected products. |
| Shopify Products with Zero/Negative Stock | An upstream cause of availability rejections. | Out-of-stock items can trigger availability mismatches that the feed then rejects. |
Reconciling against Meta Ads Manager
Where to look in Meta Ads Manager: This is a two-surface reconciliation, because Ads Manager shows the spend and Commerce Manager shows the rejections:- Meta Commerce Manager → Catalog → Diagnostics / Items lists rejected items and their rejection reasons. This is Meta’s downstream review.
- The feed-management platform’s own dashboard (for example Feedonomics) shows upstream rejections caught before the export reaches Meta. Many rejections never appear in Commerce Manager because they were filtered at the source.
- Meta Ads Manager → Campaigns shows the spend per catalog campaign but does not link it to feed health.
| Reason | Direction | Why |
|---|---|---|
| Upstream vs downstream rejections | Variable | Rejections caught in the feed tool may never reach Commerce Manager, so a manual check of Meta alone undercounts. This card considers both layers where connected. |
| Feed-to-campaign mapping | Variable | Which campaigns draw on which feed depends on catalog configuration. Shared catalogs across campaigns can spread one rejection’s spend exposure wider than expected. |
| Time zone | Boundary only | Meta uses ad-account time zone; this card uses UTC. Relevant at window boundaries. |
| Recovery lag | Ours clears as Meta does | After a fix, the card stops flagging once the catalog shows the items as active again, which can trail the feed correction by a sync cycle. |
| Card | Expected relationship | What causes legitimate divergence |
|---|---|---|
shopify.products_with_zero_negative_stock | Out-of-stock items can cause availability-mismatch rejections | Not every rejection is stock-related; attribute and policy rejections are independent of inventory. |
facebook_ads.active_ads_on_out_of_stock_skus | Overlapping catalog-quality exposure | Out-of-stock spend and feed-rejection spend can hit the same campaign for different reasons. |
shopify.total_revenue | A prolonged feed problem can dent store revenue from this channel | Store revenue has many inputs; a feed rejection is one channel-specific drag, not the whole picture. |