ChatGPT Ads tracking
The OpenAI ads pixel measures website activity for ChatGPT advertising. It is already integrated into the website: you do not need to paste a tracking script into Storyblok.
Two Storyblok checkboxes let you choose where conversions are recorded. Both are off by default, and the visitor must grant marketing consent before these conversion events can be sent.
What the integration tracks
Section titled “What the integration tracks”| Website activity | Event | How it is enabled |
|---|---|---|
| A page view | page_viewed |
Handled by the website integration after marketing consent. |
| A click on a link configured for tracking | custom |
Uses the existing link tracking configuration. |
| A visit to an appointment confirmation page | appointment_scheduled |
Enable Track ChatGPT Ads appointment on that page. |
| A confirmed HubSpot meeting booking | appointment_scheduled |
Enable Track ChatGPT Ads conversion on the meeting component. |
| A successful HubSpot download form submission | lead_created |
Enable Track ChatGPT Ads conversion on the form component. |
| A successful footer newsletter signup | registration_completed |
Enable Track ChatGPT Ads conversion on the footer. |
The appointment event used by this integration is called appointment_scheduled, not appointment_requested.
The two checkboxes control conversion events. Turning them off does not disable the pixel, page views or configured link-click tracking. These settings do not change Plausible or PostHog tracking.
Choose where to track an appointment
Section titled “Choose where to track an appointment”Use page tracking when visitors reach a dedicated thank-you or appointment confirmation page. It also lets you count visitors who accept marketing cookies later while still on that page.
Use meeting tracking when the confirmed booking itself should trigger the event, for example when the booking completes without opening a separate thank-you page.
Setting 1: Track ChatGPT Ads appointment
Section titled “Setting 1: Track ChatGPT Ads appointment”| Details | |
|---|---|
| Where | The page’s own fields in Storyblok |
| Field in Storyblok | Track ChatGPT Ads appointment |
| Type | Checkbox: on or off |
| Default | Off, including on existing pages where the field has not been set |
| Event | appointment_scheduled |
| Trigger | A visit to this page, after marketing consent |
Enable it on a thank-you page
Section titled “Enable it on a thank-you page”- Open the dedicated thank-you or appointment confirmation page in Storyblok.
- Select the page itself so you can see its fields, rather than a nested content block.
- Find Track ChatGPT Ads appointment and enable it.
- If a meeting component sends visitors here, leave its Track ChatGPT Ads conversion checkbox off.
- Save and publish the changed content when it is ready. Check the production website once the website rebuild has finished.
Enabling this field does not create a thank-you page or configure a HubSpot redirect. The page and redirect must already be set up separately.
When the event is sent
Section titled “When the event is sent”| Visitor behavior | Result |
|---|---|
| Arrives with marketing consent already granted | One appointment event is sent once tracking is initialized. |
| Arrives without consent, then accepts while still on the page | One appointment event is sent after acceptance. |
| Never accepts marketing consent | No appointment event is sent. |
| Leaves before accepting, then accepts on another page | The previous page’s pending appointment event is not sent. |
| Changes consent again after the event was sent | No additional appointment event during the same visit. |
| Reloads the page or returns to it later | This is a new visit and can send another appointment event. |
Setting 2: Track ChatGPT Ads conversion
Section titled “Setting 2: Track ChatGPT Ads conversion”| Details | |
|---|---|
| Where | A HubSpot form, HubSpot meeting component, or the newsletter footer |
| Field in Storyblok | Track ChatGPT Ads conversion |
| Type | Checkbox: on or off |
| Default | Off, including on existing components where the field has not been set |
| Event | Determined by the component, as shown below |
| Trigger | A successful submission or confirmed booking while marketing consent is granted and tracking is initialized |
Enable it on a form or meeting component
Section titled “Enable it on a form or meeting component”- Open the page containing the form in Storyblok. For the footer newsletter, open the footer content used by the website.
- Select the relevant form, meeting component or footer.
- Find Track ChatGPT Ads conversion and enable it.
- Save and publish the changed content when it is ready. Check the production website once the website rebuild has finished.
The checkbox is available on HubSpot Form, HubSpot Schedule Widget, Segment Selection aware HubSpot Schedule Widget, and the footer. Both HubSpot form embed versions use the same checkbox. For the segment-aware meeting component, the checkbox applies to the meeting widget shown for the selected segment.
| Component | Event sent after success |
|---|---|
| HubSpot Schedule Widget | appointment_scheduled |
| Segment Selection aware HubSpot Schedule Widget | appointment_scheduled |
| HubSpot Form used for downloads | lead_created |
| Footer newsletter form | registration_completed |
You do not select the event name with this checkbox. For example, enabling it on a download form sends lead_created; it does not turn the form into an appointment conversion.
Consent accepted after submitting
Section titled “Consent accepted after submitting”Form and meeting events are not replayed if the visitor accepts marketing consent after the successful submission or booking. The late-consent behavior applies to the enabled appointment page described above.
Changing the setting on a shared footer affects the newsletter form wherever that footer is used. It does not enable tracking on other forms on those pages.
Example: track an appointment on its thank-you page
Section titled “Example: track an appointment on its thank-you page”For a booking flow that ends on a dedicated appointment confirmation page:
- On the meeting component, leave Track ChatGPT Ads conversion off.
- On the confirmation page, turn Track ChatGPT Ads appointment on.
- Publish the changes and wait for the website rebuild.
A visitor who reaches the confirmation page with consent is counted there. A visitor who accepts marketing cookies later on that page is counted after accepting. The booking component does not send a second appointment event.
Consent and availability
Section titled “Consent and availability”The pixel is integrated sitewide on production. Its script can load before a visitor answers the consent banner, but the website supplies the current marketing consent state before initializing it. Script loading alone does not mean the visitor has consented or that a conversion was recorded.
The integration is disabled in draft preview and local development. An event being sent also does not guarantee it will be attributed to a particular ad; reporting and attribution happen in the advertising platform.
If an expected conversion is missing
Section titled “If an expected conversion is missing”- Confirm the relevant checkbox is enabled on the correct page or component.
- Confirm the content is published and the production rebuild has finished.
- Check on the production website, not the Storyblok draft preview.
- Confirm the visitor granted marketing consent at the time required for that tracking option.
- For a form, confirm that the submission succeeded or the meeting was booked; opening the widget is not enough.
- Browser blocking or a network failure can prevent the pixel from delivering an event.
Avoid repeatedly visiting an enabled production thank-you page just to check its appearance: each new visit with consent can count as another appointment.