How to measure Meta ads incrementality, step by step
Write down the return your margin needs. Read Meta's claim next to its incremental estimate. Then test with a holdout: Conversion Lift if a campaign qualifies, a regional holdout if not. Judge the result against your bar and re-test when budgets or seasons change.
By Joris van Huët, Founder & CEOUpdated 9 min read
Run the numbers for your store: the free holdout test planner.
Usually in four moves. Write down the return your margin needs. Read Meta's claim next to its incremental estimate. Then test with a holdout: Meta's Conversion Lift if a campaign qualifies, a regional holdout if not. Judge the tested return against your margin bar, and re-test when budgets or seasons change.
This is the whole loop, from the number Meta shows you to the number you can budget on. Already qualify for Conversion Lift and only need the set-up clicks? How to test if your Meta ads are incremental, step by step goes deeper there. Every menu path below comes from Meta's, Google's or Shopify's own help pages, read on 1 October 2026.
Step by step
- Set the bar before you look at any result. Divide 1 by your gross margin: that is the return each euro of Meta spend needs just to break even. Shopify reports profit only for products that had a cost recorded when they sold. Path: Shopify admin > Analytics > Reports > Category filter > Profit Margin.
- Write down what Meta claims. For the last four full weeks, note each campaign's Amount spent, website purchases and their value, under the attribution setting it runs on. This is credit, not cause, but it is the number your team quotes. Path: Ads Manager > Campaigns > Columns > Customize columns > Conversions > Apply.
- Put Meta's incremental estimate beside it. Switch on the Incremental comparison and rank your campaigns by cost per result in that column alone. Meta built it to compare Meta campaigns with each other, and it holds nothing before 1 April 2025. Path: Ads Manager > Columns: Performance > Compare attribution models > Incremental > Apply.
- Choose what to test. Pick the line where a wrong answer costs most: your biggest spender, or the campaign that ranked last in step 3. If you have never tested Meta at all, start wider, since Meta suggests an account level test of your overall advertising first. Path: Experiments > Conversion Lift.
- Check whether Meta will run it for you. As a guide, Meta wants a campaign that started in the past year with $5,000 USD or more. It also needs at least 500 conversions under a 1-day click, 7-day click or 1-day view setting. For campaigns longer than 90 days the bar is prorated: 180 days needs $10,000 USD and 1,000 conversions. You also need the Conversions API sending an event with an Event Match Quality score above 5, or another supported source. Meta closes that second route to advertisers mainly targeting countries under the EU's ePrivacy directive. Path: Events Manager > your dataset > Purchase > View details.
- Run the test: Meta's, or your own. If you qualify, create a Conversion Lift test in Experiments; Meta splits people at random and keeps them in their group for the whole test. If you don't, exclude a random half of your cities in each ad set and untick Reach more people likely to respond to your ads. Path: Experiments > Conversion Lift; or Ads Manager > ad set > Audience > Locations > hover your country >... > Exclude cities.
- Set the length from your buyers' clock, then leave the campaigns alone. In GA4, read Days to key event for paths longer than one touchpoint, and run at least that long in whole weeks. Meta does not recommend reading results from the post-test window, so the test itself has to cover your slow buyers. Path: GA4 > Advertising > Key events dropdown > Key event attribution paths > Path length > greater than 1.
- Read the lift and judge it against the bar. In the report, read the sales lift and the ROAS lift. Trust results at a confidence of 90 percent or higher, Meta's line for a reliable lift test. For a regional test, compare each group's Shopify sales with their ratio before the test instead. Then check whether step 3 ranked this campaign the same way. Path: Experiments > Learn > View report > Results; or Shopify > Total sales over time > Filters > ⊕ > Billing city.
A worked example
For illustration, with round numbers invented for the example. Say you run two Meta campaigns: broad prospecting and retargeting of website visitors.
| For illustration, last four weeks | Prospecting | Retargeting |
|---|---|---|
| Amount spent | €8,000 | €4,000 |
| Purchase value Meta claims (7-day click, 1-day view) | €28,000 | €24,000 |
| Claimed ROAS | 3.5x | 6.0x |
| Cost per result, Incremental column only | €40 | €80 |
For illustration, the standard columns crown retargeting at 6.0x against 3.5x. For illustration, ranked inside the Incremental column alone, it comes last, at €80 a result against €40. So retargeting is the campaign to test: the standard columns love it, and Meta's own model does not.
Now the bar. If your gross margin is 40%, one store's Break-even sheet does the sum for you: 1 divided by 0.40 is 2.5x. For illustration, every euro of spend must then bring back €2.50 of sales just to break even.
Suppose retargeting qualifies and runs a Conversion Lift test for four whole weeks. One store's Journeys sheet shows journeys of 4 to 9 touches taking 16.9 days to buy, so four weeks covers buyers that slow.
| For illustration | Retargeting |
|---|---|
| Spend during the test | €4,000 |
| Sales lift in the Experiments report | €6,000 |
| ROAS lift (€6,000 / €4,000) | 1.5x |
| Break-even ROAS at a 40% margin, from the Break-even sheet | 2.5x |
For illustration, a ROAS lift of 1.5x sits well under the 2.5x bar. For illustration, each euro of retargeting brought back €1.50 of sales and, at a 40% margin, €0.60 of gross profit. If your numbers looked like this, the campaign loses 40 cents on every euro while still causing real sales.
Last, step 8 asks whether Meta's model pointed the same way. Here it did: the Incremental column ranked retargeting last before the test began. That earns the column some trust for ranking campaigns between tests. Cut or rework retargeting, then test it again next season.
What to check when the report looks wrong
- The Incremental column is blank. Meta shows no results in it for date ranges before 1 April 2025. Pick recent dates, or rank by Amount spent instead.
- Experiments shows nothing for Purchase. Meta says results can start once at least 100 conversion events are observed, but it recommends waiting until the test has finished. A short or small test may show no result for an event at all.
- Both groups bought about the same. Meta reads that as a difference that was not conclusive or significant. If it holds at the end, the effect was too small to see at this size. That is not the same as zero.
- Orders still arrive from excluded cities. Expect some. Meta says someone who lives in an included location may see your ad while visiting an excluded one. Judge the gap between the groups, not a perfect zero.
- CPM jumped during the test. Meta notes that lift tests can change the cost per impression of the campaigns in a test, because the control group sees no ads. Note the dates next to the result rather than stopping early.
- The lift and Ads Manager disagree wildly. They count different things. The lift counts all conversions in both groups between the test's start and end dates, while Ads Manager counts conversions inside its windows.
What to do this week
- Write the bar where the team will see it. In Shopify, filter Reports by Profit Margin, read last quarter's gross margin and divide 1 by it. Pass: the products behind most of your sales carry a cost, so the bar holds. Fail: big sellers show no cost, so the margin is a guess until you add their cost.
- Check the signal a lift test needs. In Events Manager, open your dataset, find Purchase and click View details. Pass: Conversions API events arrive with an Event Match Quality score above 5. Fail: pixel only, or a lower score, so fix the Conversions API before you book a test.
- Block the test on the calendar. In GA4, open Key event attribution paths, set Path length to greater than 1 and read Days to key event. Round up to whole weeks and find that many clean weeks before your next sale. Pass: the window fits. Fail: it doesn't, so test after the sale, not through it.
Check the homework. Your GA4 Attribution paths export already holds the evidence. Causality Engine reads that one file and shows what each channel caused next to what last-click gave it, in 1 to 2 minutes, for €99 once (excluding VAT), refundable within 30 days. Check the homework
Sources, 1 October 2026: Profit reports (Shopify Help Center); Customize columns in Meta Ads Manager (Meta Business Help Center); How to view results for incremental attribution in Meta Ads Manager (Meta Business Help Center); How to use incremental attribution in Meta Ads Manager (Meta Business Help Center); Best practices to get started with Experiments (Meta Business Help Center); About Conversion Lift (Meta Business Help Center); View server event details in Meta Events Manager (Meta Business Help Center); About lift and holdouts in Facebook advertising tests (Meta Business Help Center); Use location targeting (Meta Business Help Center); Key events attribution paths report (Google Analytics Help); View and understand holdout test results across Meta technologies (Meta Business Help Center); About confidence in your tests and experiments (Meta Business Help Center); Similar performance between test and holdout groups in a test (Meta Business Help Center); About Experiments (Meta Business Help Center); Differences between Conversion Lift test results and other reporting tools (Meta Business Help Center); Sales reports (Shopify Help Center); Filtering and editing your reports (Shopify Help Center).
Related answers
Frequently asked questions
Where is the Incremental column in Meta Ads Manager?
In Ads Manager, open the Columns: Performance dropdown, scroll to Compare attribution models, select Incremental and click Apply. Meta says the column only counts conversions its model considers incremental. It holds no results for date ranges before 1 April 2025.Can I use bid controls with Meta's incremental attribution?
Not on a campaign that uses incremental attribution as its model. Meta says you cannot use bid controls there, and you cannot change the model after you publish. To try it, build a new campaign rather than converting an old one.Do older Meta campaigns need more spend to qualify for a lift test?
Yes, because Meta prorates its guide for campaigns longer than 90 days. The base is $5,000 USD and 500 conversions for a campaign that started in the past year. In Meta's example, a campaign running for 180 days needs $10,000 USD and 1,000 conversions.
Go deeper: Incrementality testing, explained.
Sixty-second versions of these ideas: Causality Engine on YouTube Shorts.
Keep reading
Terms in this article
- AttributionAttribution identifies user actions that contribute to a desired outcome and assigns value to each. It reveals which marketing touchpoints drive conversions.
- Attribution ModelAn Attribution Model defines how credit for conversions is assigned to marketing touchpoints. It dictates how marketing channels receive credit for sales.
- Control GroupControl Group is a segment of an audience intentionally not exposed to a marketing campaign, used to measure the campaign's true causal impact.
- Google AnalyticsGoogle Analytics is a web analytics service that tracks and reports website traffic.
- Holdout TestA holdout test is an experiment where a portion of the audience does not see a campaign. This measures the campaign's true incremental impact.
- IncrementalityIncrementality measures the true causal impact of a marketing campaign. It quantifies the additional conversions or revenue directly from that activity.
- Incrementality TestingIncrementality Testing measures the additional impact of a marketing campaign. It compares exposed and control groups to determine causal effect.
- Profit MarginProfit margin measures profitability, calculated as net income divided by revenue and expressed as a percentage.