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 data layer key chord source notes event (hardcoded) "page" userid userid > "" anonymousid anonymousid > "" name properties title > "" url properties url > "" title properties title > "" properties properties full properties object traits traits merged with context traits identify pushes an identify event to the data layer data layer push data layer key chord source notes event (hardcoded) "identify" userid userid > "" anonymousid anonymousid > "" email properties email > "" name properties name > "" traits traits merged with context traits track pushes the track event to the data layer using the chord event name directly data layer push data layer key chord source notes event event (the chord event name) > "track" userid userid > "" anonymousid anonymousid > "" currency properties currency > "" properties properties full properties object, including properties products\[] , properties total , properties order id , etc traits traits merged with context traits 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 directive domain script src https //www googletagmanager com connect src https //www googletagmanager com