If your winners don't scale in your scaling campaign - you scale them in the ABO campaign as well.
Test new concept + angles in ABO.
Take winners and scale inside a single CBO campaign - cost cap.
Increase budget in the ABO adset that winning.
March and April were a bloodbath for our ads.
NC ROAS fell while CPMr climbed. The funnel was leaking everywhere.
Instead of blaming the algo or pivoting to some shiny new channel, we fixed the foundation.
In May, sales grew 25% YoY and we had our best month ever. What changed: 🧵
1/ Stricter Exclusions
Shoutout to @Phil_Kiel for the gut check here. Our funnel was slowly leaking and New Customer PP was deteriorating. CPMr was increasing steadily. We implemented stricter exclusions and paid closer attention to these KPIs
2/ Volume Creative Testing
We cranked up the velocity. Started getting killer, high-volume creative from @Insense_Pro / @DanilSalukov and @kevinrunsnyc
You can't out-media-buy bad creative, and when the algo gets hungry, you have to feed it faster.
3/ Flipped the Attribution Model
This was the unlock. Thanks to @wimonsool for the push to optimizing inside of Triple Whale using Linear Paid Attribution.
When your ads break, don't panic.
Tighten your exclusions.
Test creative faster.
Fix your attribution.
Instead of FULLY trusting the algo, or not trusting it at all, I'd rather keep one hand on the steering wheel.
Meta's algorithm is genuinely pretty smart. It sees data you can't. It knows who's seen what ads, who's likely to convert, and where the cheap purchases are.
Ignoring all of that and manually controlling everything means you'll probably miss out on some conversions
HOWEVER, it also makes mistakes. It skips ads with no engagement history that you know are good.
Or favors a new ad for days while the cost per checkout tells you it's never going to work.
So I let it drive, with guardrails.
Where I rely on the algo:
→ I scale in CBOs and let Meta pick where the spend goes across my proven ads
Where I keep control:
→ Min spend limits on newer ad sets in the CBO, forcing spend into ads Meta would otherwise ignore
→ Max spend limits on unproven ads so a bad favorite can't eat the whole budget
→ Testing in ABO, where I push spend into each concept myself, because I don't trust Meta to decide which untested ad deserves a shot
→ Batch testing groups of ads to find winners quickly (fully trusting the algo here)
When something proves itself, I loosen the grip. Raise the max, eventually remove it, let Meta take over.
This way I'm taking advantage of the algo, trusting it, but also keeping one hand on the wheel to help course correct a bit
Monthly subscription (low aov) -> Upgrade to quarterly POST purchase for $0 (not before, to avoid CVR drop) -> next order after 30 days is renewing at quarterly.
Within 31 days you have collected almost 4 months worth of cash upfront - > thats how you scale fast and speed up the cashflow.
Meta's EMQ (Event Match Quality) score is one of the things we receive the most questions about.
Probably because everyone thinks a better EMQ score = better ad results. Which is SOMEWHAT true. But the EMQ metric is weighted, funky, and often misunderstood.
But EMQ is important, because it drives the optimization engine, and ultimately the efficiency and performance of your ad results.
So I'm going to start a series of tweets (do we still call them that on X?) digging into all of the details of EMQ.
Have specific questions? Add them to any of the posts and I'll be sure to answer.
----
For today - some high-level nuggets:
1). A "good EMQ score" is relative to the stage of the funnel. What constitutes a good EMQ score for a PageView or ViewContent event, would be a poor score for a Purchase event
2). Despite the fact that the score range goes up to 10 - we've never seen a higher EMQ score on a Purchase event, on real data, above a 9.3
3). The highest priority match keys for EMQ are FBC (Meta's click id) and user email
4). Meta's FBC and FBP (device identifier) parameters are automatically set by the Pixel. If you don't use the Pixel, you need to capture and set those values manually.
My favorite tweet of the year.
My take: I've tested every Meta account structure that exists over the past 12 months. ABO, ABO with 20% budget sharing, CBO, plus every setting layered on top.
Enough changed that it warranted retesting everything. Honestly, all the debates on here even made me ask "can Meta be trusted?"
Here's what I learned: every single time I've been forced into an ABO testing structure, it's become a major cost center. It happened again this week. A brand i'm working with forcing testing in ABO, and we torched cash in the name of "learning."
Forcing spend into low-budget ad sets creates fragmented learnings, zero statistical significance, and you end up bidding against yourself (if you're launching way too many ad sets). And, i'm still yet to understand what anyone learns when an underperforming ad gets $300 more spend than it should have.
Unless you're launching every ABO test with the proper daily budget (CAC * 7.14) I won't hate on you. Otherwise, you're wasting and fragmenting your media dollars.
I am becoming a firm believer that ABO gives media buyers the illusion of control in an extremely complex environment.
It feels like you're steering spend to the right ads. In reality, you'd get the same outcome, or better, by consolidating and giving Meta budget flexibility.
And, you may be shooting yourself in the foot if you're not getting enough consolidated data signal in fewer ad sets.
If you disagree, go into any account of yours and sort by amount spent at the ad level. You'll see the same thing every time: 20% of the ads get 80% of the spend. That's how Meta works. It will look the exact same at the ad level blended across the account on a long time frame (whether it's CBO or ABO).
And if you understand the breakdown effect, it makes perfect sense why this is.
Some ads will never get much spend. And people think that's a bad thing, or that it's different from ABO testing. It's not! The exact same outcome will occur in ABO testing. Many ads will spend pennies to dollars. You just didn't break best-practices to achieve that same outcome when consolidating down.
And hey, if you want to break out a new CBO for a different business objective (sale moment, new product drop, etc). Go for it! That's how "campaigns" are supposed to work.
Otherwise, consolidate and don't assume you can game the algorithm. The probability is not in your favor if you try to.
Do what you want. But all that tinkering ends the same way: a consolidated campaign scaling most of the budget anyway.
You just took the long road to get there.
What do you think? If you disagree, would love to hear it.
"Every time I scale ad spend, my ROAS tanks."
That's what my client said right before we took him from $85K to $400K/mo in spend whilst maintaining his target ROAS.
It wasn't luck. It wasn't a new campaign structure.
It was 3 things working together:
Personas × Awareness Levels × Formats.
Most people on X will tell you to just increase your budget and see what happens.
That works until it doesn't. And when it stops working, you have no idea why.
Here's the framework that actually made us scale:
Step 1 – Extract your personas from real customer data
Not from what you think your customer looks like.
Export your reviews. Upload them into Claude. Ask it to segment by pain point, emotional trigger, and failed solution. Manually dig into the most common points.
You'll find distinct personas hiding in your customer base that your ads have never spoken to directly.
Each one is a new audience waiting to be unlocked.
Step 2 – Map each persona to an awareness level
This is where most brands leave money on the table.
If every ad you're running mentions your product or brand name in the hook, you're only talking to people who already know you exist.
That's why spend caps out.
For each persona, you need:
A top-of-funnel ad for people who don't know they have the problem yet.
A mid-funnel ad for people who know the problem but haven't chosen a solution.
A bottom-of-funnel ad for people ready to buy.
When you have creative across all three, Meta's algorithm does the targeting for you.
Step 3 – Prove the angle in one format, then scale it across others
If you already have a format that converts for your audience, start there.
Take the new angle and put it into the format you already know works for that demographic.
When it performs, take the messaging and test it in a new format – one that matches who you're actually talking to.
That's how you go from $85K to $400K/mo in spend without watching your ROAS fall off a cliff.
The ceiling is the number of angles you're testing.
I'm excited to get back in the growth saddle.
But I'm washed up and rusty. Who should I be following? What should I be watching?
Media buying for seven- and eight-figure brands, ad creative, landers, and offers.
Who are the best follows on here? Anyone producing great YouTube content or podcasts on these topics?
I’m going full white belt.
Tag them.
Still seeing accounts that are only excluding Pixel Purchase audiences for the last 180 days.
Meta increased the look back to 730 days in May 😵💫
The two most important things to do 👇
- update your existing Purchase audience to 730 days, don't make a new one.
- check your Audience Segments and confirm this audience is selected for Existing Customers.
this guy keeps dropping media buying sauce and I agree with everything he's saying
we currently have access to 40+ ad accounts (and $20M+ in monthly ad spend) with wildly different ad account structures and the brands I see scale the fastest are the brands running CBO campaigns
if your CBO dumps all the budget on 1-2 ads that's an indication that there is something wrong with your creative strategy
Stop overcomplicating scaling.
It’s literally:
• If spend ↑ & cpa ↓ → keep
• If spend ↑ & cpa ↑ → kill
• If no spend → hook trash
• If good yesterday → +20%
• If volatile → use 3–7d avg
That’s the whole bible.
You don’t wanna read it cuz it kills the “secret sauce” fantasy.
Why am I so obsessed with new product expansion?
Why does everyone and their dad have a creatine collagen gummy butt spray?
CACs have only ever gone up.
We paid, no joke, $4 per new customer in 2016.
That is now over $40. More than a 10x in ten years.
CACs will only go up.
The reason why the new winning playbook is
subscription health and wellness products, is because they cant get first purchase profitability to work with widgets
Ridge has figured it out.
But it isn't through scaling wallets.
Its through bolt on new products.
Like luggage, like phone cases, like knives.
Each is a small mini business, designed to capture a new customer.
Blended the brand grows.
Blended, CACs rise slower.
As bad as luggage is, it is still better than selling my 15th million wallet.
You can spend millions per month with literally 1 CBO.
I know I'm gonna catch heat from the sweaty ABO fans and the ABO gurus everyone loves to glaze but...
I'm mostly a CBO maxi now 😱
(Btw, stick around for the reasons CBO doesn't work too)
Should you even listen to me?
Welp.
I've been doing this FB ad stuff for 18+ years (and still am in the weeds today so I don't lose touch). I've studied literally billions of dollars worth of ads. Annnnd I just love this stuff and love talking about it.
Also, I used to be a huge ABO maxi. I get it! But things have changed and I adapted!
Here's a real example from a brand I started working with in April:
In March they were spending 6 figures across 9 separate campaigns.
NINE!
The full sweaty routine, trying and failing to media-buy their way to a million-dollar spending month. And those 9 campaigns were quietly competing against each other in the same auctions and fragmenting all the data.
Last 30 days? Over $1.5M in spend through 1 CBO campaign, running on Incremental Attribution.
And their cost per conversion actually dropped 5% while scaling.
Fewer campaigns. More spend. Cheaper conversions.
Annnnd, most importantly, every minute less wasted on sweaty media-buying baloney can be spent on the things that actually move the needle, and those benefits compound.
The best thing a media buyer can do in 2026 and beyond is...
Spend less time on media buying
and
Spend more time on anything else that matters to your (potential) customers and your business: creative, products, offers, copywriting, CRO, landing pages, etc.
CBO helps you do that. Let me explain why.
With CBO, you let the system do what it wants to do, and then you can study it, empathize with it, criticize it, and use your human context to modify it if/as necessary.
Empathize with it because the system is trying to solve a problem you can't fully see. When you understand what it's actually optimizing toward, you stop fighting it and start steering it.
Meta has more data about your ads than it reports, meaning it has more and better data than you do.
Ever wonder why Meta spends more on stuff with a lower ROAS or higher CPA than others?
That's either the breakdown effect or it's optimizing for something you can't see. (Or a combination of both)
You can't see if or how any users have seen or interacted with any other ads before they click the link.
But Meta can.
In the age of advanced AI machine learning post-Andromeda Meta advertising, if you think the only thing that matters is the last ad a user clicked before they got to your site, or that only link clicks matter and no other on-Meta actions matter, then you're simply not living in reality.
This is also why I run Incremental Attribution on that CBO. It tells Meta to optimize toward the conversions it actually drove, not every last-touch conversion it can take credit for.
Better signal in, better optimization out.
CBO plus human inputs via cost caps and/or budget mins and maxes is the way to go.
Best of both worlds.
This works best the more data you feed Meta, so you need a lower CPA and/or high spend. The more data the system has, the more I generally trust it.
Consolidation = more data for Meta to optimize.
The worse/less data that you give Meta or the more you fragment your account, the less you should trust it to optimize on your behalf effectively.
Now, the honest part. CBO is not magic and it does have real weaknesses:
1. CBO optimizes to cost, not profit. Mix products with different margins in one campaign and it'll happily pour budget into cheap, low-value conversions. Feed it value signals or it'll work against you. (Or otherwise apply your own context via cost caps and budget controls)
2. Budget flows to whatever the system likes, so if you need guaranteed spend on a new product or geo, it'll fight you. (That's what the budget mins/maxes are for!)
3. Low-volume accounts don't give it enough to chew on. If you're not feeding it much, it can't optimize much.
4. It's scary and hard to move from a fragmented setup, especially if you've been using it for years. Consolidating resets learning. There's a real short-term cost while it re-figures things out. It's worth it, but don't panic on day 2.
Soooo when is ABO still right? Lower-spend or lower conversion volume accounts, or any time you simply can't get good data into Meta. Or if you're optimizing for something without deeper data being sent at all like reach, brand awareness, or link clicks.
ABO is also fine if you can mostly consolidate into as few campaigns and ad sets as possible, buuuut the reported data can still be misleading and cause a media buyer to optimize in the wrong direction.
And look, I'm not saying this is the exact RIGHT/BEST way to run EVERY account or business. It's not.
CBO is probably the easiest and smartest for most businesses, and it frees up a lot more time and resources to focus on the most important stuff.
It helps that this business has basically one main product, so consolidating into a single campaign is clean and easy. No mixed margins, no ten SKUs fighting for budget. If your catalog is more complicated, your setup probably needs to be too.
But if it can work for a business spending this kind of money, it might work for yours too. Just because you CAN over-optimize and manually control every little thing, doesn't mean you should.
This CBO plan will never work for YOU if you:
1. Have zero trust in Meta (I'm not saying you should 100% trust Meta all the time. Please don't! Buuut you need to be able to trust it at least a little bit)
2. Don't care or understand that overlapping campaigns and ad sets impact each other
3. Think you have more/better data than Meta's system (you don't! Seriously, you don't! Click data only tells one part of a complicated journey)
4. Think you're smarter than Meta's system (you're not!)
5. Give Meta bad/wrong signals/data to optimize from
6. Refuse to believe that there are other bigger things to focus on more than media buying
And here's the thing sooo many media buyers (and gurus!) don't want to hear or admit: they think their media buying is the reason it's all working.
It usually isn't.
It's the excellent creative, the strong offer, the dialed-in landing page, the actual product people want. The media buyer is often just along for the ride on top of a great machine, taking credit for the engine someone else built.
The best media buyers I know are the first to admit this.
Oh, and this post isn't a pitch. I'm not gating any of this behind a signup. I just want you to squeeze the best performance you possibly can out of your ads.
But if you take one thing from all of this, take this: the biggest swings in your ad performance usually aren't coming from media buying at all.
They're coming from your website and the world around it. A landing page change. A new product launch. A price update. A broken checkout. A competitor's promo. A holiday. A news cycle.
That stuff moves your numbers way more than which campaign structure you picked.
It's the entire reason I'm building https://t.co/5OLof3cdhh Because most people are staring at their ad account hunting for an answer that actually changed on their website three days ago, and they never even noticed.
TL;DR: Consolidate or die.
Feed it good signal (Incremental Attribution helps). Steer with cost caps and budget mins/maxes instead of babysitting. Then go spend your time on creative and offers, and alllll the stuff that actually moves the business.
If you run ABO and you're winning, or you think I've got any of this backwards, come at me. Reply, quote it, tear it apart. I'll take any and all of it.
One fair ask though: if you've never actually run a full consolidation, all the way down to 1 or 2 campaigns, I'll still read your take, but know that I'm going to weight it differently than someone who's actually tried it and watched what happened.
That's not me dodging the argument. It's the opposite. Go run it. Give Meta the data, give it a real shot, and then come tell me everything I got wrong. That's the feedback I want most, because that's the feedback that can actually change my mind.
Opinions from the sideline are welcome. Opinions from the field are gold.
And if any of you want to actually hash this out live, a space, a call, a recorded chat, whatever, I'm in. I'd love to sit across from someone who disagrees and see what I'm missing.
Most people test ads the slow way. One concept, wait a week, kill it, next concept. Two months in, they've learned almost nothing.
Here's the fast way:
→ Stack 25-30 ads into a single ad set (ABO)
→ Plan to spend 5x allowable CAC
→ Let it sit for 72 hours
Meta quietly concentrates budget & results on 1-2 ads. Those are your signals. Pull them into your scaling campaign, shut them off in the test set, and Meta goes hunting through what's left.
Run that loop until the batch is empty.
"Yea we've heard this exact pitch before, I know it won't help our performance"
Confessions from a failed agency audit 🧵
I pitched a brand a few weeks ago and the hook above is exactly what they said during the call, not a great start right?
CPA was increasing rapidly, they hadn't found a winning ad in months - but everything I said fell on death ears.
Here's 5 things I found in their data, all of them had been heard before but not yet fixed or implemented.
No. 1: Their pixel was receiving events on really 🌶️ websites, easy fix - you just block the domains in Settings, but it hadn't been flagged by their current provider or the spotted by the brand. Red flag number 1.
Your next winning ad might already be sitting in your account with $12 of spend on it.
Here's what I mean. Open Ads Manager:
→ Sort every ad by amount spent
→ Date range: all time
→ Scroll to the bottom of the list
Everything down there got skipped. Not rejected by the market. Skipped by Meta. The algo locked onto its favorites in the first 48 hours and never circled back.
Those ads were never actually tested.
So give them the test they never got:
→ Pull them into a brand new ad set
→ Add a min spend limit so Meta has no choice but to deliver on them
I've watched ads go from $10 of lifetime spend to top performer status doing exactly this. Same creative. The only thing that changed was forcing delivery.
Creative production is expensive. Retesting what you already paid for is free. Do the free thing first.Since you ask for tweet ideas almost daily, if you'd like a fresh batch delivered automatically every weekday morning, use the scheduling option that just appeared.