Google Analytics does a fantastic job of tracking external campaigns via the utm_ parameters. However, what do you do if you also have internal campaigns and do not want to “step-on” your external efforts? This blog posting will describe what it will take to put this into effect.
You have a few options that can be leveraged (depending on if you are an e-commerce site versus a non).
The first is leveraging custom dimensions. A dimension would be set up to capture the internal campaign value (ID) that is passed within the query string parameter. The positive to this is we can have the value persist until the conversion takes place and also leverage data imports to pass in additional meta data associated with the campaign (i.e. creative, call to action, promo name, promo value).
The second way to do this is you could leverage events to capture. While custom events do not persist as long as a dimension can, events are extremely flexible and do not run into the limits that dimensions present (a limit could be if you are on the free version of GA you only have 20 available dimensions at your disposal).
The third way that this could potentially be done, if you are an e-commerce site, it to leverage enhanced e-commerce tracking to handle this. This is something that is built into GA so you can use it without having to tweak or customize things further. EE allows you to track both clicks and impressions.
Lastly, and I have only seen this used by a few clients is to leverage site search to handle this. The downside is that if you are already using site search on your site, you will need to set up another view that captures this within the out of the box search tracking.
Is there a preferred method to use? Well that depends on your set up and timing to get this in place. The path of least resistance is to pass the items to either a custom dimension or event via GTM. The most robust solution would be to leverage enhanced e-commerce as then you can easily see impressions and clicks without having to set up custom metrics for impression or clicks.
There you have it! If you have any questions, please feel free to ask.