> For the complete documentation index, see [llms.txt](https://showreward.gitbook.io/showreward-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://showreward.gitbook.io/showreward-docs/campaigns/tracking.md).

# Configure advertising tracking

Advertising tracking is optional and configured per campaign. If a provider's controls are available in your campaign, add the details from that campaign's advertising account and choose the participant action that should count as a conversion.

The advertising-tracking chapter of [Tutorial 03](/showreward-docs/campaigns.md#tutorial-03) shows an example configuration. Follow the testing steps below to verify delivery in your own advertising account.

## Add an advertising platform

Open a campaign and go to **Tracking**. Enter only the requested IDs, labels, and credentials; do not paste installation scripts.

| Platform    | Fields in ShowReward                                                  | Purpose                                                                                                                      |
| ----------- | --------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| Meta        | **Meta Pixel ID**; optional **Conversions API Access Token**          | Browser pixel, with server delivery when the token is configured.                                                            |
| Google Ads  | **Conversion ID** and **Conversion label**                            | Send the campaign's conversion to the configured Google Ads conversion action. The ID accepts the AW- prefix or digits only. |
| TikTok Ads  | **TikTok Pixel ID**; optional **Events API Access Token**             | Browser pixel, with Events API delivery when the token is configured.                                                        |
| ChatGPT Ads | **ChatGPT Ads pixel ID**; optional **Conversions API key (optional)** | Measure the appointment\_scheduled event, with optional server delivery.                                                     |

Save the campaign after making changes. Server credentials are kept separately from the public IDs and are not sent to the participant portal. A configured credential is shown in masked form. Use **Clear token** or **Clear key** to remove a saved credential; entering a new value replaces it when saved.

Your provider account must have access to the selected pixel or conversion action. Seeing a field in ShowReward does not confirm that your provider account is eligible or that its reporting has accepted an event.

## Choose when the conversion fires

Under **When should the Schedule conversion fire?**, choose one milestone. The rule applies to every configured advertising platform in the campaign.

| Milestone                                   | What must happen                                                                                                                                             |
| ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **When the lead opens the portal**          | The participant opens their claim link. This is the default.                                                                                                 |
| **When attendance is confirmed**            | The participant clicks the portal's attendance confirmation button. This expresses intent to attend; it is not the closer's post-call attendance validation. |
| **When preparation videos are completed**   | The participant completes the configured preparation videos.                                                                                                 |
| **When the introduction video is uploaded** | The participant submits their introduction video.                                                                                                            |
| **When the closer approves the video**      | The participant's introduction video is approved.                                                                                                            |

Enable the corresponding task before selecting a video milestone. ShowReward displays unavailable options with their missing requirement.

For **When the lead opens the portal**, choose **All call types** or **Selected types only**. In the second mode, select at least one active call type before saving, or choose **All call types**. This call-type filter applies to the portal-opening milestone.

For the approval milestone, configured Meta, TikTok, and ChatGPT Ads server APIs can send when the video is approved. Browser pixels and Google Ads complete when the participant reopens the portal.

## Check ChatGPT Ads

If this integration is available to your account:

1. Create or select a web data source in ChatGPT Ads Manager.
2. Copy its public pixel ID into **ChatGPT Ads pixel ID**.
3. Optionally add that data source's Conversions API key for server delivery.
4. Select **appointment\_scheduled** in Ads Manager and choose your ShowReward milestone.
5. Save the campaign.
6. Click **Check API without recording conversions** if you configured the API key.

The API check validates the connection without submitting a conversion. It does not prove attribution or reporting. **Console debugging (events are still real; disable when finished)** adds diagnostic output; it is not a conversion-free test mode.

ShowReward's ChatGPT Ads integration sends appointment\_scheduled, not sales events. If an ad first lands in an external funnel, that funnel must preserve the ad's attribution information when sending the participant to ShowReward. ShowReward cannot recover an identifier lost on another website.

## Test your selected milestone

Use a new test participant, complete the chosen milestone, and check the receiving provider's event view. Tests outside the dedicated API-check button may record real events. After changing a pixel, use a new participant for testing; a configuration change does not resend historical conversions to a new account.


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://showreward.gitbook.io/showreward-docs/campaigns/tracking.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
