> For the complete documentation index, see [llms.txt](https://cmp.docs.sirdata.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cmp.docs.sirdata.net/en/consent-transmission-standards/openai-consent-mode.md).

# OpenAI Consent Mode

Pass consent to the OpenAI Ads measurement pixel

**OpenAI Consent Mode** automatically passes your visitors' choice to the **OpenAI Ads measurement pixel**, with no change to your OpenAI tag.

## Why this option is needed

Unlike most advertising pixels, the OpenAI pixel **treats consent as granted by default**. Without a signal to the contrary it starts measuring as soon as it loads, before the visitor has made any choice.

More importantly: **blocked events are never replayed.** Measurement of those first seconds is not delayed, it is lost. That is what sets this pixel apart from the other transmission standards documented here, and what makes load order decisive.

The option covers both directions:

* if the visitor has not chosen yet, or has declined, the refusal signal is sent **before** the pixel;
* if the visitor had already accepted on a previous visit, the acceptance signal is sent from the first line too — measurement does not wait for the consent window to close.

## Activation

**To enable OpenAI Consent Mode, simply add&#x20;*****OpenAI*****&#x20;to your partner list, or enable the&#x20;*****OpenAI Consent Mode*****&#x20;option in the add-ons. Either one enables the other.**

<figure><img src="https://1869615683-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUspPnkTFMlMDdGxvAb-1972196547%2Fuploads%2FwhKwxfUUoVpWheVQkcDf%2Fimage.png?alt=media&amp;token=e91ecdd1-d39f-4bbf-b4ea-d4b0fedd902f" alt=""><figcaption><p>Adding a partner</p></figcaption></figure>

Through the add-ons:

1. Go to your **CMP configurations** management.
2. Open the **Add-ons** section.
3. Go to the **Other partners** section.
4. Locate the **OpenAI Consent Mode** block.
5. Turn the option on with the toggle.
6. **Save** your configuration.

{% hint style="danger" %}
The ABconsent CMP must be loaded **before** your OpenAI pixel. Loaded after it, it can no longer prevent the first measurement — and that measurement will not be replayed.
{% endhint %}

## How it works

You have **no line to change** in your integration: keep the initialisation block supplied by OpenAI as it is. The CMP does not load the OpenAI SDK on your behalf — it sits in front of the pixel's call queue and inserts the consent signal at the head of it, ahead of your `oaiq("init", …)`.

The signal is re-emitted whenever the visitor changes their mind, and only one consent value ever remains in the queue: a new choice replaces the previous one instead of being added to it.

{% hint style="info" %}
If your site enforces a **Content Security Policy**, allow the OpenAI pixel domains listed in the [OpenAI documentation](https://developers.openai.com/ads/measurement-pixel). The CMP option itself loads no additional domain.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://cmp.docs.sirdata.net/en/consent-transmission-standards/openai-consent-mode.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
