Every night, a pipeline pulls spend from Meta, Google and TikTok, matches CRM orders back to their source campaigns and refreshes a live dashboard showing true cost per customer. Within a quarter, brands typically cut wasted ad spend by around 27%.
Typical results
3.4x
Blended ROAS
₪92
Cost per new customer
6:00
Data fresh every morning
Figures reflect typical results for this kind of automation.
The challenge
Each ad platform claimed credit for the same sales, so Meta, Google, and TikTok dashboards added up to twice the actual revenue. The team compiled a spreadsheet by hand every Monday, always a week stale, and budget decisions ran on platform-reported vanity numbers that quietly rewarded the wrong campaigns.
Before and after
Cost per new customer
−22%Blended ROAS
+62%Weekly reporting time
−89%The automation
We enforced a clean UTM convention across every campaign, then built a nightly pipeline that pulls spend and impressions from the Meta, Google, and TikTok APIs, pulls orders and customer data from the CRM, and joins them on UTM and order source. Each campaign gets a true cost-per-customer and blended ROAS, refreshed by 6am into a live dashboard with alerts when any campaign burns budget below the profitability threshold.
How it works
- 01
Tag everything
A clean UTM convention is enforced across every campaign, ad set, and creative.
- 02
Nightly pull
The pipeline pulls spend and impressions from the Meta, Google, and TikTok APIs every night.
- 03
Match to revenue
CRM orders are joined back to their source campaigns on UTM parameters and order source.
- 04
True numbers computed
Each campaign gets a real cost-per-customer and blended ROAS — not platform-claimed conversions.
- 05
Morning dashboard
By 6am the dashboard is fresh; alerts flag any campaign burning budget below the profitability threshold.
Starts from
- Ad platform spend
- CRM orders & revenue
Delivers
- Live ROAS dashboard
- Budget burn alerts
- Weekly campaign report
The impact
Within a quarter, teams typically move about 27% of ad spend away from campaigns that never produced a paying customer. Cost per new customer can fall from around ₪118 to ₪92, blended ROAS climbs from about 2.1x to 3.4x, and Monday reporting shrinks from nine hours to a coffee-length review.
Questions about this automation
Why not rely on each ad platform's own conversion numbers?
Each platform counts conversions its own way, so the same sale is often claimed more than once. The pipeline starts from real orders in the CRM and matches each one to a single source campaign by UTM and order source, so cost per customer is based on revenue that actually came in.
What needs to be in place for the matching to work?
A consistent UTM convention on every campaign, ad set and creative, API access to the ad accounts, and CRM orders that keep their UTM or source fields. The build starts by setting the naming convention, because clean tags are what make the nightly join between spend and revenue reliable.
When does the dashboard refresh, and what triggers an alert?
The pipeline runs every night and the dashboard is fresh by 6am. An alert fires when a campaign burns budget below the profitability threshold the team sets, for example a cost per customer above target. A weekly campaign report is produced from the same data, so everyone works from one set of numbers.
