Configure the Freshpaint Web SDK to automatically sync with your user's consent elections

OneTrust is a privacy and security provider that offers a consent management product to stay compliant with regulations such as GDPR and CCPA/CPRA.

OneTrust allows customers to create custom consent categories, such as marketing and analytics, to group third-party scripts. Freshpaint supports mapping your desired destinations to OneTrust consent categories to ensure that your users' data only goes to the analytics and marketing platforms they consent to.


This guide assumes you have already set up the Freshpaint Javascript SDK and set up at least one data destination in the Freshpaint app. If not, follow these guides to get set up

It is also necessary to mark the Freshpaint SDK script and cookies as essential in OneTrust for full functionality. If it is not, Freshpaint will not be able to manage user session data effectively resulting in lower quality data in downstream analytics platforms.


The OneTrust integration is configured within the Freshpaint Javascript SDK's init function call by passing in an object that maps all Freshpaint Destinations to OneTrust categories. Make sure you double check your consent category labels in the OneTrust portal.

freshpaint.init("<environment_id>", {
  "consent_management": {
    "onetrust": {
      "category_mapping": {
        // You may have configured your OneTrust categories to be
        // different from C0001, etc.
        "C0001": ["Mixpanel", "Google Analytics 4 Proxy"],
        "C0002": ["Facebook Pixel"]
    // consent_model: optional, defaults to "opt-in"
    // used if Freshpaint SDK loads prior to your consent manager
    // options:
    // - "opt-in" means all destinations are disabled by default
    // - "opt-out" means all destinations are enabled by default
    "consent_model": "opt-out"

Any destinations not provided at initialization will be disabled for both Autotrack and Precision Tracking events.

Use freshpaint.set_config({debug: true}) when setting this up for the first time to get console warnings for misconfigurations.

Last updated