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

Osano is a data privacy management platform that offers tooling to stay compliant with regulations such as GDPR and CCPA/CPRA.

Osano provides a consent manager that can classify all the cookies and scripts loaded onto your app as well as block certain cookies and scripts based on a user's consent choices.

Freshpaint supports mapping your desired destinations to Osano consent categories to ensure that your users' data only goes to the analytics and marketing platforms they elect.


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 Osano 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 Osano integration is configured within the Freshpaint Javascript SDK's init function call by passing in an object that maps all Freshpaint Destinations to Osano categories.

freshpaint.init("<environment_id>", {
  "consent_management": {
    "osano": {
      "category_mapping": {
        "ANALYTICS": ["Mixpanel", "Google Analytics 4 Proxy"],
        "MARKETING": ["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.

Osano categories:





  • Special IAB categories

    • OPT-OUT


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

Last updated