Roku Ads Manager is a self-service connected TV (CTV) advertising platform that streamlines the ad buying experience from campaign creation to optimization to billing. With CallGrid's Roku Ads Manager integration, you send your call conversion data back to Roku Ads Manager so you can measure the calls your Roku ads drive and optimize your CTV campaigns against real phone-call outcomes.
CallGrid sends conversions to Roku through a server-to-server webhook (Roku's Conversions API). Once configured, the webhook fires automatically on the call event you choose, so Roku Ads Manager can attribute phone-call conversions back to your CTV ad campaigns. CallGrid hashes the caller's phone number before sending it, so no caller number is transmitted in the clear, and it sends the event timestamp using a built-in tag, so there is nothing to format yourself.
This article is for admin users.
Prerequisites
Before setting up your webhook, you will need:
- Admin access in your CallGrid account
- Organization or Account Admin access in Roku Ads Manager
- Your Roku Event Group ID
- Your Roku CAPI API key (bearer token)
Where to find your Roku Event Group ID
- Sign in to Roku Ads Manager at https://ads.roku.com
- Go to the Events page at https://ads.roku.com/pixels
- Find the Event Group you want to use, or create a new one
- Copy the Event Group ID and save it somewhere secure for the CallGrid setup below
Where to generate your Roku CAPI API key
- On the Events page, select CAPI
- Click Generate an API key (this requires Organization or Account Admin access in Roku)
- Copy the API key and save it somewhere secure for the CallGrid setup below
Note: Roku API keys do not expire. If you believe a key has been compromised, revoke it and generate a new one from the same CAPI settings page, then update the key in your CallGrid webhook.
Setup Process
1. Create the webhook
- In CallGrid, navigate to Integrations → Webhooks
- Click + New Webhook
[Screenshot: Integrations > Webhooks (Manage Webhooks) list with the + New Webhook button] - Name: give the webhook a descriptive name (for example, Roku CAPI - Converted)
- Event: choose when the webhook fires. Pick the event that matches the moment you want to count as a Roku conversion:
Note: The full list of valid events is Call Inbound, Call Initiated, Call Ended, Call Error, Call Answered, Call Billable, Call Paid, Call Converted, Insights Completed, Transcription Completed, Recording Completed, and Bid Received. Choose the one that matches your conversion definition.

- Call Inbound to fire on every inbound call
- Call Answered to fire when the destination answers
- Call Billable to fire when the call meets your billable criteria
- Select Roku Advertising from the template dropdown (listed under the Conversion Pixel category)
- Enter the two template fields:
- API Key: paste the Roku CAPI API key you generated
- event_group_id: paste the Event Group ID you copied from Roku
- Click Save Webhook

That is the full required setup. The Roku template builds the request to Roku's Conversions API for you, maps the call data automatically, and sends the API key as a bearer token, so there is no manual JSON or header configuration to manage.
2. Filter by vendor or source (optional)
If you only want this webhook to fire for specific vendors or traffic sources, add a tag filter so Roku only receives the conversions you care about:
- Open the webhook and go to Tag Routing
- Click Add Filter
- Set the tag to SourceName, the operator to Equals, and select the source or sources that should fire the conversion
- Save

You can filter on any system tag (for example SourceName, BuyerName, CampaignName, or InboundState) and combine conditions with Add Or Rule or Add And Rule.
3. Add the webhook to your campaign
The webhook only runs on campaigns it is attached to. Add it to the campaign you use to track your Roku calls:
- Navigate to Campaigns and open the campaign you use for Roku traffic
- Click Add Webhook
- Select the Roku webhook you created from the dropdown
- Click Save

Repeat for any other campaigns that should report conversions to Roku.
Testing Your Integration
- Open the webhook and fill in test values for the detected variables
- Click Run Webhook to fire a test conversion
- Confirm the response returns a success status
- Check your Roku Ads Manager dashboard to confirm the conversion appears
After you fire a test conversion, it can take some time for the event to show up in Roku Ads Manager. This is expected. For a true end-to-end check, place a live test call into a campaign that has the webhook attached and confirm the conversion lands in Roku.
What CallGrid sends to Roku
In Template Mode you only enter the API Key and event_group_id. CallGrid builds the rest of the request for you and POSTs it to Roku's Conversions API endpoint (https://events.ads.rokuapi.net/v1/events), with the API key passed in the request header. You do not need a JavaScript node to format the timestamp, and you do not need to configure phone hashing, both are handled automatically. For reference, the conversion event maps as follows:

Best Practices
- Match the Event to your actual conversion definition. Use Call Billable or Call Converted when you only want qualified calls counted, and Call Inbound when you want every call reported.
- Use a tag filter on SourceName if only some of your traffic should report to Roku, so you do not inflate your CTV conversion counts with unrelated sources.
- Confirm the webhook is attached to every campaign that carries Roku traffic. A webhook with no campaign attached never fires.
- Keep your Event Group ID and API key current. If you rotate the Roku key, update it in the webhook.
- Test with a live call before scaling spend on the campaign.
Troubleshooting
- No conversions in Roku: confirm the webhook is attached to the campaign, the correct Event is selected, and the campaign is receiving calls that meet that event's criteria.
- Authentication or 401 errors: verify the API key is pasted correctly with no extra spaces, and that the key has not been revoked in Roku.
- Wrong Event Group: confirm the Event Group ID matches the group you are viewing in the Roku dashboard.
- Conversions firing too often or too rarely: revisit your Event choice and any tag filters. Call Inbound fires on every call, while Call Billable and Call Converted fire only on qualifying calls.
- Delay in reporting: conversions can take time to appear in Roku Ads Manager after firing. Allow time before assuming a delivery failure.
Getting Help
If you have questions or need additional help with your Roku Ads Manager integration, reach out to our support team via live chat in your dashboard or email support@callgrid.com.
Related Articles
Continue exploring with these related insights
Advanced Guide: Ringba to CallGrid RTB with Confirmation Step
You should only follow this guide if your buyer has explicitly told you that a confirmation step is required.
Read ArticleClickFlare Integration Guide
The ClickFlare integration enables you to send conversion data from CallGrid to ClickFlare for accurate attribution tracking.
Read ArticleCallGrid Bid API - Advanced RTB Integration Guide
The CallGrid Bid API allows custom platforms and developers to send real-time bid requests to CallGrid campaigns.
Read ArticlePosting Bids from CallGrid to CallGrid using RTB
This guide will walk you through setting up your CallGrid campaign to send bid requests to another CallGrid customer.
Read ArticleAuthor
CallGrid Team
Article Info
Categories
Topics