Tag Manager
Inject code directly on your website without requiring engineering support
By using our Tag Manager feature, you can inject code into your website. To add or edit code snippets, you should go to the Projects Page, and click the settings button for the project you want to inject code onto.

On Initial Page Load:

Code injected here will be triggered when your website is first loaded. This is similar to a DOMContentLoaded event, except we call it a little later, once Freshpaint is loaded. A common use case for this is attaching user properties or event properties with dynamic properties that are only available after page load.

On Page Change:

Code injected here will be triggered each time a page is loaded. This includes the initial page load event, but also any subsequent page changes within a single page app. This is often used for attaching page view properties within single page apps.

On Identify

Code injected here will be triggered each time freshpaint.identify() is called. You will have access to two variables, userID and userProps. These variables will take on the values of the unique_id and properties arguments of freshpaint.identify().
The values of the userID and userProps variables can be null if no userID or no user properties are passed into freshpaint.identify().
Code injected by On Identify is most often used to build custom javascript integrations by passing identity information from Freshpaint to a javascript SDK.

On Track

Code injected here will be triggered each time freshpaint.track() is called. You will have access to - eventName, eventProperties, builtinProperties and eventOptions. The variables eventName, eventProperties and eventOptions will take on values as they were passed to freshpaint.track.
eventName will be the name of the event as a string.
eventProperties will be an object with event properties as key, value pairs.
eventOptions will only be present in manual/precision track calls, and it will be the third parameter passed in, which is usually used to control which destinations an event is sent to.
builtinProperties will contain the properties that Freshpaint automatically captures for each event. It is specifically useful in case of autotrack events.
Sample value of builtinProperties for an autotrack event
Code injected by On Track is most often used to build custom javascript integrations by passing identity information from Freshpaint to a javascript SDK.
On Track can also be used to compute new properties using javascript and send them with the event.
The following example shows how On Track in tag manager can be used to compute new event properties using custom javascript code.
Write transformation code in On Track
Computed property is available in the event

Security

If you want to opt out of this feature, and disable Freshpaint admins from using it, you can set the option tag_manager to false in your Freshpaint init() call.
freshpaint.init("YOUR-ENV-ID", {
...options...
"tag_manager": false,
});
Copy link
On this page
On Initial Page Load:
On Page Change:
On Identify
On Track
Security