Skip to content
    Back to Tips & Tricks
    Causal Inference30

    Selection Bias Makes GA4 Campaign Uplift Look Incremental

    Written by Viktor KvantSenior Web AnalystApril 28, 20262 min read

    Users who engage with a campaign differ from those who do not. Difference-in-differences and propensity score matching separate real lift from self-selection.

    A familiar pattern: a team launches a campaign, GA4 dashboards show more conversions, and the uplift is reported as incremental revenue. The open question is how much of that uplift the campaign caused and how much is selection bias. Mistaking one for the other sends budget in the wrong direction.

    Users who engage with a campaign, click a particular element or visit certain pages are not a random sample. They select themselves, and they often have higher intent, more familiarity with the product or an existing affinity for the brand. Comparing their behaviour after engagement with that of the average user does not isolate the campaign's effect; it mixes the campaign with the pre-existing differences of the engaged group. In some cases the 'campaign uplift' shows the same pattern in a group that was never exposed: selection bias presenting as incrementality.

    When a randomised test is not possible, which is common outside product feature validation, quasi-experimental methods help. Difference-in-differences (DiD) compares the change in the exposed group with the change in a comparison group over the same period, provided the two followed parallel trends beforehand. Propensity score matching (PSM) builds a comparison group of unexposed users with similar pre-treatment characteristics. The GA4 BigQuery export contains the behavioural history both methods need, so the comparison group can be far more specific than 'all other users'.

    dbt suits the preparation work: building pre-treatment features, defining treatment and comparison cohorts, and fixing the pre- and post-periods for DiD in version-controlled models. Consistent collection matters too. Gaps in client-side tracking can correlate with user characteristics and add to the very bias these methods try to remove; a server-side event stream such as Robin Signals reduces that risk.

    These methods take more effort than reading a dashboard, but they answer the question the business is actually asking: what would have happened without the campaign?

    Author

    Viktor Kvant

    Senior Web Analyst specialising in data ownership, advanced tracking implementations, and translating data into strategic business value.

    Connect on LinkedIn