The silent budget killer
Meta reviews every ad you create. Sometimes it happens instantly. Sometimes it takes hours. And sometimes — without any fanfare — an ad that was running fine gets flagged, rejected, or restricted after the fact. When that happens, your spend shifts. If one ad in an ad set gets rejected, Meta redistributes budget to the remaining ads. If your top performer gets pulled, your campaign’s overall performance craters while you’re not looking. The problem isn’t that Meta rejects ads — that’s part of the platform. The problem is that you don’t find out fast enough.How most teams discover ad issues today
- The morning check — Someone opens Ads Manager, notices a campaign isn’t spending, clicks through, and discovers an ad was rejected 14 hours ago. Half a day of budget was wasted on the fallback ads nobody optimised.
- The performance dip — Your weekly ROAS numbers look bad. You dig in and realise an ad set has been running with one fewer ad for 3 days. The rejected creative was your best performer.
- The client call — Your agency client asks why results dropped this week. You scramble to investigate, find the rejection, and explain it after the fact.
Real-time ad issue alerts
ChartCastr’s Meta Ads Streams include an Ad Issue event that fires the moment Meta flags a problem with any campaign, ad set, or ad in your connected accounts. The notification goes straight to Slack with the object name and type:What you can do with those seconds
The value here isn’t the notification itself — it’s what you do with the time it buys you. Minimise budget waste. If your top ad gets rejected at 9 AM and you don’t find out until 5 PM, that’s 8 hours of budget flowing to your backup ads. If they’re not as well-optimised, you’ve paid more per result all day. Maintain campaign momentum. Some campaigns have narrow windows — a product launch, a seasonal push, a flash sale. Every hour an ad is down during those windows is revenue you can’t get back. Keep clients informed proactively. If you’re an agency, the difference between “we caught the rejection within minutes and submitted a fix” and “we noticed during our weekly review” is the difference between a confident client and one who’s questioning your attention to detail.Pair with Ad Processed alerts
The Ad Processed event is the other side of the coin. When you create or edit a campaign, ad set, or ad, Meta takes time to process it before it starts delivering. The Ad Processed stream tells you when that processing is complete:- Ad Processed → your creative is live and spending
- Ad Issue → something went wrong and needs attention
#ads-ops channel and you’ll always know what’s running and what’s not.
Getting started
- Connect Meta Ads as a source
- Open Streams and select Ad Issue and Ad Processed
- Route to your ads team’s Slack channel

