Here is the real version of account health monitoring, because most of what gets written about it is a list of metrics to stare at and nothing about what any of them mean.
Every day an account survives in a restricted vertical, someone is reading it. Not the front-end numbers a client fixates on. The signals that tell you, days ahead, that Meta is about to pull an account, so you can move before it happens instead of after. That is the whole discipline. Watching the right things, in the right order, and having somewhere to go when one of them turns.
What account health actually is on Meta
Start with what you are monitoring, because it is not what most people think. Meta does not give your account a health bar you can read. It assigns every asset an invisible trust score, and you never see the number. There is no indicator for it anywhere in the interface. Protecting a score you cannot see is the whole job.
And it is not one score on one thing. Meta ties three assets together in a chain, and trust flows down the whole thing:

Trust flows down a three-tier chain: profile, Business Manager, and ad account.
- The profile: the personal account that operates the ads.
- The Business Manager (the "BM", Meta's container that holds your ad accounts).
- The ad account itself, where the campaigns run.
A weak profile drags down the ad account it touches. A damaged ad account can drag down the BM it was built from. That connection is the single most important thing to understand, because it changes what "health" means. You are not keeping one ad account alive. You are protecting a chain, and the chain is only as strong as its weakest link.
Here is what that buys you in practice. An ad account sitting under a strong, well-aged BM can run riskier creative and absorb more rejections before anything bad happens to it. The exact same creative, uploaded from a weak, new BM, gets the account disabled. The creative was identical. The trust behind it was not. That is why two operators can run the same ad and get opposite outcomes, and why "is my ad compliant?" is only half the question. The other half is "what is the account underneath it actually worth?" This is also why the account gets judged before the ad ever does, which is a bigger theme in how Meta polices high-risk industries.
The two signals that give you real lead time
Most account health signals only tell you something is wrong after it already is. Two of them tell you early, and those two are where your attention belongs:



Live general ad creatives from real Icarus client campaigns.
- Budget runway: how many days of spend the account has left.
- Rejection rate: how many of your creatives get knocked back versus approved.

A dashboard tracking budget runway in days and rejection rate as a percentage of uploads.
Everything else on the list is same-day damage control. These two you can see coming.
Budget runway first, because it is the one people forget. An account that runs out of ad spend does not just pause. Running dry is itself a health event: let the balance hit zero and you risk the account getting suspended, on top of the delivery you already lost while it sat empty. So you watch the balance against the daily spend and top up while there are still several days of runway left, never on the last day. The rule we run is simple. Keep a real cash buffer sitting on the account and never let it drain to nothing. A funded account is a healthier account.
Rejection rate is the other early warning. Meta watches the balance of your approved creatives against your rejected ones in the background, and it does not publish the threshold. Let rejections climb as a share of what you upload and the account tips into a high-risk state. At that point Meta's own system fires a warning straight into the account, saying in as many words that continued delivery risks suspension and asset restriction. By the time that warning lands, you are already late. The job is to keep the rejected share low enough that it never fires, which means catching the trend while it is still three or four rejections, not thirty.
What to do when rejections start climbing
So rejections are creeping up. Here is what the response actually looks like, and none of it is "appeal everything and hope":
- Never leave the account sitting empty. When a creative gets rejected, you do not just pull it and go dark. You swap in a clean, generic version and keep something approved in the account, paused so it does not spend. An account with live, approved ads in it reads as healthier than an empty one.
- Clone the survivors, do not chase the rejected. The instinct is to fight for the ad that got knocked back. Wrong instinct. Take the creatives that got approved and make variations of those. You build from what Meta already accepted, not from what it just told you it does not want.
- Strip the combination, not one word. A creative rarely gets rejected for a single element. It is usually the combination: a certain image, plus a certain word, plus an outcome claim, all together, that trips the automated review. So you sanitise. In this world "sanitised" just means a creative built to carry no triggers: cleaner imagery, keyword density kept low or invisible, the loud product language moved off the ad. Done well, a sanitised ad still shows the product and the offer clearly. It is not a toothless ad. It is a clean one.
- Appeal sparingly. Every appeal is a flag you raise with Meta's reviewers. Flood them and you can lose the account you were trying to save. Experienced operators appeal rarely and deliberately, never reflexively on every rejection.

Four parallel actions to take when ad rejections climb, plus the pattern of high-performing ads getting pulled after conversion data arrives.
There is one pattern worth watching above all the others: the creative that gets approved, spends, generates real purchases, and then gets pulled a few days later. That is not random. Once the algorithm confirms what you are selling from the conversion data coming back, it re-examines the ad driving those sales. The move is to see it coming. Watch your winners closely and have sanitised replacements built before the rejection lands, not after. This is the same mechanism behind why CBD ads keep getting rejected even after they have been running fine.
The same-day signals: delivery, pacing, tracking, payments
The two early signals buy you time. The rest of the monitoring is a daily walk of the account, looking for things that need fixing today. A media buyer checks these across every live campaign, every day:
- Ads stuck in review. A creative sitting in review for more than a day or two, with no resolution, gets escalated. And an account where everything drops into review the moment you launch, rather than approving and then getting flagged later, is telling you the account itself is the problem, not the ad.
- Spend pacing below budget. If the account is not spending its daily budget, the algorithm is pulling back on its own. That is often a quiet precursor to a restriction, not just a delivery wobble.
- A ROAS drop with nothing behind it. If return falls off a cliff and nothing changed, no new creative, no audience shift, the first suspect is not the campaign. It is the plumbing. Sudden anomalies, like sales flatlining overnight, are almost always technical: a tracking or account problem, not the market suddenly rejecting your product. Check the plumbing before you touch the campaign.
- Payment failures and pixel errors. A failed payment halts delivery immediately. A broken pixel (the piece of tracking that feeds conversions back to Meta) starves the algorithm of the signal it needs to optimise. Neither waits until tomorrow. Both get fixed the day they appear, because both damage delivery and account standing at the same time.

A media buyer's daily account checklist: review status, spend pacing, ROAS anomalies, and payment health.
One note on that ROAS drop, because it trips people up. Read the number for what it is: the price you paid to acquire a customer, not a verdict on the business. For any repeat-purchase brand the numbers that actually decide anything are cost per acquisition (CPA) and lifetime value (LTV). If you want to see an account's economics in those terms instead of panicking at a front-end figure, the ROAS calculator puts it plainly.
Protecting the whole chain, not just the account
Everything above protects a single ad account. But the most expensive failure in this space is not one account going down. It is the container above it going down and taking everything with it.
We have watched a single Business Manager get restricted and take every ad account sitting under it down in one afternoon. Multiple brands, all dark at once, because they shared a parent. That is the risk you are really managing, so the monitoring extends up the chain:

A single Business Manager failure cascades to disable all child accounts; spreading accounts across multiple BMs limits the blast radius.
- Spread accounts across multiple BMs. If every account you run sits under one BM, that BM is a single point of failure for your entire operation. Split them across several, so one restriction takes out a slice and never the whole thing. It is the same survival logic behind running parallel accounts when you scale.
- Keep the profiles clean and isolated. The profiles that operate the accounts need to look like real people, with a photo and some history, not blank shells that draw scrutiny. And each account runs in its own isolated session, so one flagged profile cannot contaminate the ones next to it.
- Freeze changes when a warning lands. When a risk alert comes in, you stop touching things: no new ads, no new admins, no permission changes. Every one of those actions is a fresh signal, and adding signals to an account already under review is how you tip it over. Sometimes the right move is to sit dead still.
- Do not let an account go idle. Meta pulls access from accounts that sit inactive too long. An account you are "saving for later" can age out and get flagged for doing nothing. Keep it ticking over, even at low spend, and it holds its place in the system.
Backups ready before you need them
Here is the part that separates operators who survive from operators who scramble. Monitoring tells you when an account is about to go. It does nothing for you if you have nowhere to move when it does. So half the discipline is watching, and the other half is having a warm seat ready.
Think of a well-run restricted account like a duck on water. On the surface it looks calm: ads running, sales landing, nothing dramatic. Underneath there is a lot of paddling, and a big part of that paddling is keeping replacements ready, so that when one account drops, the switchover looks like nothing happened from the outside. What "ready" actually means:

A banned account triggers instant switchover to a pre-warmed backup with tracking and funds already in place.
- Backup accounts, warmed in advance. A cold account cannot absorb your budget on day one. Drop full spend on a brand-new account and it struggles to spend at all for the first day or two. So you keep backups provisioned ahead of time and seed them with small live campaigns, warm enough to take real budget the moment you flip over.
- A backup pixel already installed. Installing tracking in the middle of a crisis loses you days. The tracking for the backup goes on the site early and sits there untouched, so conversion data survives the switch instead of resetting to zero.
- The cash buffer sits on the backup too. When the main account goes down, the replacement already has funds on it. You are not waiting on money to clear before spend resumes.
Do all of that and a ban stops being a catastrophe. It becomes a switchover. The business keeps running, the customer never sees a gap, and you go warm up the next backup in the queue. Brands without that infrastructure go dark for weeks. Brands with it barely notice.
Monitoring is table stakes. The infrastructure is the edge.
None of this is the glamorous part of the job. Getting an account approved, keeping it stable, catching the ban before it lands: that is table stakes. It is the floor you have to hold before you get to the work that actually grows a brand, building creative that converts, finding the personas and speaking their language, building pages that sell. But you never reach that work if the account keeps dying underneath you.
Holding that floor is exactly what a decade of doing this buys. Icarus has run ads in the hardest verticals on Meta since 2016, across roughly 300 brands, and account health monitoring is not a checklist we tick. It is a feel for these signals, earned one disabled account at a time. If your accounts keep dropping and you are tired of rebuilding from zero every few weeks, that is the problem we exist to solve.

A stable account foundation enables higher-value marketing work above it.
See how we keep restricted brands live: our approach by industry, or start a conversation.
