How to audit a Meta Ads account in 10 minutes
By Santosh Valisetti
Quick answer
A 10-minute Meta Ads audit walks through six checks in order: account health (spend cap, page connection, billing), top-level ROAS trend (last 7 vs 28 days), frequency by ad set (anything >4.5 is a leak), CPM trend, conversion event quality, and attribution window comparison. Each takes 90 seconds in Ads Manager. The output is a prioritised list of leaks ranked by $-impact.
The setup (one-time, 2 minutes)
Open Meta Ads Manager. Switch to the Ad Set level. Add these five columns: Frequency, Quality Ranking, CTR (link click-through rate), CPM, Cost Per Result. Save as a custom view called "Audit". Set date range to Last 7 days with a second window comparing Previous 7 days.
These five columns + the comparison window are what the following six checks read. Default Meta views hide the columns that matter most for diagnostics.
Check 1 — Account health (90 sec)
Navigate to Business Settings → Ad Accounts → your account. Look at:
- Status — Active, not Disabled / Restricted / Unsettled.
- Spend cap — is one set, and is it the cap you intended?
- Payment method — primary not expired, no recent failed charges.
- Page connection — the Facebook Page is attached.
- Account age — for context when reading benchmarks.
Why it matters: A spend cap set too low silently halts delivery mid-campaign. A disconnected Page disqualifies your ads from many placements. We have seen brands lose 30% of intended spend to a $200 spend cap from 2021 nobody remembered setting.
Check 2 — Top-level ROAS trend (90 sec)
Read trailing-7-day ROAS and trailing-28-day ROAS side by side.
- If 7d > 28d × 1.1 → improving trend, scale candidate
- If 7d ≈ 28d (±10%) → stable, no action needed
- If 7d < 28d × 0.75 → regression, leak somewhere — continue to Check 3
Always compare against your category benchmark (see our D2C ROAS benchmarks). A "stable" 1.8 ROAS on a 12-month-old apparel account is a leak even though it's stable.
Check 3 — Frequency by ad set (2 min)
Sort your ad set list by Frequency descending. Anything above 4.5 is in or near saturation territory.
| Frequency | Read as | Action |
|---|---|---|
| < 2.0 | Healthy | No action |
| 2.0 – 3.5 | Normal range | No action; watch trend |
| 3.5 – 4.5 | Approaching saturation | Refresh creative this week |
| > 4.5 | Saturated | Pause or refresh now |
Check 4 — CPM trend (90 sec)
Read 7d CPM vs 28d CPM. CPM up >15% with everything else flat means either: your audience is fatiguing (auction prices rise as quality ranking falls), or a competitor entered the auction (seasonality, new launches, holiday peaks).
Also check Quality Ranking column. Drops from Above Average to Average / Below Average signal creative quality decline — the most common cause of CPM spikes inside your control.
Check 5 — Conversion event quality (90 sec)
Navigate to Events Manager. Check your Purchase pixel event:
- Event Match Quality — should be Good or Excellent. Poor here = pixel firing without enough customer data, attribution suffers.
- Server events (CAPI) — should be roughly equal to browser events. If server events are missing or 10× lower, CAPI is broken.
- Deduplication — pixel + CAPI events for the same purchase should be deduplicated via event_id. Without this, conversions double-count.
Check 6 — Attribution window comparison (90 sec)
In your reporting, switch the attribution window setting between 1-day-click, 7-day-click, and 28-day-click. Note how reported conversions change.
If 7d-click reports 2× more conversions than 1d-click, your sales cycle is genuinely longer than a day — read 7d as your true number. If 1d ≈ 7d, your decision-to-purchase is fast and you can confidently use 1d-click for tighter feedback loops. Most D2C brands sit between 1.3× and 1.8× — anything above 2.0× suggests view-through credit inflating numbers.
The output
Ten minutes, six checks, three to five identified leaks. Rank them by estimated $-impact (frequency saturation usually wins), fix the top one this week, re-audit next week to verify the fix worked.
Bach AI runs all six checks plus two more (audience overlap and cross-intelligence with your website) on every audit. Connect your Meta account at app.wittelsbach.ai — the report ships with quantified leak amounts in your currency and a one-click fix proposal for each.
Common questions
- Is a 10-minute Meta Ads audit enough, or do I need a full agency audit?
- A 10-minute audit catches the top three or four highest-$-impact leaks in most D2C accounts. It is enough to decide whether the account needs immediate action and what to prioritise this week. A full agency audit (typically 2–3 days) goes deeper into creative analysis, audience strategy, and competitive benchmarking — useful, but not the first thing you need. Run the 10-minute version weekly; commission the deep version quarterly.
- Can I do this audit in Meta Ads Manager directly, or do I need a tool?
- You can do every check below in Meta Ads Manager. It takes 10 minutes because each check is one specific column, filter, or breakdown — not because the tooling is magic. Bach AI automates the same six checks against the Meta API and gives you a ranked list of leaks with $-impact in one screen, but the checks themselves are not exclusive to any tool.
- What columns should I add to my Meta Ads Manager view for an audit?
- Five columns to add: Frequency, Quality Ranking, CTR (link click-through rate), CPM, and Cost Per Result. Group by Ad Set for the structural view, then break down by Placement for the channel view. Save this as a custom view called "Audit" so you can recall it weekly. Default Meta views hide the columns that matter most.
- How is this different from running an audit through Madgicx or Triple Whale?
- Madgicx focuses on recommendations and AI-powered "optimisations" — broader scope, less specific. Triple Whale is attribution-first — useful for cross-channel ROAS, less useful for diagnosing in-account leaks. The checklist below is the diagnostic equivalent of a physical exam: cheap, fast, focused on detection rather than treatment. Use it before the more expensive tools to know where to direct them.
- How often should I run this audit?
- Weekly for accounts spending $5K+/month; bi-weekly otherwise. Leaks compound — a frequency-saturated ad set still running next Monday will have wasted another $1K. Weekly cadence catches issues within 7 days of onset, before they shape your full month's ROAS. Bach AI runs the audit automatically; if doing it manually, pick a fixed weekday morning and put it on the calendar.
- What if I find leaks but cannot diagnose the root cause?
- That is the point at which the 10-minute audit hands off to the deeper investigation. The audit tells you WHERE — which ad set, which placement, which audience. Root-cause then needs creative analysis (is the asset stale?), landing-page check (did the site change?), or competitive scan (did a competitor enter the auction?). Bach AI cross-references the leak signal with website-side data and competitor activity on every audit to shortcut the root-cause step.