oh good.. that is a lot easier 🙂
That would be the second half on my original post...
In our sites, I have a custom data layer that our developers populate... so all the banners and info that I need to know about that would be populated in to the data layer when the page is loaded,.. then I read from and build tracking about the "banner impressions" right in my page view call..
Depending on the type of banner, I will sometimes code a click action for the banners (OR I will just rely on Activity Map data - it depends on what you need to know, in what granularity and how good your existing Activity Map set up is....).
I would definitely create the concept of an "internal campaign"... so the banner links will add a new "?icid=" (internal campaign id) or a few "?itm_source=...&itm_campaign=...." etc (if you are more familiar with using UTMs you could replicate that for "internal tracking" variations). On your banners, make sure that the team posting them adds the proper internal campaigns to the links, and that they are following the structure of the campaign (just like your external campaigns).
Then set up a custom eVar(s) for your internal campaign tracking, set it up with a default attribution model - I like Visit - you can always use the custom attribution modeling in Workspace as well) and then just like your external campaigns, you should be able to get attribution from your internal campaigns like you would from external... and you can also look at cross sections of external campaigns in conjunction with your internal campaigns to see how they interact.