A/B Testing Facebook Ads the Right Way (2027)

How to run a controlled Facebook A/B test: write a hypothesis, change one variable, fund enough events, run the right length, and read a clean result before you scale.

Updated June 2027 · Likit Sae Lee, CTO

A/B Testing Facebook Ads the Right Way (2027)
Quick answer

A proper Facebook A/B test starts with a written hypothesis, then uses Meta's built-in A/B Test tool, which randomly splits your audience with no overlap so two ad sets never bid against each other. Change ONE variable, prioritise high-leverage ones (offer, audience, creative angle) over cosmetic ones, fund each variation past Meta's 100-event floor, and run at least 7 days (Meta's stated minimum), ideally two full weeks, up to the 30-day maximum. Meta declares a winner at 65% confidence, which means better bet, not proven, so wait for higher confidence or 50+ conversions per variation before you scale.

You have two ads you like and a hunch about which one wins. So you put both live, watch the numbers wobble for three days, and pick the one that's ahead. That is not a test, it's a guess wearing a lab coat. A real A/B test isolates one variable, gives each version a fair and equal slice of the same audience, and runs long enough that the result would hold if you ran it again. Meta has a built-in tool that does the hard statistical parts for you, and most advertisers either ignore it or misread what it says. Here is how to run the experiment properly and ship the winner with confidence.

Why the built-in A/B Test tool beats eyeballing two ad sets

The most common way people "test" on Facebook is to duplicate an ad set, change the creative, run both, and pick whichever has the lower cost a few days later. It feels rigorous. It is not, and the reason is the auction.

When two of your own ad sets target overlapping audiences, the same person can be eligible for both. Meta will not show one person your two competing ads in a fight to the death, so it suppresses one of them, and your two ad sets effectively bid against each other. You pay more, delivery skews unpredictably toward one version, and the "winner" you crown might just be the ad set that won the internal coin flip more often. You learned nothing about the creative.

Meta's A/B Test tool, found in the Ads Manager toolbar and under the broader Experiments umbrella in Meta Business Suite, solves exactly this. It randomly divides your audience into separate, non-overlapping groups, one per variation. Each version gets a clean, comparable slice of people, nobody sees both, and the ad sets never collide in the auction. On top of that, the tool computes a confidence number for you, so you do not have to eyeball two cost figures and pretend you know which gap is real. That is the whole pitch: a fair split plus an honest verdict.

The Experiments umbrella also houses heavier instruments, the holdout and lift tests, which answer a different question entirely ("did the ads cause sales at all", not "which ad is better"). They are worth a clean contrast of their own, covered further down. This guide is about the standard A/B test, the workhorse for comparing variations.

There is also a practical reason to prefer the tool over a manual setup: it does your bookkeeping. The A/B Test wizard records which metric defines the winner (usually cost per result), keeps the budgets equal across variations so one version cannot win simply by spending more, and timestamps the start and end so you read the result over the same window for both. Doing all of that by hand across duplicated ad sets is where careless tests go wrong, because a small asymmetry in budget or timing looks exactly like a creative difference in the final numbers. Let the tool hold those variables constant so the only thing that varies is the one you chose to test.

Start with a hypothesis, not a hunch

Before you pick a variable, write down what you expect and why. A hypothesis is a single sentence: "I expect variation B to beat variation A on cost per purchase because reason." Make it concrete. "I expect the testimonial video to lower cost per purchase versus the product-hero static because social proof reassures first-time buyers" is a hypothesis. "Let us see which one does better" is not.

That one sentence is what turns a result into a lesson. Without it, a test answers "which image had the lower cost", a fact you cannot reuse. With it, the same test answers "was I right that social proof matters to cold buyers", a finding about your customer that informs the next ten ads. The prediction also keeps you honest, because you commit to a metric and an expected direction up front and cannot quietly move the goalposts once the data lands. Write it down where your team can see it: the metric you are judging on, the variation you expect to win, and the reason. A test that disproves your assumption is then as valuable as one that confirms it, because it stops you building the next campaign on a wrong idea.

Test exactly one variable, every time

The single rule that separates a real experiment from a hunch is this: change one thing.

Diagram contrasting a clean single-variable Facebook A/B test where only the creative changes against a muddy test where creative, audience and headline all change at once.

If version A and version B differ in the image, the headline, and the audience all at once, and B wins, you have a result you cannot use. Was it the image? The copy? The targeting? You will guess, you will guess wrong eventually, and you will scale the wrong lesson. Shopify's 2025 testing guidance and every neutral source say the same thing: isolate a single element so the outcome is attributable to a specific cause.

Pick one of these per test, and notice that each lives at a different level of the campaign structure (campaign, ad set, or ad), which is the level the A/B Test tool will vary while holding the rest constant:

  • Creative (the ad level): image versus video, hook A versus hook B, static versus carousel.
  • Audience (the ad set level): a broad interest set versus a lookalike, one creative held constant.
  • Placement (the ad set level): Feed-only versus Feed plus Reels and Stories.
  • Objective or optimization event (the campaign or ad set level): optimizing for purchases versus add-to-cart.

A brand like Shakura might run a single-variable creative test, a testimonial video against a product-hero static, with the audience, budget, and placements identical across both. A brand like Medicube might hold one before-and-after creative constant and test a broad interest audience against a lookalike. In both cases, exactly one thing moves, so the winner names its own cause.

One trap in 2026: automation can quietly vary the thing you are trying to test. Advantage+ audience and Advantage+ placements expand delivery on Meta's terms, which is great for a live campaign but can blur a controlled test by changing who sees what. When you run a clean single-variable experiment, turn off the automation that varies the variable you are isolating, so the only difference between A and B is the one you chose.

This is also why single-variable A/B testing is the default and multivariate testing is not. A multivariate test changes several elements at once (say two headlines crossed with two images crossed with two buttons) to read every combination, which sounds efficient. The catch is volume: combinations multiply, so a handful of elements explodes into eight, twelve, or more cells, and each cell still needs enough events to reach significance on its own. That demands far more traffic and budget than most advertisers have, which is why a focused one-variable test resolves faster and is the right tool unless you genuinely have the scale to feed a grid.

What to test first: the priority order

Not all variables move the needle equally, so the order you test them in decides how fast you learn. Rank candidates by leverage, not by how easy they are to change in Ads Manager.

  1. The offer. Price, bundle, free shipping, a guarantee, or the discount framing. This is usually the single biggest lever on whether people buy, and it is the one teams skip because it feels like a business decision rather than an ad test.
  2. The audience. A cold prospecting segment versus a lookalike, or one interest cluster versus another. Who you talk to changes what works.
  3. The creative angle or hook. A testimonial angle versus a problem-solution angle, or a founder story versus a product demo. The concept, not the colour.
  4. The format and placement. Video versus static, carousel versus single image, Feed versus Reels.
  5. Cosmetic details. Button colour, font, a single swapped word, the order of two sentences.

Work top down. A test on the offer or the angle can reshape the whole account; a test on a button colour, run over two weeks with real budget, usually proves almost nothing. Spend your scarce test cycles where the leverage is, then refine the small stuff once the fundamentals are settled. If you have never tested your offer against an alternative, start there before you ever touch a font.

How to launch an A/B test in Ads Manager

Once you have a hypothesis and a single variable, the build itself is short. There are two ways into the tool, and the steps are the same after that.

  1. Open the A/B Test tool. You can toggle "Create A/B test" on while building a new campaign, select one or two existing campaigns or ad sets in Ads Manager and click the A/B Test button in the toolbar, or start one from the Experiments section in Meta Business Suite. Starting from an existing item lets Meta copy it and change only the variable you choose.
  2. Pick the single variable. The tool offers a fixed list: creative, audience, placement, and so on. Choose one. Meta then creates the second version that differs only on that variable and holds everything else identical.
  3. Keep the budgets equal. The tool defaults to splitting spend evenly across the variations. Leave it that way, because an unequal budget lets the better-funded version win on delivery rather than on merit.
  4. Choose the key metric that decides the winner. This is usually cost per result. Set it deliberately, because the tool will declare the winner on whatever metric you pick here.
  5. Set the schedule. Give it at least 7 days and a clear end date inside the 30-day maximum. Then publish and leave it alone.

There is a legitimate manual version for the cases the built-in tool does not cover, for example comparing two campaigns that already exist, or a window the tool will not schedule. The trick is to recreate the tool's clean split by hand: target the two ad sets at mutually exclusive audiences so the same person can never land in both. You do that with audience exclusions, excluding each ad set's audience from the other, which prevents the audience overlap that otherwise has your own ad sets bidding against each other. A manual test built without that exclusion is the broken DIY duplicate this guide warns against; a manual test built with it is a fair comparison the tool simply was not set up to run for you.

Sample size: fund the test or it fails by default

A test with too little data does not give you a cautious result. It gives you a false one. Early numbers are noisy, and a starved test reads that noise as signal.

Meta begins surfacing a result once it observes roughly 100 events for your tested metric, whether those are clicks, leads, or purchases. Below that floor, do not even look. But 100 is the minimum to read, not the standard to scale. A second, stricter gate sits underneath it: the learning phase. Per Meta's own Business Help Center, an ad set needs to accumulate around 50 optimization events within a rolling seven-day window to exit learning. An ad set stuck in "Learning" or "Learning limited" is still exploring, so its cost per result is unstable and its place in your A/B comparison is unreliable. The mechanics of that window, and how to escape it faster, are worth a closer read in the companion guide on the Facebook ad learning phase.

Put those two facts together and under-funding becomes the most common cause of a dead test. If your daily budget cannot push each variation past 50 events a week, the ad set never stabilizes, never accumulates the 100 events Meta wants, and the experiment quietly returns nothing.

The budget math is sobering once you anchor it to real benchmarks. Per WordStream by LocaliQ's 2025 data (Apr 2024 to Jun 2025, US campaigns), the average Facebook leads-campaign cost per lead is $27.66, at a 7.72% conversion rate and a $1.92 cost per click.

Test goalWhat you need per variationImplied spend per variation (at WordStream averages)
Read a result (Meta floor)~100 eventsRoughly $2,766 in leads at $27.66 CPL, or fewer/cheaper if you test on clicks
Clear the learning phase~50 events per ad set / weekAt least a week of funded delivery, no mid-flight edits
Confident enough to scale50+ conversions per variationMeaningfully more than the read-floor, often weeks of spend

If your tested metric is clicks rather than conversions, the volume is far cheaper to reach at a $1.92 CPC, which is one reason early-funnel tests resolve faster than purchase tests. The lesson is not "spend a fortune", it is "do not start a conversion test you cannot afford to finish". A half-funded test is worse than no test, because it produces a confident-looking number you will be tempted to act on.

A useful planning move is to test on the closest reliable signal you can afford. If purchases are too sparse to reach 100 events in your window, test on add-to-cart or landing-page views instead, accept that you are measuring an upstream proxy, and validate the winner on actual purchases once it is live. This keeps your experiments funded and fast without pretending a thin purchase signal is conclusive. Make sure your Dataset and Conversions API events are firing cleanly first, because server-side events count toward both your conversions and your learning-phase progress, and a misconfigured Dataset will starve a test that is actually well funded.

How long to run it, and when not to peek

Meta's own stated guidance is a minimum of 7 days and a maximum of 30 days for an A/B test, and Shopify's independent 2025 guidance is at least one week to absorb daily and day-of-week swings. Seven days is the floor because buying behavior runs on a weekly rhythm: shopping on a Tuesday differs from a Saturday, paydays cluster, and Meta's delivery system spends the first stretch learning. In practice many advertisers run a full two weeks so the result spans two of every weekday rather than one, which smooths out a single odd Monday. Call a test on day three and you are reading the warm-up lap as the finish line.

The discipline is to set the run length up front and not look for a verdict early. You can monitor that the test is delivering and spending evenly, but resist crowning a winner the moment one variation pulls ahead, because that lead routinely reverses once the learning phase clears and more events land. A brand like Beyond Collagen+ running a founder-story creative test would let the full two-week window play out, gather 100-plus events per variation, and only then read the result.

A longer window also exposes the test to the real world, which is the catch. A two-week run can be quietly contaminated by things that have nothing to do with your variable: a holiday or payday, a competitor launching a sale, your own price change or a landing-page edit mid-test, a platform or tracking change, or plain seasonality. Any of these can hand you a false winner, because the variation that happened to run during the good week looks better than the one that ran during the flat week. Two defenses help. First, run both variations over the same window so a shared event hits them equally rather than one of them. Second, log anything unusual that happened during the test, and if a real confounder lands in the middle (a stockout, a viral moment, a tracking break), discard the test and rerun it clean rather than trusting a polluted read.

There is one absolute rule for the duration: do not edit the test while it runs. Changing the budget, the creative, the audience, or the bid restarts the learning phase and contaminates the sample, because part of your collected data now describes a setup that no longer exists. If something is genuinely wrong, stop the test and restart it clean rather than patching it live.

Judge the winner on the metric that matches the goal

Decide before launch which number names the winner, and make it the metric closest to the money. For most ecommerce tests that is cost per result (your cost per purchase or cost per acquisition), or return on ad spend when order values vary. Set that as the key metric in the tool and let it call the result.

The trap is letting a top-of-funnel number decide a bottom-of-funnel question. Click-through rate is the usual culprit: it is easy to read, it moves fast, and a punchy variation can win on clicks while losing on sales. A loud hook that pulls curious clicks from people who never buy will post a great CTR and a terrible cost per purchase. If your hypothesis is about purchases, judge on purchases, and treat CTR as a diagnostic that explains the result, not the result itself. Use the upstream metrics to understand what happened, and the business metric to decide what wins. The full hierarchy of which number means what is laid out in the guide to Facebook ad metrics.

Reading a clean result without fooling yourself

Here is the nuance most guides skip, and the one that will save you money. Meta declares a winner for a standard A/B test at 65% confidence. For lift and holdout tests, the bar rises to 90%. Those bars are Meta's own: its Business Help Center states that for A/B tests a 65 percent or higher confidence percentage represents a winning result, and for lift tests a 90 percent or higher confidence percentage represents a statistically reliable one.

Diagram of a confidence scale showing Meta's 65 percent A/B winner bar as a better bet, the 90 percent lift and holdout bar, and the 95 percent statistical significance standard, with a note to gather more evidence before scaling.

Confidence here means the estimated likelihood that the same variation would win if you ran the test again. It is not a classical p-value. This matters because 65% is a low bar. In a coin-flip framing, 65% confidence still leaves a meaningful chance the "loser" was actually equal or better and just had a bad run. Practitioners who care about high-stakes decisions, like Thread Transfer in its 2025 significance guide, work to the 95% statistical-significance standard and want 50+ conversions per variation before they commit budget. So you have two different bars: Meta's 65% "this is the better bet" and the stricter 95% "this is safe to scale on".

Read your result in that light. A 65% winner is a directional signal worth acting on cautiously: ship it, keep watching. A winner at higher confidence, with comfortably more than 50 conversions behind it, is something you can roll across campaigns. Treat the two differently and you stop overreacting to thin wins.

There is a third outcome people forget to plan for: no winner at all. A flat result, where neither variation clearly beats the other, is normal and informative, not a failed test. Across the wider world of testing, most experiments do not crown a clear winner even when they are run correctly, because the two variations are often genuinely close in performance. When that happens, the honest read is "this change did not matter much", which is a real finding: it tells you to stop refining that element and go test a higher-leverage one instead. Do not force a fake winner out of a tie by squinting at a 51-to-49 split. The one case where a flat result is not informative is the under-funded test from the section above: if neither variation cleared the event floor or escaped the learning phase, you are looking at noise, not a genuine tie, and the fix is budget, not a verdict.

Meta is candid that the upside, when it works, is real but variable. Meta reports that the best A/B tests drive around 30% lower cost per result on average, and cites a cosmetics brand, Pink Panda, that attributed a 29% lower cost per incremental purchase and a 1.6x lift in sales to testing its video ad messaging. Both figures are Meta's own, so treat them as directional marketing claims rather than guaranteed outcomes. They show the shape of the prize, not a number you should expect to hit.

ReadingConfidenceWhat it earns
Directional signal65% (Meta winner bar)Ship the winner, keep it under observation
Strong evidence90% (lift / holdout bar)Trust incrementality conclusions
Scale-ready~95% + 50+ conversions per variationRoll the winner across campaigns and budgets

A/B test versus incrementality and holdout: which question are you answering

These get conflated constantly, and the confusion costs people real money, so it is worth drawing the line cleanly. An A/B test and a holdout test answer two different questions, and you pick the tool by the question you actually have.

Test typeThe question it answersWhen to use it
Standard A/B testWhich of these two variations performs better?Choosing between creatives, audiences, placements, or offers
Holdout or incrementality (lift) testDid the ads cause sales we would not have got anyway?Proving a campaign's true contribution and justifying its budget

The A/B test is a comparison: it splits a live audience between A and B and tells you which one wins. It assumes you are going to run ads regardless and just wants to know which version. A holdout test is a different instrument entirely. It deliberately withholds your ads from a random slice of people, then compares that unexposed group against the exposed one, so the gap between them is the lift your ads actually caused. That answers "are these ads doing anything", not "which creative is better", which is why Meta holds it to the higher 90% confidence bar.

Reach for the A/B test when you are choosing between options, which is most of the time. Reach for a holdout or lift test when the question is whether a channel deserves its budget at all, for example when a chunk of your "conversions" might have happened without the ad. Both lean on clean conversion data, so a healthy Conversions API setup underpins either one.

The mistakes that quietly waste your test budget

Most failed tests fail for one of a short list of reasons, and all of them are avoidable.

  • Testing several variables at once. The result is unattributable. You will scale a guess.
  • Calling it early. The day-three leader is frequently not the day-fourteen winner. Wait out the window.
  • Under-funding. Functionally identical to calling it early: the test never clears learning or reaches the event floor, so the verdict is noise.
  • Editing mid-flight. Any change to budget, creative, audience, or bid restarts learning and poisons the sample.
  • DIY duplicate ad sets with overlapping audiences. This recreates the exact auction-overlap problem the A/B Test tool exists to remove.
  • Conflating 65% with 95%. Acting on a thin Meta-confidence result as if it were proven, then scaling a fragile winner.

Notice that under-funding and stopping early are the same failure wearing two costumes: both deny the test enough data to separate the variations. If you only fix one thing from this list, make it this: decide the budget and run length before you launch, and hold both.

Ship the winner, then test the next thing

A test is not the end of a campaign, it is one turn of a loop. Take the winning variation and promote it to be your new control. Then isolate the next single variable and test against that control. If the winner was a testimonial hook, the next test might hold that hook constant and pit two thumbnails against each other, or two audiences. Each round banks the last win and asks exactly one new question.

A brand like Beyond Collagen+ might land on a founder-story hook as the proven control, then run its next experiment on the offer framing while keeping that hook fixed. Over a quarter, that is four or five compounding, attributable improvements instead of five fresh guesses. This is also where the routine cadence of creative testing meets the rigor of the controlled experiment: the cadence keeps fresh ideas flowing, and the A/B test tells you which ones actually earned their place. For the rhythm of feeding that pipeline, see the companion piece on creative testing, and for the metrics you compare across variations, see the breakdown of Facebook ad metrics.

The compounding only works if you write the learnings down. Keep a simple test log: the date, the hypothesis, the one variable, the deciding metric, the result, and the decision you made. A running record stops you re-running a question you already settled six weeks ago, surfaces patterns across tests that no single result shows, and lets a new teammate see why the account is set up the way it is. Treat it as the account's memory, not paperwork.

The other discipline is not running so many tests that you starve all of them. Every variation still needs enough budget to clear the learning phase and reach the event floor, so a fixed monthly budget puts a hard cap on how many tests can run at once. Three well-funded tests teach you more than ten under-funded ones that all stall in learning. Decide how many concurrent tests your spend can actually support, queue the rest on a roadmap, and resist the urge to test everything this week. If budget allocation across ad sets is the constraint, the trade-offs are worth understanding through the lens of campaign versus ad set budgeting.

Keeping research, generation, editing, and Meta launch in one connected workflow, the way a platform like AdPlay.ai does, makes the loop tighter, because the winning creative from one test feeds straight into the next round without leaving the tool. But the discipline is what matters more than the tooling: one variable, enough events, the full run length, and an honest read of what the confidence number is really telling you. Do that consistently and your ad account stops being a slot machine and starts being a science.

Example ad angles

Representative hooks and formats from the category.

Video
Shakura

“Testimonial ad for pigmentation fading after a facial course”

Static
Medicube

“Before-and-after ad for pores looking visibly tighter in two weeks”

UGC
Beyond Collagen+

“Founder or UGC ad for skin feeling firmer after eight weeks on collagen”

See more real ads in the AdPlay.ai library

By the numbers

65%
Confidence Meta requires to declare a standard A/B test winner
Meta Business Help Center, 2026
90%
Confidence required for lift and holdout tests
Meta Business Help Center, 2026
100 events
Minimum observed events before A/B results are worth reading
Meta Business Help Center, 2026
7 to 30 days
Meta's stated A/B test run length (minimum to maximum)
Meta Business Help Center, 2026
95% confidence (p = 0.05)
Statistical-significance standard CRO practitioners work to
Wikipedia, 2026
30% lower
Best A/B tests' average cost-per-result improvement (Meta claim)
Meta for Business, 2026
29% lower cost, 1.6x sales lift
Pink Panda case study result attributed to message testing
Meta for Business, 2026
~50 events
Optimization events to exit the learning phase, per ad set per week
Meta Business Help Center, 2026
$27.66
Average Facebook leads-campaign cost per lead, all industries
WordStream by LocaliQ, 2025
7.72%
Average Facebook leads-campaign conversion rate
WordStream by LocaliQ, 2025
$1.92
Average Facebook leads-campaign cost per click
WordStream by LocaliQ, 2025
1 week
Independent minimum test duration to absorb daily swings
Shopify, 2025
50+
Conversions per variation many practitioners want before calling it
Thread Transfer, 2025

Frequently asked questions

How do I form a good A/B test hypothesis before I launch?

Write one sentence before you spend a cent: I expect variation B to beat variation A on this metric because of this reason. For example, I expect the testimonial video to lower cost per purchase versus the product-hero static because social proof reassures first-time buyers. The stated prediction is what makes the result actionable: you learn whether your reasoning about your customer was right, not just which image won. A test with no expectation teaches you a number. A test with one teaches you something about your audience you can reuse.

What should I test first, and which variables have the biggest impact?

Rank variables by leverage, not by how easy they are to change. The offer (price, bundle, guarantee), the audience, and the creative angle or hook move results far more than cosmetic tweaks like button colour, font, or a single swapped word. Spend your first test cycles on the high-leverage levers and you learn something that reshapes the account. Spend them on a font and you spend two weeks proving almost nothing. Test the big rocks first, then refine details once the fundamentals are settled.

What is the difference between Meta's A/B Test and just running two ad sets?

When you duplicate an ad set and run both yourself, the same person can land in both audiences and the two ad sets bid against each other in the auction. That overlap pollutes the comparison and inflates your costs. Meta's A/B Test tool randomly splits the audience into non-overlapping groups, so each variation reaches a fresh, comparable slice and the result reflects the creative, not auction collisions.

What is the difference between an A/B test and an incrementality or holdout test?

They answer different questions. An A/B test asks which of two variations wins, splitting a live audience between version A and version B. An incrementality or holdout test asks whether the ads caused anything at all, withholding ads from a random group and comparing it against people who saw them. Use an A/B test to choose between creatives, audiences, or placements. Use a holdout or lift test when you need to prove the campaign drove sales you would not have got anyway, which is a budget-justification question, not a creative one.

How long should I run a Facebook A/B test?

Meta's stated minimum is 7 days and the maximum is 30 days. Seven days is the floor because buying behaviour follows weekly patterns, and a shorter window misreads a quiet Tuesday or a busy weekend as a verdict. Many practitioners run a full two weeks to capture two of every weekday, and Shopify's independent guidance is at least one week. Never call a test on day three: early numbers are volatile and the day-three leader is often not the day-fourteen winner.

What does it mean if my test shows no clear winner, and is that normal?

It is normal, and a tie is a real answer rather than a failure. Most experiments do not crown a clear winner even when run correctly, because the two variations are often genuinely close in performance. A no-winner result tells you the change you tested did not matter much, so stop refining it and test a bigger lever instead. The exception is an under-funded test: if neither variation cleared the 100-event floor or escaped the learning phase, you have noise, not a tie, so fund it properly before you conclude anything.

What does Meta's 65% confidence actually mean?

Confidence is Meta's estimate of how likely the same variation would win if you re-ran the test. At 65%, the winner is a better bet, not a proven fact. That bar is far below the 95% statistical-significance standard practitioners use for high-stakes decisions, so treat a 65% result as a directional signal and gather more evidence before you bet a big budget on it.

What do I do after a test produces a winner?

Promote the winner to be your new control, then isolate the next single variable and test against it. This is the loop: each round bakes in the last win and asks one new question. Log what you tested and what you learned so you never re-run a settled question. Over time you compound small, proven improvements instead of guessing from scratch every campaign.

Sources

Keep exploring

Turn ad research into winning ads

Research the ads that work, generate the creative on-brand, and launch to Meta, all in one tool.

7-day free trial · No credit card required