Open-source incrementality for marketing teams.
OpenLift helps teams design geo-lift tests, match control markets, estimate Bayesian counterfactual lift, and turn experiment results into decisions: scale, hold, cut, or retest.
OpenLift is maintained as a public GitHub project. The repo includes the Streamlit app, Python package, examples, methodology docs, tests, and deployment files.
| Exp ID | Entity | Method | Lift | p-value | Tier | Status | TS |
|---|---|---|---|---|---|---|---|
| LX-8821 | Meta / London / prospecting | Region holdout · 14d | +18.2% | p=0.003 | T3 | PROVEN | 12:04:11 |
| LX-8820 | TikTok / New York / interest | PSA baseline · 7d | +2.1% | p=0.280 | T1 | REJECTED | 12:03:57 |
| LX-8819 | Google / US brand | Ghost bid · 21d | +6.4% | p=0.041 | T2 | PROVEN | 12:02:44 |
| LX-8818 | Shopify / cart flow | Switchback · 10d | +11.9% | p=0.012 | T3 | PROVEN | 12:01:32 |
| LX-8817 | Meta / retargeting | Holdout · 14d | +4.3% | p=0.110 | T2 | RUNNING | 12:00:08 |
Did this campaign create incremental revenue or conversions?
Which geos should be test markets and which should be controls?
Was the experiment strong enough to trust?
What should the next experiment be?
How should spend change after a positive, weak, or negative result?
Experiment Runner, Geo Matcher, Power Analysis, Multi-Cell testing, Creative Lift, Next Experiment, and Scorecard workflows.
openlift init openlift run experiment.yaml --out results.json openlift report results.json
What OpenLift does
The product is built around the full incrementality workflow: design the test, measure lift, understand the economics, document the result, and decide what to do next.
Estimate incremental revenue or conversions with Bayesian synthetic control, posterior lift estimates, and credible intervals.
Match test and control markets, plan holdouts, run power analysis, calculate MDE, and choose experiment duration.
Turn the result into an action: scale, hold, cut, or retest, with evidence strength, limitations, and business impact.
Translate lift into incremental CAC, ROAS, profit, budget scenarios, and payback curves.
Analyse creative-level lift from campaign or creative performance data, not just channel-level reporting.
Recommend the next geo, channel, duration, MDE, and expected lift range based on what the last test proved.
Store experiment history locally and summarise cumulative evidence over time.
Generate Markdown and HTML experiment reports that explain the method, result, decision, and caveats.
From geo time-series data to a budget decision.
OpenLift expects long-format geo time-series data and guides the team from upload through market selection, lift estimation, economics, reporting, and next action.
Upload or connect data
CSV, Google Sheets, Google Ads, and Meta Ads connector interfaces are supported.
Map the experiment fields
At minimum: date, geo, and outcome. Optional fields include spend, treatment, period, channel, and creative_id.
Choose markets
Use geo matching to select treatment and control markets before running the test.
Estimate lift
Run Bayesian counterfactual measurement and inspect lift, uncertainty, diagnostics, and economics.
Decide what happens next
Review evidence strength, budget recommendation, business impact, and the next experiment plan.
