Linking Outbrain as a source
The Outbrain source is currently in alpha. It connects to the Outbrain Amplify API, which requires account-manager approval before API calls are accepted. If your requests are rejected, contact your Outbrain account manager to enable Amplify API access.
The Outbrain connector syncs your Outbrain Amplify advertising data into PostHog, including marketers, campaigns, budgets, promoted links, and performance reports.
Requirements
- An Outbrain account with Amplify API access enabled. This must be requested through your Outbrain account manager — it isn't available by default.
- Your Outbrain login credentials (username and password).
Available tables
| Table | Description | Sync method |
|---|---|---|
marketers | All marketers on your account | Full refresh |
campaigns | Campaigns for each marketer | Full refresh |
budgets | Budgets for each marketer | Full refresh |
promoted_links | Promoted links for each campaign | Full refresh |
marketer_performance_daily | Daily performance metrics per marketer | Incremental |
campaign_performance | Per-campaign performance totals over a trailing 30-day window | Full refresh |
Adding a data source
- In PostHog, go to the Data pipeline page and select the Sources tab.
- Click + New source and select Outbrain by clicking the Link button.
- Enter your Outbrain Username (typically your email address).
- Enter your Outbrain Password.
- Optional: Add a prefix to your table names.
- Select the tables you want to sync.
- Click Import.
PostHog validates your credentials by exchanging them for an API token via the Outbrain Amplify login endpoint. If authentication fails, check that your username and password are correct and that your account has Amplify API access enabled.
Sync modes
Full refresh
Most Outbrain tables only support full refresh syncing. The Outbrain Amplify API doesn't expose an "updated since" filter for entity endpoints (marketers, campaigns, budgets, promoted links), so PostHog re-downloads all rows on every sync.
The campaign_performance table is also full refresh — it returns per-campaign totals over a trailing 30-day window with no date column, so each sync is a point-in-time snapshot.
Incremental
The marketer_performance_daily table supports incremental syncing using the _date field as the cursor. On each sync:
- First sync – Backfills the last 365 days of daily performance data.
- Subsequent syncs – Re-pulls a 30-day lookback window to account for conversion metrics that can restate for up to 30 days due to attribution, then appends new days.
Rows are keyed by _marketer_id and _date, so restated data merges correctly on deduplication.
Configuration
| Option | Type | Required |
|---|---|---|
Username | text | Yes |
Password | password | Yes |
Supported tables
| Table | Description | Sync method | Incremental field | Primary key |
|---|---|---|---|---|
marketers | An Outbrain Amplify marketer (advertiser account) that owns campaigns. | Full refresh | — | — |
campaigns | An advertising campaign run by a marketer, with budget, bidding, and targeting. | Full refresh | — | — |
budgets | A spending budget shared across one or more of a marketer's campaigns. | Full refresh | — | — |
promoted_links | A piece of promoted content (ad creative) within a campaign. | Full refresh | — | — |
marketer_performance_daily | Daily performance metrics (impressions, clicks, spend, conversions) per marketer. | Incremental, Full refresh | _date | — |
campaign_performance | Per-campaign performance totals for a trailing window (a snapshot, full-refreshed each sync). | Full refresh | — | — |