> ## Documentation Index
> Fetch the complete documentation index at: https://docs.upstackdata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Outbrain Amplify

> Send conversion events to Outbrain's Unified Pixel API for native advertising campaign optimization — powered by Upstack Signal.

<Note>
  **Data direction:** This is a **destination** — Upstack sends event and conversion data **out** to this platform via server-side APIs.
</Note>

## What it does

Outbrain's Unified Pixel API is the server-side counterpart to the Outbrain browser pixel. Upstack Signal forwards storefront events — page views, product views, add-to-carts, and purchases — directly to Outbrain's servers for native advertising campaign optimization.

Server-side delivery means conversions reach Outbrain even when the browser-side pixel is blocked by ad blockers, ITP, or cookie restrictions. Each event carries the click identifier (`obclid`) captured from ad clicks so Outbrain can match the conversion back to the ad interaction that drove it.

<Warning>
  **Important limitation:** Unlike Meta, TikTok, Google, Reddit, and other ad platforms, Outbrain does **NOT** support enhanced matching via hashed email, phone, or other PII. Attribution relies **solely on the click ID (`obclid`)** captured from ad clicks. Events without a click ID cannot be attributed and are skipped.
</Warning>

## How it works

Upstack Signal runs as a dual-tracking layer alongside the Outbrain browser pixel. The Upstack Pixel captures events in the browser and forwards each one to Upstack's edge infrastructure, where it is enriched with the Outbrain click ID from cookie storage and sent to Outbrain's Unified Pixel API as a server-side event.

Unlike other ad platforms, Outbrain's deduplication relies on the `orderId` field rather than a shared `event_id`. Always include a transaction ID on purchase events to prevent double-counting when running both browser pixel and server-side delivery.

**Attribution model:** Outbrain uses last-click attribution based solely on the `obclid` parameter. Cross-device conversions, cookieless conversions, and conversions from returning visitors whose cookies expired **cannot be attributed** to Outbrain campaigns.

## Setup guides

<CardGroup cols={2}>
  <Card title="Onboarding guide" icon="route" href="/guides/outbrain/complete-how-to-guide-for-onboarding-outbrain-in-upstack-data">
    End-to-end walkthrough for connecting Outbrain to Upstack Data.
  </Card>

  <Card title="Configure destination" icon="sliders" href="/guides/outbrain/how-to-configure-outbrain-destination-in-upstack-data">
    Configure the Outbrain destination inside Upstack Data.
  </Card>

  <Card title="Find Marketer ID" icon="magnifying-glass" href="/guides/outbrain/how-to-find-outbrain-marketer-id">
    Locate your Outbrain Marketer ID in the Amplify Dashboard.
  </Card>

  <Card title="Configure click ID tracking" icon="link" href="/guides/outbrain/how-to-configure-outbrain-click-id-tracking">
    Add the click ID parameter to your campaign URL suffix.
  </Card>
</CardGroup>

## Event mapping

Upstack maps storefront events to Outbrain events automatically:

| Upstack event | Outbrain event | Key parameters                          | Notes                                    |
| ------------- | -------------- | --------------------------------------- | ---------------------------------------- |
| `Purchase`    | `Conversion`   | `orderValue`, `currency`, `orderId`     | Primary conversion event                 |
| `Lead`        | `Lead`         | `orderValue`, `orderId`                 | Lead form submissions                    |
| `SignUp`      | `Sign_Up`      | `orderId`                               | Account registration                     |
| `AddToCart`   | `AddToCart`    | `productId`, `productValue`, `currency` | Cart additions                           |
| `ViewContent` | `Content_View` | `productId`, `productValue`             | Product page views (disabled by default) |
| `PageView`    | `PAGE_VIEW`    | —                                       | Page load (disabled by default)          |

Every event includes the Outbrain click ID (`obclid`) when available. **Events without a click ID are skipped** because Outbrain cannot attribute them to any campaign.

## Field mapping

| Upstack field        | Outbrain field | Type   | Notes                       |
| -------------------- | -------------- | ------ | --------------------------- |
| `data.value`         | `orderValue`   | number | Transaction amount          |
| `data.currency`      | `currency`     | string | ISO 4217 (USD, EUR, GBP)    |
| `data.transactionId` | `orderId`      | string | Unique ID for deduplication |
| `item.id`            | `productId`    | string | Product SKU                 |
| `item.name`          | `productName`  | string | Product name                |
| `item.category`      | `category`     | string | Product category            |
| `item.quantity`      | `quantity`     | number | Number of items             |

## FAQ

<AccordionGroup>
  <Accordion title="How do I verify events are arriving in Outbrain?">
    Open Outbrain Amplify Dashboard, navigate to **Conversions**, and check that events are appearing. Server-side events should start appearing within 5–10 minutes of storefront activity. Note that test events won't show up in the dashboard — conversions only register when a real user clicks on your ad in the Outbrain widget.
  </Accordion>

  <Accordion title="Why are my attribution rates lower than other platforms?">
    Outbrain does not support enhanced matching with hashed PII (email, phone, IP, user-agent). Attribution relies **solely** on the click ID (`obclid`). If a visitor clears cookies, uses a different device, or the click ID expires (after 30 days), the conversion cannot be attributed. This is a platform limitation, not an Upstack issue.
  </Accordion>

  <Accordion title="Will my events be counted twice if I run both the pixel and server-side?">
    Outbrain deduplicates based on the `orderId` field. Always include a unique transaction ID on purchase events. If you're sending events from multiple sources (Upstack, GTM, direct pixel), ensure they all use the same `orderId` for the same transaction.
  </Accordion>

  <Accordion title="Do event names need to match exactly?">
    Yes — event names are **case-sensitive** and must exactly match the conversion name configured in your Outbrain Amplify dashboard. `Purchase` ≠ `purchase` ≠ `PURCHASE`. Verify the exact spelling in Amplify → Conversions before configuring Upstack.
  </Accordion>

  <Accordion title="What happens if the click ID is missing?">
    Events without an Outbrain click ID are **skipped** and not sent to Outbrain. This is intentional — Outbrain cannot attribute conversions without a click ID, so sending them would inflate your event volume without improving attribution. Ensure your campaign URL suffix includes `obclid={{ob_click_id}}` so the Upstack Pixel can capture click IDs.
  </Accordion>
</AccordionGroup>

## Troubleshooting

<AccordionGroup>
  <Accordion title="No conversions appearing in Outbrain dashboard">
    If events aren't appearing after confirmed store traffic:

    **Steps to fix:**

    1. Verify your campaign URL suffix includes `obclid={{ob_click_id}}`
    2. Confirm the Upstack destination shows **Active** (green)
    3. Check that the Marketer ID matches your Amplify account
    4. Test with a real ad click — test traffic without `obclid` in the URL won't generate events
  </Accordion>

  <Accordion title="Invalid Marketer ID error">
    The Marketer ID (also called OB\_ADV\_ID or Pixel ID) must be the 32-character hexadecimal string from Amplify.

    **Steps to fix:**

    1. Go to Amplify Dashboard → Settings → Tracking
    2. Copy the full Marketer ID (no spaces, no extra characters)
    3. Update the destination in Upstack with the correct ID
  </Accordion>

  <Accordion title="Low attribution rate compared to other platforms">
    This is expected due to Outbrain's click-ID-only attribution model.

    **To maximize attribution:**

    * Ensure all campaigns include `obclid={{ob_click_id}}` in the URL suffix
    * Verify the Upstack Pixel is loading on all pages to capture click IDs
    * Check that first-party cookies are not being blocked by browser settings
    * Note that cross-device and returning-visitor conversions will not be attributed
  </Accordion>
</AccordionGroup>

<Note>
  For additional troubleshooting beyond Outbrain-specific issues, see [Troubleshooting: Events Not Reaching Destination](/troubleshooting/events-not-reaching-destination).
</Note>

## Related

<CardGroup cols={2}>
  <Card title="Conversion API forwarding" icon="lightbulb" href="/concepts/conversion-api-forwarding">
    How Upstack Signal forwards events to ad platforms via server-to-server APIs.
  </Card>

  <Card title="Identity resolution" icon="fingerprint" href="/pixel/identity-resolution">
    How Upstack matches anonymous visitors to known customers for higher match rates.
  </Card>

  <Card title="Meta CAPI destination" icon="meta" href="/destinations/meta-capi">
    Set up Meta's Conversions API — supports enhanced matching unlike Outbrain.
  </Card>

  <Card title="Events not reaching destination" icon="wrench" href="/troubleshooting/events-not-reaching-destination">
    End-to-end diagnostic guide when events aren't arriving at any destination.
  </Card>
</CardGroup>
