TL;DR
Standardise UTMs across channels, wire GA4 events to Looker Studio and
monitor ROAS/CPL/CAC inside a live dashboard that updates every time
your content converts.
1 UTM parameter schema by platform
Platform
utm_source
utm_medium
utm_campaign
utm_content
Instagram
instagram
social
campaign
postid
TikTok
tiktok
social
campaign
videoid
YouTube
youtube
social
campaign
shortid
LinkedIn
linkedin
social
campaign
postid
X (Twitter)
x
social
campaign
tweetid
Use utm_term for paid keywords. Use utm_id as a stable campaign ID you
define (recognized by GA4 for campaign mapping); don’t rely on platform
auto-tagging IDs like gclid/fbclid to replace UTMs.
2 GA4 and Looker Studio setup
2.1 GA4 events
Enable Enhanced Measurement for scroll, outbound and site search.
Create custom events:
dm_start triggered by click on DM link.
dm_click (or similar) for outbound DM link clicks.
Avoid emitting “assisted purchase” as a GA4 event - assisted revenue should
be modeled in reporting, not captured as a site event.
Mark applicable on-site actions (e.g., dm_click) as Conversions.
2.2 Looker Studio dashboard
Connect GA4 property as data source.
Add charts:
Retention cohort table using first_user_source.
DM conversion funnel with dm_start → dm_complete.
Assisted revenue bar using a Looker Studio/BigQuery model that applies
your attribution window (e.g., 7 days) to social touchpoints.
Apply filter control for source / medium to drill down by platform.
3 ROI formulas and benchmarks
3.1 Formulas
ROAS=Ad SpendRevenue
CPL=LeadsTotal Spend
CAC=New CustomersTotal Spend
3.2 Benchmarks (how to set them)
Start with your trailing 90-day averages for ROAS, CPL and CAC.
Define “maintain”, “improve” and “stretch” bands relative to those baselines.
Update targets quarterly as campaigns, seasonality and pricing change.
When benchmarking externally, favour first-party partner data or paid research; public blog round-ups often lag reality.
4 Build a real-time content performance dashboard
Data ingestion
Send UTM-tagged link clicks to Google Sheets via Zapier or n8n.
Enable the GA4 → BigQuery export link (daily + intraday export for
standard; streaming for 360).
Model layer
Join Sheets UTM logs with BigQuery events/sessions on utm_source and
utm_campaign.
Calculate ROAS, CPL and CAC using the formulas above.
Visualization
Connect Looker Studio to the model.
Create scorecards for ROAS/CPL/CAC and a table showing content
pieces ranked by assisted revenue.
Automation
Refresh data every 15 minutes for near real-time reporting.
Email a PDF snapshot to stakeholders every Monday.
5 Call-to-action
Want to explore how to instrument this?
DM us “ATTRIBUTION” on LinkedIn for a walkthrough of the dashboard
stack we use for clients.