Chord CDP
...
CDP Destination Catalog
Google Tag Manager
10 min
introduction google tag manager (gtm) is a tag management system that lets you add and update website tags—like tracking pixels and analytics scripts—without changing the site’s code it simplifies tracking setup and improves marketing agility getting started this is a device mode destination you will need the relevant container id of your google tag manager workspace to connect this destination you can find this information by following the steps below log into your google tag manager workspace homepage navigate to the upper right hand corner of the page and locate the container id connecting to the google tag manager cdp destination before connecting destinations in the chord cdp, please verify with all destination owners that all non chord cdp configured destinations are disabled running external destinations alongside configured chord cdp destinations can result in duplicate events downstream log into the chord data platform navigate to the cdp click the "add" button next to destinations select google tag manager from the destination catalog enter in the destination name, the container id, and data layer name destination name the arbitrary name you give to the destination container id the gtm container id is found in your google tag manager account how to find it go to https //tagmanager google com select your account and container the container id is displayed at the top of the workspace it looks like gtm xxxxxxx data layer name the datalayername field specifies the name of the javascript array that gtm uses to receive data on the page how to find it go to https //tagmanager google com navigate to the variables settings in the left hand pane look for any configured data layer variables if there isn't an explicit variable configured, this value will default to datalayer click "create" to connect events all events push data to the data layer via datalayer push(eventdata) , followed by a datalayer push(function() { this reset() }) call to clear the data layer state for the next event page pushes a page event to the data layer data layer push true 162,162,164 left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type identify pushes an identify event to the data layer data layer push true 162,162,164 left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type track pushes the track event to the data layer using the chord event name directly data layer push true 162,162,164 left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type all track events are forwarded with no event name specific mapping gtm tags and triggers handle the routing all tracking plan fields are available under the properties key in the data layer (e g , properties products\[0] name , properties products\[0] price , properties total ) initialization the plugin initializes the data layer array with the user id from the first event, pushes a gtm start timestamp event, then loads the gtm container script from googletagmanager com/gtm js?id={containerid} if a custom datalayername is configured, it is passed as the \&l= parameter the plugin manages sdk loading state ( fresh → loading → loaded / failed ) to prevent duplicate script loads if the script fails to load, subsequent events are silently dropped csp requirements if your site uses a content security policy, allow the following domains true 244,244 left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type left unhandled content type