For agencies that grow D2C brands
What should a Meta ads audit check first?
A Meta ads audit should check tracking first, then where the money goes: ads and ad sets spending without purchases, creatives shown too often to the same people, audiences priced above target, and settings such as attribution and placements. Measure each against the brand's own baseline and fix the biggest leak first.
2.13× Meta ROAS on ₹28,064 spend, against a 4× e-commerce benchmark · Moolwanai-dm · Paid ads · 171,489 impressions · 3,895 clicks · 30 days to 26 Sep 2026 · real data
What you'll see in 10 minutes
- Your first brand's report, built from its domain alone.
- Its Meta ad account and GA4 connected, one secure sign-in each.
- Every campaign, ad set and ad read against the brand's own baseline, with spend leaks and tired creatives flagged.
Why does a Meta account look healthy while it wastes money?
Thursday, brand review. Account ROAS is close to target, so nobody opens the ad sets. Underneath, one ad has been shown to the same people again and again, and another has spent for two weeks without a sale. The brand finds out when the total finally slips.
Averages hide the leaks. A healthy total can carry ad sets that lose money every day, and by the time the total moves, the leak has had weeks of budget. Each leak has a number that shows it, at the level of the ad or the ad set. These are the ones to read.
| Where spend leaks | The number that shows it | Where to find it |
|---|---|---|
| Tracking counts sales wrong | Purchases in Meta against store orders and GA4, same days | Events Manager, GA4 |
| Spend with no purchases | Spend past 2× the target cost per purchase, 0 purchases | Ads Manager, sorted by spend |
| Tired creative | Frequency up and click-through rate down, week on week | Ads Manager, by ad |
| Audience priced too high | Cost per purchase by ad set against the target | Ads Manager, by ad set |
| Budget split too thin | Ad sets marked learning limited | Ads Manager, delivery column |
| Wrong placement or region | Share of spend against share of purchases | Ads Manager, breakdowns |
| The page after the click | Link clicks against landing page views, page speed | Ads Manager, a speed test |
What does a Meta ads audit check, in order?
Tracking first, then the money, then the creative. The order matters: a fix based on wrong purchase counts aims at the wrong ad. Work through these seven checks and you'll have a ranked list of fixes for the brand, biggest leak first.
Check tracking before results
Compare purchases in Events Manager with the brand's store orders and GA4 for the same days, and make sure the pixel and the Conversions API aren't counting one sale twice. If tracking is off, every number after it is off too.
Read the right window
Note the attribution setting on every report. Meta's default credits a purchase up to 7 days after a click or 1 day after a view, so compare like with like before you call anything up or down.
Find spend with no purchases
Sort ads and ad sets by spend and look for any that spent twice the target cost per purchase without a single purchase. These are the quickest savings in the account.
Check for tired creative
Read frequency and click-through rate by ad, week on week. Frequency rising while click-through rate falls means the same people have seen the ad too often.
Check structure and the learning phase
Count the ad sets sharing the budget. Too many split it so thinly that none gets enough purchases to learn, and Ads Manager marks them learning limited.
Break results down
Split spend and purchases by placement, age, region and device. A leak often sits in one placement or one region that the account total hides.
Check the page after the click
Compare link clicks with landing page views and test the page's speed. Clicks that never load the page are spend no ad change can fix.
On the learning phase, Meta says an ad set needs about 50 optimisation events in the 7 days after its last significant edit to leave it (Meta Business Help Centre, about the learning phase). If Meta's purchase count and GA4's are far apart, reconcile GA4, Meta and Google Ads before you trust either one.
How much of a brand's Meta spend is leaking right now?
Run the numbers before the review. Enter the brand's target cost per purchase and last week's figures for up to four ads, straight from Ads Manager. The worksheet flags what to fix, shows how much spend sits in those ads and writes the note for the brand.
Find the leaks in a brand's Meta ads
Change any number and the flags update. The limits for a tired ad are yours to set.
note for the brandOf ₹1,14,830 spent on 4 ads last week, ₹51,200 (45%) sits in 2 ads that need action. Before / after v1: frequency 4.8 and click-through rate down 31%, so the creative is tired; cost per purchase ₹1,768 against a ₹900 target. Founder story: ₹12,300 spent with no purchases. We suggest pausing or replacing these and moving the budget to the ads within target.
Free, no login. The starting figures are an illustrative example.
(login required) · ai-dm runs these checks on every ad, every day, for every brand you manage.
How does ai-dm audit a brand's Meta ads every day?
The same checks, on every ad, every day. Once a brand's Meta account is connected, ai-dm reads spend, click-through rate, cost per purchase, ROAS and frequency for every campaign, ad set and ad, and measures each against the brand's own baseline. It also watches rivals' ads in the Meta Ad Library, so a competitor's new offer sits next to the drop it may explain.
4 findings · 2 checks passed · 2 suggestions waiting for your approval
In this illustrative example, ai-dm's daily audit of Dewleaf Skincare's Meta ads finds four problems: a tired creative shown 4.8 times per person with click-through rate down from 1.3% to 0.9%, an ad that spent ₹12,300 with no purchases, a lookalike audience at ₹1,420 per purchase against a ₹900 target, and a rival's new offer. Purchases against GA4 and budget changes both pass.
Each finding comes with its next move. A tired creative gets a replacement brief, and ai-dm can write the new ad copy and creatives from the brand's thesis. When the whole account drops and no single ad explains it, find why the brand's numbers moved across every connected account. Nothing changes in a brand's account until your team approves it, and you can check how brand data is protected.
On our own brand. Moolwan, our D2C home décor brand, spent ₹28,064 on Meta ads in the 30 days to 26 September 2026, for 171,489 impressions, 3,895 clicks and a ROAS of 2.13× against a 4× e-commerce benchmark (ai-dm · Paid ads). That works out to a 2.27% click-through rate and about ₹7.21 a click. The ROAS gap is real, and ai-dm raises it every day until it moves. You can inspect Moolwan's real numbers, with the source and date of each.
Related pages
Questions agencies ask about Meta ads audits
What is a Meta ads audit?
A Meta ads audit is a structured check of a brand's Facebook and Instagram ad account: whether tracking counts purchases correctly, which ads and ad sets spend without results, which creatives are tired, and whether the structure, audiences and placements suit the budget. It ends with a ranked list of fixes, biggest leak first.
How often should an agency audit a brand's Meta ads?
Run the full audit when you take on a brand and at least once a quarter, and check spend, frequency and cost per purchase every week. Leaks start between audits, because a creative can tire in days. ai-dm runs the checks every day, so the weekly review starts from what changed.
What frequency is too high on Meta ads?
There's no single safe number. It depends on the audience size, the offer and how often the creative changes. Read frequency together with click-through rate: when frequency climbs and click-through rate falls week on week, the ad is tired. The worksheet on this page lets you set your own limits.
Why does Meta show more purchases than GA4?
Because they count differently. Meta's default credits a purchase up to 7 days after a click or 1 day after a view, while GA4 shares credit across channels with its own model. A steady gap is normal. A gap that suddenly widens points to a tracking problem, so check it first.
Can ai-dm change a brand's Meta campaigns?
Only with your team's approval. ai-dm suggests the change, such as pausing a tired ad or moving budget to an ad set that converts, and the suggestion waits in the approval queue. Nothing changes in a brand's account until someone on your team approves it, and every decision is recorded.
Does ai-dm tell us which ads caused a sale?
No. ai-dm doesn't build attribution models and doesn't report blended CAC or MER. It reports what Meta records for each ad, checks it against GA4 and links every finding to the record behind it, so your team makes the call with the evidence in front of it.
What does a Meta ads audit in ai-dm cost?
There's no plan to pick. Sign up, pay as you go, and connect one brand's Meta account with one secure sign-in. Billed in USD and INR. Per-brand plans or pay as you go. A brand's data is deletable on request.
No plan to pick. Billed in USD and INR. A brand's data is deletable on request.
