Extensions provide a variety of ways to customize your implementation by offering a simple configuration interface to add complex logic without the need for coding.
In this article:
Extensions have many purposes, from setting and updating data layer variables, to adding advanced event tracking to your site. The available extensions are presented in the Extensions Marketplace where they are grouped by category with brief descriptions of their functionality.
The extensions categories are:
Use the search box to find an extension across any tab.
The extension marketplace is like a toolbox filled with a variety of different tools to help you with tag management. We encourage you to familiarize yourself with all of the available extensions so that you'll know exactly how to solve your next tag management challenge.
Check out the master list of extensions.
When adding an extension it is important to understand the scope setting. The scope determines which utag file the extension is published in and when the extension runs. Extensions within the same scope will run in the order that they appear in the user interface. The following scope options are available:
The scopes Pre Loader, All Tags (except for After Tags execution order), and Tag Scope are guaranteed to run in that order, but DOM Ready extensions will execute independently from the other three. In most standard implementations the DOM Ready scope likely occurs sequentially after the other three, but this timing should not be assumed.
Some extensions (like E-Commerce, Pathname Tokenizer, jQuery onHandler 1.7, etc.) have a pre-set scope that cannot be changed.
The execution setting offers more granular control of the timing of an All Tags extension.
The following options are available:
Some extensions support conditions. Conditions are like load rules, but only applied to extensions. A condition applied to an extension will determine if the extension should run within the given scope and execution order.
Use the following steps to add an extension:
Extensions are editable directly from the extensions view. Expand an extension and adjust the configuration. As changes are detected the Save/Publish button will turn orange to indicate unsaved changes exist.
There are two ways to change the order in which your extensions execute: by scope (and execution) and by position.
Learn more about order of operations.
An easy way create an extension is by copying an existing one that has similar functionality.
Use the following steps to copy an extension:
To turn off an extension and still keep it in your account for later use, use the on/off switch. This is usually a better option than permanently deleting the extension because you will not lose the effort of the initial configuration.
Use the following steps to deactivate an extension:
If an extension is no longer needed, it can be deleted permanently from the configuration.
Use the following steps to delete an extension:
If you accidentally delete an extension and have not saved the profile, you can reload the browser to return to the original state of your extensions.
The list of extensions can quickly grow to a large number, making viewing them all at once difficult to find what you need. You can use the Filter drop-down list to filter your view.
The following filters are available:
The publish location settings control which environments the extension will be published to. If you uncheck a publish location, the extension will not be published to that location. For example, if you uncheck Prod for an extension, and then publish to Prod, that extension will be omitted from the files in the Prod environment.
The following publish locations options are available:
Publish locations can be used to prevent extensions that are in development from accidentally being published to Prod. For example, you may be working on a new extension and need it active for your QA environment, but do not want it to be included in any publishes to Prod. In this case, you simply uncheck the Prod publish location and the extension can remain active and not affect your Prod environment.