Scale the Winners
Sort campaigns into scale, hold and pause on real return, then move money to winners in safe 20% steps.
From Sanskar's ad account
On 20 Oct 2026 Meta reported 6.6x on the course campaign. Real ROAS from Razorpay was 3.4x for the day and 1.6x for the week. The budget went from ₹1,000 to ₹1,200 a day (+20%), with a rule written down in advance: real ROAS ≥ 2x for 3 days → ₹1,500, below 1.3x → back to ₹1,000.
The goal was never to spend less. It's about whether ₹10,000 a day of spend brings back ₹50,000. If it does, spend it.
Install
Run this once in your terminal. Claude Code picks the skill up in your next session, in every project.
mkdir -p ~/.claude/skills/scale-the-winners && curl -fsSL https://talktoads.com/skills/scale-the-winners/SKILL.md -o ~/.claude/skills/scale-the-winners/SKILL.mdFor one project only, use .claude/skills/scale-the-winners inside the project instead.
Then ask
Which of my campaigns should I scale, hold or pause this week?
The skill
What the agent follows, from the SKILL.md you download.
Most people review ads to cut spend. The goal is profit, so every review should end with more money on what works, not just less on what doesn't.
Needs the TalkToAds connector (Meta). Works best after the real-roas-check skill, because scaling on Meta's ROAS alone can scale a loser.
Steps
-
Get 3+ days of data. Call
get_performancefor the ad account withlevel: "campaign",date_preset: "last_7d",time_increment: "1". A campaign with fewer than 3 full days isn't ready to judge. -
Use real ROAS. If the user has run real-roas-check, use those numbers. If not, ask for revenue per campaign from the payment gateway, or say clearly that you're using Meta's ROAS and it may be inflated.
-
Sort into three groups.
- Scale: real ROAS ≥ 2x for 3 days in a row
- Hold: 1x–2x, or fewer than 3 days of data
- Pause: below 1x for 3 days, or spending with zero sales for 3 days at more than one sale's price per day
-
Check the ad sets. For each Scale campaign call
list_ad_sets. Skip anything still in learning (learning_stage_info). A budget change resets learning. -
Propose the moves.
- Scale: +20% daily budget per step (
update_budget). If it has been 2x+ for a week, +30% is okay. - Pause:
pausethe campaign. Its budget goes to the winners. - Show a table: campaign, current budget → new budget, reason. Show the total daily spend before and after.
- Scale: +20% daily budget per step (
-
Wait for a yes, then apply the changes. Read each one back with
list_campaignsorlist_ad_setsto confirm. -
Set the next review. 3 days later, same skill. Don't touch winners in between.
Rules
- Never double a budget in one step. Meta treats a big jump like a new campaign and it re-enters learning.
- Don't scale on a single great day. 3 days minimum.
- If a spend cap is set (
set_spend_cap), a scale-up may be refused. Tell the user to raise it. - Before a big scale-up, remind the user to check the account spending limit and prepaid balance in Billing.
- Pausing everything is not a strategy. If nothing is a winner, the fix is the offer or the creative, not the budget.