Incrementality testing in Digital Marketing - Time & Space Complexity
Incrementality testing measures the true impact of a marketing action by comparing groups. We want to understand how the time to analyze results grows as we increase the size of the test data.
How does the effort to calculate incrementality change when we have more users or conversions?
Analyze the time complexity of the following incrementality test analysis.
// Assume we have two groups: test and control
// Each group has a list of user conversions
function calculateIncrementality(testGroup, controlGroup) {
let testSum = 0;
for (let i = 0; i < testGroup.length; i++) {
testSum += testGroup[i].conversions;
}
let controlSum = 0;
for (let j = 0; j < controlGroup.length; j++) {
controlSum += controlGroup[j].conversions;
}
return (testSum - controlSum) / controlSum;
}
This code sums conversions in both groups and calculates the relative lift to find incrementality.
Identify the loops, recursion, array traversals that repeat.
- Primary operation: Two separate loops that sum conversions in test and control groups.
- How many times: Each loop runs once for every user in its group, so total operations grow with the number of users.
As the number of users in test and control groups increases, the time to sum conversions grows proportionally.
| Input Size (n) | Approx. Operations |
|---|---|
| 10 users per group | About 20 additions |
| 100 users per group | About 200 additions |
| 1000 users per group | About 2000 additions |
Pattern observation: The total work grows directly with the number of users; doubling users roughly doubles the work.
Time Complexity: O(n)
This means the time to calculate incrementality grows in a straight line with the number of users analyzed.
[X] Wrong: "Since we have two groups, the time complexity is O(n²) because of two loops."
[OK] Correct: The loops run one after another, not nested inside each other, so their times add up, not multiply.
Understanding how analysis time grows with data size helps you design scalable marketing tests and explain your approach clearly in discussions.
"What if we combined test and control data into one list and filtered inside the loop? How would that affect the time complexity?"
Practice
incrementality testing in digital marketing?Solution
Step 1: Understand the goal of incrementality testing
Incrementality testing aims to find out if marketing efforts cause a real increase in results, not just measure activity.Step 2: Compare with other options
Counting visitors, tracking likes, or creating content are different marketing tasks, not incrementality testing.Final Answer:
To measure if marketing actions truly increase results -> Option CQuick Check:
Incrementality testing = measure true impact [OK]
- Confusing incrementality with simple tracking metrics
- Thinking it measures total audience size
- Assuming it creates marketing content
Solution
Step 1: Identify the key setup for incrementality testing
Incrementality testing requires splitting the audience into a test group (receives marketing) and a control group (does not).Step 2: Evaluate other options
Sending the same ad to all, tracking clicks only, or using random ads without measurement do not allow measuring true impact.Final Answer:
Divide audience into test and control groups -> Option DQuick Check:
Test and control groups = correct setup [OK]
- Not creating a control group
- Measuring only clicks without comparison
- Assuming random ads show incrementality
Solution
Step 1: Calculate the difference in conversions
120 (test) - 80 (control) = 40 additional conversions due to marketing.Step 2: Calculate incrementality percentage
(40 / 80) * 100 = 50% increase over control group.Final Answer:
50% -> Option AQuick Check:
(120-80)/80*100 = 50% [OK]
- Dividing by test group instead of control
- Forgetting to multiply by 100 for percentage
- Subtracting test from control instead of reverse
Solution
Step 1: Understand the control group role
The control group should not receive ads to serve as a baseline for comparison.Step 2: Analyze the effect of ads reaching control group
If control group sees ads, their conversions increase, reducing difference with test group, causing underestimation of true impact.Final Answer:
The test results will underestimate the true impact -> Option BQuick Check:
Control group exposed = impact underestimated [OK]
- Assuming control group conversions become zero
- Thinking test group loses conversions
- Confusing impressions with conversions
Solution
Step 1: Understand revenue impact requires both sales count and purchase value
Incremental revenue depends on how many sales increased and their value, not just counts.Step 2: Calculate total revenue difference
Calculate total revenue for each group (sales x average purchase value), then subtract Group B revenue from Group A revenue to find true incremental revenue.Final Answer:
Calculate the difference in total sales revenue between Group A and Group B -> Option AQuick Check:
Incremental revenue = revenue difference [OK]
- Ignoring purchase value differences
- Using only sales count without revenue
- Incorrectly multiplying sales by wrong average value
Ready to prove it?
Pass the test and this pattern moves unknown
