Once upon a time adding the following URL params to a URL would log a view in Google Analytics as a campaign, medium, and so on (note this is Facebook template):
?utm_source={{site_source_name}}&utm_medium={{placement}}&utm_campaign={{campaign.name}}_{{adset.name}}&utm_content={{ad.name}}
However, GA4 doesn’t seem to be logging these as all. If I go to GA4’s Acquisition -> Traffic Acquisition it does not have any views from campaigns logged. In UA’s Acquisition -> Campaigns -> All Campaigns these were always logged.
Has the API changed for this (i.e. is utm_source
, etc, not the way to do it anymore), or is this just broken? So far GA4 feels like a car crash and anyone creating a new account is put in the driving seat (can’t create UA accounts anymore)!
2
Answers
In GA4’s Traffic Acquisition report,
utm_source
populates the source dimension,utm_medium
populates the medium dimension,utm_campaign
populates the campaign dimension,utm_content
does not populate a system-defined dimension today.utm_content
does populate the event parameter "content". You can register the event parameter "content" as an event-scoped custom dimension (article), and use that custom dimension in reports.GA4’s reporting does not have the same data freshness as UA. For standard GA4 properties, intraday data may be delayed by 4 to 8 hours. This means that GA4’s Traffic Acquisition report will update with your
utm
URI parameters 4 to 8 hours after the pageviews were logged.In GA4 Realtime, you can verify that your
utm
URI parameters are being logged. For example if you logged?utm_source=some-source&utm_medium=some-medium&utm_campaign=some-campaign&utm_content=some-content
, then these source, medium, campaign, and content parameters are available on the page_view event in realtime.In the GA4 Realtime report, select the
page_view
event:Select the
medium
event parameter:Notice the
some-medium
is consistent with the logged event.Are you using the Facebook URL builder? If so, you CAN’T put the question mark as Facebook puts it automatically