# Media Buying That Proves the Spend Caused the Growth

> Paid media run on incrementality, not last-click. Geo holdouts and lift tests decide the budget, so you learn what the spend actually caused.

Page: https://synapsereality.io/services/growth/media-buying/
Last changed: 2026-09-23

## Scope

### This covers

Paid distribution.

### This is not

Organic acquisition, which is covered by technical SEO, GitHub marketing and developer marketing.

### Measured by

Incremental CAC.

## Overview

You find out what your ad spend is causing by withholding some of it and
measuring what changes. That is the method, deliberately and on a schedule, and
everything else on this page sits downstream of it. This service
covers paid distribution: the channels, the accounts, the creative, the budget,
and the measurement that decides all four. It is judged on incremental cost per
acquisition, not on the conversions a platform claims credit for.

What it does not cover is organic acquisition, and that work is not filed in one
place. Crawl, index and on-site content are technical SEO, over in the search and
AI visibility hub. The two channels that reach engineers where they already are,
GitHub marketing and developer marketing, sit in this growth hub alongside this
page. The landing page and the funnel behind the click are conversion rate
optimization. All of those are linked at the top of this page.

If you want a deck that reports a strong return every quarter, that is easy to
buy. Ours will sometimes report that the spend did nothing, because sometimes the
spend did nothing.

## What incrementality actually means

A conversion in an ad platform's dashboard is a conversion that platform assigned
to itself. Some of those people were going to buy regardless. Incrementality is
the size of that gap, and it is not visible from inside the account, because the
account has no counterfactual. There is no record of what those same people
would have done with the ads switched off.

[Steven Tadelis described the eBay experiments](https://newsroom.haas.berkeley.edu/research/study-finds-paid-search-ads-dont-always-pay-4/) in a 2014 Berkeley report.
Turning paid search off did not produce the sales loss that attribution alone suggested.
That finding concerns eBay. It is a reason to test incrementality, not a forecast for your campaigns.

## How we prove it: geo holdouts

A geo holdout splits your addressable markets into a test group and a control
group, matched on their pre-period conversion behaviour. Spend is then withheld
from the control for a fixed window. The counterfactual is built from the control regions' own history. [Google published a geo-experiment method in 2011](https://research.google/pubs/measuring-ad-effectiveness-using-geo-experiments/).
[GeoLift](https://facebookincubator.github.io/GeoLift/) is a separate open source research tool from Meta for geographic lift analysis. The details we agree with you before
any budget moves:

- **Which regions are held out**, chosen for how well they track the test group,
  not for being the ones you mind losing least.
- **The test window**, set from your sales cycle. A test shorter than the time
  between a first click and a closed deal measures the wrong thing.
- **The minimum detectable effect**, calculated up front. If your conversion
  volume cannot detect an effect smaller than the one you are hoping for, the test
  cannot answer your question. We say so before it runs.

We also use the platforms' own lift tools. A lift study run by the company
selling the impressions is a claim to verify, and never the verdict.

### When a geo holdout will not work

A geo holdout needs several comparable regions and enough conversions inside
each of them to tell a real effect from ordinary week-to-week variance. An account closing a handful of enterprise deals a quarter does not have that.
A single country can contain usable test regions. We check regional volume and comparability before choosing the design. In those cases we run staggered on-and-off tests over time windows, with the
hypothesis written down first. Or we accept the number is directional, and
label it that way in the readout. What we do not do is run an
underpowered test and present the result with a straight face. A number with no
power behind it is worse than an admitted unknown, because people act on it.

## The signal you optimise against decides what you buy

Every modern campaign is a bidding algorithm pointed at whatever event you feed
it. Point it at raw form fills and it will find you the cheapest people willing to
fill in a form. That is a real and expensive failure mode in B2B, where a
significant share of those leads can never buy. We send conversions server-side
from your CRM, weighted by qualification stage and value, so the optimiser is
competing for pipeline instead of for contact records. This is the half of paid
media management that is invisible from a dashboard and decides everything
downstream of it. We document what each conversion event means and which collection is allowed under the agreed consent setup.

## What happens when a test comes back flat

We cut the budget. Then we look at whether the channel failed or the offer did, because those have
different fixes. Budget moves to the surviving channels until their incremental
CAC reaches the ceiling set by your payback period. A result
has a shelf life. Saturation moves, competitors enter, creative fatigues. So we
re-test on a cadence, and a win from two quarters ago is not evidence about this
one.

## Standing refusals

Last-click return on ad spend never headlines a report we write. Brand-term
campaigns do not get sold to you as growth when what they harvest is demand
you already had. Audience data from a vendor who will not say where it came
from does not go into your accounts at all.

What those refusals protect is the only thing you are really buying here: a
number you can act on. A channel we have no way to measure is one we decline.
We do not run it with the measurement left implied. In a quarter where the
tests did not support more budget, the recommendation is not more budget. That
is the entire reason we put you through the tests.

## Who it is for

A VP of marketing or a founder spending real money on ads every month. Under pressure, they cannot say what would happen to revenue if the spend stopped.

## What you get

- A channel plan that names the channels we will not run for you, and the reason each one is off the list
- Campaign build and daily paid media management inside your own ad accounts, on your billing, with your team holding admin
- A geo holdout design agreed before any budget moves: the held-out regions, the test window, and the smallest effect the test can actually detect
- An incrementality readout per test with the lift estimate, its confidence interval, and the budget decision it triggers
- Server-side conversion tracking joined to your CRM, so the auction optimises against qualified pipeline and not form fills
- A weekly pacing report that separates what we changed from what the auction did on its own
- A creative testing log with every variant, its hypothesis, and whether the hypothesis survived

## How it runs

1. Find out what paid is worth today. We reconstruct the current baseline per channel and per region before touching a budget. Lift is a difference against a baseline, so an engagement that skips this step can never produce a number that means anything later.
2. Fix the signal before spending against it. The auction learns from whatever conversion you send it. If that is a newsletter signup, it will buy you newsletter signups at scale. We wire revenue-weighted, server-side events to the CRM first, because bad signal spends budget faster than bad targeting.
3. Buy in the smallest market that can answer the question. New channels start in a contained geography with a defined kill condition. A channel that fails should cost a test budget and two weeks, not a quarter and a headcount plan.
4. Run the holdout. Matched regions are held out of the campaign for the full test window, and the counterfactual is built from their own pre-period behaviour. This is the only step that distinguishes what the spend caused from what would have happened regardless.
5. Scale what survived, and re-test on a schedule. Lift decays as a channel saturates and as competitors enter, so a result is dated. We re-run the test at intervals, because by then the previous answer has expired. It was never a permanent property of the channel.

## Questions

### A holdout could show your own work is worthless. Why would you offer that?

Because losing a channel costs us less than losing the account. The decision rule that makes that credible is written down before the test runs. A flat result means we recommend cutting that budget, including when it is budget we are managing. Fixing the rule in advance is what stops it becoming a judgement call made after we can already see which way the answer points. Billing you for spend that changes nothing works right up to the quarter somebody measures it, and then it stops working permanently.

### Does this mean switching ads off in some of our markets?

Yes, for the length of the test. We pick the regions for how well they track the rest of your markets. Being cheap to lose is not a reason to pick one. That is the cost of the answer. If a region is strategically untouchable, we exclude it from the design and say so in the readout. The alternative is testing somewhere convenient and generalising from it.

### Our dashboard reports a strong ROAS. Why do you not trust it?

Because the platform reporting the number is also the party selling the inventory. It counts conversions it assigned to itself, including people who would have bought anyway. The eBay experiments discussed below show why attributed conversions and incremental sales can differ. We test that question on your business.

### How much budget does a valid test need?

It depends on your conversion volume and the size of the effect you need to detect, not on a flat threshold. We calculate the minimum detectable effect before we propose a test. If your volume cannot support one we say so, and do not present noise as a result.

### Can you guarantee a cost per acquisition?

No. We agree a ceiling from your own unit economics and payback period, and we stop buying above it. A guaranteed CAC is a promise about an auction neither of us controls. We check whether reported conversions include demand that would have arrived without the ad. Attribution alone does not establish incremental sales.

### Who owns the accounts, the creative and the data?

You do. We work inside your ad accounts on your billing, and your team keeps admin access throughout. The campaign structure, creative, tracking and test history stay with you if the engagement ends. We do not run client spend through an agency account, because that turns your own performance history into a hostage.

### How are you paid, and does it depend on how much we spend?

Not on how much you spend. An agency paid a percentage of the budget it recommends has a standing reason to recommend a bigger budget. No amount of method cancels that out. So the fee is a fixed amount against a defined scope, agreed before the work starts. Moving money between channels, or out of a channel a test just killed, does not change what we invoice. Get the fee basis into the contract before you sign it, with us or with whoever else is bidding for the account.

## Related services

- [Conversion Rate Optimization](https://synapsereality.io/services/growth/conversion-rate-optimization/)
- [SaaS Marketing](https://synapsereality.io/services/growth/saas-marketing/)
- [GitHub Marketing](https://synapsereality.io/services/growth/github-marketing/)
- [Developer Marketing](https://synapsereality.io/services/growth/developer-marketing/)
