The short answer
Meta ads usually stop performing because of a weak signal, not a bad audience. The five common causes are broken Conversions API tracking, optimizing for the wrong event, a messy campaign structure, creative that isn’t tested properly, and scaling too fast. Fix them in that order.
If you’ve ever typed “meta ads is not performing” into Google late at night, you’re in good company. The budget is gone, the ads are live, and the leads from those LinkedIn screenshots haven’t shown up.
Here’s the part nobody likes hearing. It’s rarely the audience. Most struggling Meta ads accounts I see have a problem in one of five places, and none of them get fixed by swapping the interest targeting for the tenth time.
A quick note: the stories below are composite examples built from patterns that keep showing up in ad accounts. They aren’t single named clients.
1. Your Conversions API isn’t set up properly
Picture a D2C brand spending ₹1,500 a day. Ads Manager shows 22 purchases this week, but Shopify shows 41. The founder blames the ads. The real problem is that only the pixel is reporting, and ad blockers, iOS privacy settings and slow page loads are quietly eating almost half the sales before Meta ever sees them. Meta is optimizing on half the picture.
Meta’s own Conversions API guidance says to send the same events from the browser and the server, with the same event name and a matching event_id on both, so Meta counts each one once. If the ID is missing or doesn’t match, you get double reporting and messy data.
Open Events Manager and check your Event Match Quality, which Meta scores out of 10, plus your deduplication rate. Send customer details like email and phone as well, formatted properly before hashing, because a badly formatted value never matches. And send events as close to real time as you can.
Fix this before you touch a single ad.
2. Your pixel is optimizing for the wrong event
An edtech brand runs a lead campaign optimized for Landing Page Views because it’s cheaper. The cost per click looks lovely at ₹6. The leads are rubbish. Meta did exactly what it was told and found people who enjoy opening pages.
The other trap goes the opposite way. You optimize for Purchase on a small budget and never leave the learning phase. Meta needs roughly 50 optimization events per ad set within 7 days to settle down. The math is simple: (cost per event × 50) ÷ 7 = daily budget. If a purchase costs ₹800, you need about ₹5,700 a day. At ₹1,000 a day you’ll get around nine purchases a week, and the ad set sits there marked “Learning limited”.
When that happens, move one step up the funnel, to something like Initiate Checkout, until volume builds. Keep it tied to real buying intent though. And stop editing ads every other day. Significant edits can send the ad set back into learning, and a reset costs you money.
3. Your campaign structure is fighting Andromeda
Andromeda is Meta’s ad retrieval system, rolled out in late 2024. It reads your creative to work out who should see it, so creative now does a lot of the job that audiences used to do.
Now imagine an agency running 14 ad sets inside one campaign, one per interest, each at ₹300 a day with two ads inside. Every ad set is learning limited, the audiences overlap, and the ad sets end up competing with each other. It looks organized. In reality it’s 14 small experiments that never finish.
The cleaner setup is boring. Two or three ad sets, broad targeting, enough budget in each to reach those 50 events, and a healthy mix of different creatives inside. Meta’s own Conversions API best practices tell advertisers to simplify account structure and limit auction overlap, so this isn’t just a trend people on X got excited about.
4. Your creative testing is guesswork
Five ads, one video, five different headlines. That isn’t a test. To the algorithm it’s close to one idea shown five times.
Real variety means a different angle, a different person talking, a different offer, or a different format. Think of a concept as persona plus angle plus offer. Change one of those and you’ve given Meta something new to match with a new pocket of people.
Here’s a simple way to run it:
- Launch a batch of 3 to 5 genuinely different concepts together.
- Let each one spend about two to three times your target cost per result before you judge it. That’s a rule of thumb, not a Meta rule.
- Judge on cost per result and lead or sale quality, not likes.
- Switch off the clear losers, keep the winners, and add a fresh batch every week or two.
Fatigue is real. The winner from last month probably isn’t one anymore.
5. You’re scaling the wrong way
An ad is hitting 4x ROAS at ₹2,000 a day. The founder gets excited and jumps the budget to ₹6,000 overnight. Learning resets, CPA spikes, ROAS slides to 1.8x, and the ad gets paused as “dead”. It wasn’t dead. The jump was just too big.
Here’s the scaling formula I’d use. New budget = current budget × 1.2, but only if CPA has stayed at or below target for the last 3 days. Review every 3 to 4 days, and don’t touch the budget in a panic on day one. When a creative stops scaling, don’t squeeze it harder. Take the winning concept and build new variations around it.
And know your break even ROAS before you celebrate any number. It’s 1 ÷ profit margin. At a 40% margin you break even at 2.5x, so a 3x ROAS leaves much less room than it sounds like.
Quick checklist: is your Meta ads account healthy?
- Event Match Quality is strong on your main event.
- Pixel and server events share the same event_id.
- Your optimization event gets about 50 events a week per ad set.
- You run a few ad sets, not a dozen.
- You have several creatives that are truly different, not just reworded.
- New concepts launch every week or two.
- Budget changes stay around 20% per step.
FAQ: Why are my Meta ads not performing?
Why are my Meta ads not performing even with a decent budget?
Usually it’s tracking, the optimization event, structure or creative, not the budget. Check Events Manager first, then confirm each ad set can reach about 50 events a week.
How long should I wait before judging Meta ads?
Wait until the ad set exits the learning phase, which usually means about 7 days and roughly 50 optimization events. Judging on day two is how decent ads get killed.
How many creatives should I run per ad set in 2026?
There’s no official number. Many practitioners run roughly 6 to 15 distinct concepts per ad set, and more at higher spends. Different matters more than many.
Is the Conversions API really necessary if my pixel works?
Yes. The pixel alone can miss conversions because of ad blockers, page load errors and privacy settings. Meta recommends sending the same events from both the pixel and the server, with deduplication.
What is a good CTR and CPM for Meta ads in India?
Sources vary a lot. One 2026 India report puts CPM at roughly ₹50 to ₹120 and a good CTR at 1.0 to 1.5 percent. Treat that as a rough range and judge your ads by cost per result against your margin.
Still stuck?
If you’ve been through all five and your Meta ads still aren’t pulling their weight, a fresh pair of eyes usually spots what you’ve stopped seeing. I do free ad account audits. Book yours here.