# Osano

[Osano](https://www.osano.com/) 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.&#x20;

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.

### Prerequisites

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

* [Installing the Freshpaint Javascript SDK](https://documentation.freshpaint.io/readme/guides/quickstart/installing-freshpaint)
* [Configuring a Destination](https://documentation.freshpaint.io/readme/guides/quickstart/configuring-a-destination)

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.

### Installation

#### Admin Console

{% hint style="info" %}
Contact your Freshpaint rep or email **<support@freshpaint.io>** to request access to this feature
{% endhint %}

The Consent Management UI gives you the ability to categorize all of your destinations into Osano-specific consent categories.&#x20;

Navigate to the Consent Management section on the sidebar and select Osano > Configure to begin configuring the integration.&#x20;

Begin by choosing your fallback mode following the prompts on the screen.

Review the consent categories for each destination. Each has been given a default categorization that you can change by updating the Consent Category dropdown menu.

<figure><img src="https://1666823438-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MA7aDqsXMFbUsWVqonF%2Fuploads%2FvZJKpTMdPATacJpewcgZ%2Fbrave_screenshot_app.freshpaint.io.png?alt=media&#x26;token=66877a5f-60ca-4e19-afe3-9020107dc230" alt=""><figcaption><p>Configuring the Osano Integration</p></figcaption></figure>

If you are using Freshpaint Audiences, choose which consent category will govern your user's consent to be included in audience targeting. Typically our customers select "Marketing" but please consult with your legal and compliance teams.

<figure><img src="https://1666823438-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MA7aDqsXMFbUsWVqonF%2Fuploads%2F7Idyf0M4LsmaZft4p2tc%2Fimage.png?alt=media&#x26;token=845cbd16-2baa-46f1-9523-0ed926577c85" alt=""><figcaption><p>Categorize Audience integrations for Osano</p></figcaption></figure>

Navigate back to the Consent Management page and toggle the Osano integration to Enabled. Note: all destinations need to be categorized before enabling the integration.

{% hint style="warning" %}
Enabling the Consent Management integration can impact what data is sent to destinations. Ensure you have it configured properly and have the consent manager installed on your websites.
{% endhint %}

<figure><img src="https://1666823438-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MA7aDqsXMFbUsWVqonF%2Fuploads%2FSJJ3eye9gVEdbEqsuCUg%2FScreenshot%202025-08-25%20at%2010.28.32.png?alt=media&#x26;token=bb18eb5e-ab95-4858-893e-d50768d56216" alt=""><figcaption><p>Enable the Osano Integration</p></figcaption></figure>

#### Manual (Freshpaint Web SDK Initialization)

{% hint style="info" %}
If a consent management integration is configured in both the UI and within the Freshpaint Web SDK init call, the inlined configuration in the init call will be prioritized.
{% endhint %}

The Osano integration can be configured within the Freshpaint Javascript SDK's `init` function call by passing in an object that maps all Freshpaint Destinations to Osano categories.

<pre class="language-javascript"><code class="lang-javascript"><strong>freshpaint.init("&#x3C;environment_id>", {
</strong>  "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"
  }
})
</code></pre>

{% hint style="warning" %}
Any destinations not provided at initialization will be disabled for both [Autotrack](https://documentation.freshpaint.io/integrations/sources/web/javascript) and [Precision Tracking](https://documentation.freshpaint.io/integrations/sources/web/precision-tracking) events.
{% endhint %}

[Osano categories](https://docs.osano.com/classification-categories):

* ANALYTICS
* MARKETING
* PERSONALIZATION
* ESSENTIAL
* Special IAB categories
  * OPT-OUT
  * STORAGE

{% hint style="info" %}
Use `freshpaint.set_config({debug: true})` when setting this up for the first time to get console warnings for misconfigurations.
{% endhint %}
