Overview
Roku Ads Manager is Roku's self-attributing network (SAN), providing third-party measurement partners with access to attribution data for installs and in-app events for advertisers running campaigns on Roku's streaming media platform. This integration enables Branch to receive attribution data from Roku Ads Manager and forward conversion events for campaign optimization, audience segmentation, and retargeting.
As a SAN, Roku reports attribution to Branch directly via its API. For more information about integrating ad partners in general, visit our Ad Partner Integration Guide.
Note: this guide is for new Branch
Please note that this guide is about integrating Roku in the new Branch experience. For information on Roku in legacy Branch, visit our legacy guide.
Partner capabilities
Capability | Details |
|---|---|
Company type | Self-attributing network (SAN) |
Deep linking | Not supported |
Attribution | Click-through, view-through |
Ad campaign types | Video ads |
Supported platforms | Roku OS (CTV/OTT) |
Cost ingestion support | Supported (via API) |
Pricing models | CPM |
Engagement Builder Ad Partner Integration | Not available |
Before you begin
To set up the Roku SAN integration, you need:
Branch's Household Measurement enabled for your Branch account. Household Measurement requires a premium plan. Contact your Branch account manager or visit https://branch.io/pricing.
A Branch account with access to Configuration > Ad Partners and admin permissions to enable and configure integrations.
A Roku Ads Manager account with admin access.
Enable Roku SAN
Enabling Roku SAN involves two steps: obtaining a Roku Event Group ID and connecting your account in Branch. You can obtain an Event Group ID either through Roku Ads Manager or through Roku managed services.
Find your Roku Event Group ID
Via Roku Ads Manager
To obtain an Event Group ID through Roku Ads Manager:
Sign in to Roku Ads Manager.
Navigate to the Events page.
Identify an existing Event Group or create a new one.
Copy the Event Group ID.
Email Roku at adsmanagersupport@roku.com with the following information:
Your MMP name: Branch
Your Event Group ID
Via managed services
If you are using Roku managed services, Roku will provide your Event Group ID directly. Contact your Roku representative to request it.
Connect Roku SAN in Branch
To begin, navigate to Configuration > Ad Partners > Roku SAN.
Caution: select the correct partner
Search for and select Roku SAN. Do not select the Roku option (it is a separate integration).
Enter your Roku SAN user name and Roku SAN user ID.
Under Account Settings, enter your Roku Event Group ID.
Select Save.
Integrate the Branch Roku SDK
To measure in-app events and forward them to Roku Ads Manager, your development team must integrate the Branch Roku SDK into your Roku app. Without SDK integration, Branch cannot receive in-app event data to forward to Roku.
Your development team will need your Branch Key, which you can find at Configuration > Security & Access > Credentials.
For full SDK implementation instructions, visit Developer Hub:
Configure attribution
To configure attribution windows, select the Attribution windows tab on the Roku SAN page.
To minimize discrepancies when comparing Branch and Roku Ads Manager reporting, match your Branch attribution windows to the settings in your Roku Ads Manager account.
Attribution type | Default | Roku's recommendation |
|---|---|---|
Click to session start | 1 day | 1 day |
Click to install | 7 days | 7 days |
Click to conversion event | 1 day | 1 day |
Impression to session start | 1 day | 1 day |
Impression to install | 1 day | 1 day |
Impression to conversion event | 1 day | 1 day |
Deep linking duration | 120 minutes | — |
Configure events
To configure event mappings, select the Event config tab on the Roku SAN page.
Branch forwards in-app events to Roku Ads Manager based on the mappings configured here. For guidance on setting up event mappings, see the general Ad Partner Integration Guide.
Note: event forwarding delay
Events can take up to 4 hours to appear in Roku Ads Manager after being forwarded from Branch.
Verify your data
After enabling the integration and running campaigns, verify that attribution data is flowing correctly.
In Branch Liveview: confirm that events from your app appear in real time. This is the fastest way to confirm SDK events are firing.
In Branch Analysis dashboards: review attributed installs, events, and cost data where
Ad Partner Name = OTT Roku SANIn Roku Ads Manager: Confirm that forwarded events are appearing in your Roku Ads Manager attribution reporting.
Data mappings
Campaign data
Branch maps the following data fields from Roku to Branch.
Branch field | Roku data | Possible values |
|---|---|---|
| — |
|
| Touch Type | CLICK or IMPRESSION |
| Account ID | The ID of your Roku Ads Manager account |
| Account Name | The name of your Roku Ads Manager account |
| Campaign ID | The ID of your Roku campaign |
| Campaign Name | The name of your Roku campaign |
| Creative ID | The ID of your Roku creative |
| Creative Name | The name of your Roku creative |
| Flight ID | The ID of the Roku line item |
| Flight Name | The name of the Roku line item |
| Content ID | The ID of the Roku content |
| Placement Type |
|
| Timestamp | Timestamp of the ad impression or click |
Event names
Branch forwards in-app events to Roku using the following event name mappings. Configure these on the Event config tab.
Branch event name | Roku event name |
|---|---|
ACHIEVE_LEVEL | ACHIEVE_LEVEL |
ADD_PAYMENT_INFO | ADD_PAYMENT_INFO |
ADD_TO_CART | ADD_TO_CART |
ADD_TO_WISHLIST | ADD_TO_WISHLIST |
COMPLETE_REGISTRATION | COMPLETE_REGISTRATION |
COMPLETE_REGISTRATION | SIGN_UP |
CONTACT | CONTACT |
CUSTOMIZE_PRODUCT | CUSTOMIZE_PRODUCT |
DONATE | DONATE |
DOWNLOAD | DOWNLOAD |
FIND_LOCATION | FIND_LOCATION |
FIRST_VIDEO_VIEW | FIRST_VIDEO_VIEW |
INITIATE_PURCHASE | INITIATE_CHECKOUT |
INITIATE_STREAM | VIDEO_STREAM |
INSTALL | APP_INSTALL |
LEAD | LEAD |
OPEN | SESSION_START |
PAGEVIEW | PAGE_VIEW |
PURCHASE | EST_TRANSACTION |
PURCHASE | PURCHASE |
QSS | QSS |
SCHEDULE | SCHEDULE |
SEARCH | SEARCH |
SEARCH | TEXT_SEARCH |
START_TRIAL | START_TRIAL |
SUBMIT_APPLICATION | SUBMIT_APPLICATION |
SUBSCRIBE | SUBSCRIBE |
SUBSCRIBE | SUBSCRIPTION_RENEWAL |
SUBSCRIPTION_CANCELLATION | SUBSCRIPTION_CANCELLATION |
UNLOCK_ACHIEVEMENT | UNLOCK_ACHIEVEMENT |
VIDEO_VIEW | VIDEO_VIEW |
VIEW_AD | AD_INITIATED |
VIEW_AD | AD_VIEW |
VIEW_CONTENT | VIEW_CONTENT |
VIEW_CART | VIEW_CART |
VOICE_SEARCH | VOICE_SEARCH |
Data limitations
Roku last-attributed data is wiped at the log level. This means Roku attribution data will appear as null/blank in Custom Exports and Daily Exports. Roku attribution data is still accessible through aggregate exports via the Aggregate API or Query API.
To configure your Branch time zone setting, navigate to Configuration > App Settings > General.
Troubleshooting
Attribution data is not appearing in Branch
If attribution data from Roku is not appearing in Branch, check the following:
Confirm that Household Measurement is enabled for your Branch account.
Verify that you selected Roku SAN (not Roku) in Branch and that you are looking for
Ad Partner = Roku SANin analytics.Confirm that your Roku Event Group ID is entered correctly in Branch. Navigate to Configuration > Ad Partners > Roku SAN and select Partner settings to verify your credentials.
Ensure you emailed Roku (adsmanagersupport@roku.com) your MMP name (Branch) and Event Group ID if using Roku Ads Manager. Attribution will not flow until Roku has activated the MMP connection.
Events are not appearing in Roku Ads Manager
If events forwarded from Branch are not appearing in Roku Ads Manager:
Confirm that event mappings are configured on the Event config tab and that Save Changes was selected after mapping.
Allow up to 4 hours for events to appear in Roku Ads Manager after they are forwarded from Branch.
Verify that the Branch BrightScript SDK is correctly integrated in your Roku app and that events are firing. Use Branch Liveview to confirm events are being received by Branch.
Roku attribution data appears as null in exports
This is expected behavior. Roku last-attributed data is wiped at the log level and will appear as null/blank in Custom Exports and Daily Exports. To access Roku attribution data, use the Aggregate API or Query API instead.
Additional resources
For more information on the Roku SAN integration and related topics, see the following articles: