Set Up the Reddit Conversions API and Pixel with GTM
If you've already set up the Reddit Pixel for GTM on the Ads Manager, this setup will enhance your existing configuration without disrupting your current conversion sharing.
Integrate the Reddit Pixel and Conversions API (CAPI) with Google Tag Manager (GTM) directly from the Ads Manager. This process automatically sets up your container, simplifying setup while enhancing the reliability and consistency of conversion metrics. We recommend giving your setup a good test run to ensure it’s working as best as it can.
If you’re unsure during setup, reach out to your developers.
Before you start
- Set up your Reddit Ads account. You’ll also need to join your team's account as a business admin.
- Create a Google account and set up billing. This is required for provisioning your server.
- Set up your Google tools:
- Set up and publish a web container. You’ll also need to install it on your site.
- Create and publish an automatically provisioned server container. You’ll also need to copy and record its container ID, formatted as GTM-XXXXXX.
- Set up Google Analytics on your site. Your website URL should be set as the web property. Copy and record your measurement ID, formatted as G-XXXXXXXXXX.
1. (Recommended) Map a custom domain to your server container
This step requires access to your DNS provider, usually the service where you bought your domain. DNS changes can take time. If verification doesn’t work right away, wait up to an hour and try again.
Connect your custom domain to send first-party signals and avoid client-side third-party limitations, such as browser privacy limits or ad blockers.
- Verify your custom domain as a domain property type in the Google Search Console. This lets you use it for mapping.
- Go to domain mappings. Ensure the selected project matches your server container ID.

- Select Add mapping. When prompted, provide your domain. When ready, select Continue.
- Service to select:
server-side-tagging - Verified domain: The domain you verified.
- Specify subdomain: We recommend setting this to a value like
gtm. This keeps your main site online and clearly separates your tagging server.
- Service to select:
- A list of DNS records to add to your domain will appear. Add each record through your DNS provider, then select Done.
- After your mapping’s status is active, traffic will be routed to your subdomain. Go to your subdomain with the
/healthypath to see if your configuration is live. For example, if your site isgtm.notarealbrand.com, you would go togtm.notarealbrand.com/healthy. If everything is functioning, you’ll seeOK. - In your server container, go to Admin > Container settings.

- Select Add URL and provide your subdomain. When done, select Save.

2. Connect your account
- Go to the Events Manager and select Configure Source > Conversions API > Google Tag Manager.
If this is the first time you’ve set up the Reddit Pixel or CAPI, select Google Tag Manager > Pixel and Conversions API.

- Select Next then Sign in with Google.

- Choose the account to link and Select all to permit Reddit to manage your containers and continue.

- Generate a conversion access token. This will be used to share conversion events from your server container to Reddit Ads.
- Provide your Google Analytics measurement ID and your server container URL. If you mapped your custom domain, provide your subdomain (for example,
https://gtm.notarealbrand.com). Otherwise, set this to your default server URL.Open your server container and select your container ID to see your default URL.

- Choose the web and server container to link and select Publish. When prompted, select Yes, Publish.
- (Optional) Enable auto-advanced matching to hash and send emails when provided for Pixel events. We recommend this to match users to conversion activity, boosting your campaign performance.
3. Set up events
We recommend setting up events using one of the following methods:
| Method | Description | Use case |
|---|---|---|
| Google Tag API | Send events directly with the Google Tag. Reddit automatically maps these parameters to Reddit’s event metadata and match keys. | Automatic parameter mapping and less required customization. |
| Tag Manager | Push event data to the data layer for the Google Tag to read and send to Reddit. | Share custom or complex event data. |
Examples: Google Tag API
Page Visit
<script>
gtag('event', 'page_view', {
user_data: {
email_address: 'user@example.com',
phone_number: '+15551234567'
}
});
</script>
View Content
<script>
gtag('event', 'view_item', {
items: [
{
item_id: 'sku123',
item_name: 'Red T-Shirt',
item_category: 'Apparel'
}
],
user_data: {
email_address: 'user@example.com',
phone_number: '+15551234567'
}
});
</script>
Search
<script>
gtag('event', 'search', {
user_data: {
email_address: 'user@example.com',
phone_number: '+15551234567'
}
});
</script>
Add to Cart
<script>
gtag('event', 'add_to_cart', {
currency: 'USD',
value: 35.00,
items: [
{
item_id: 'sku123',
item_name: 'Red T-Shirt',
item_category: 'Apparel',
quantity: 1
}
],
user_data: {
email_address: 'user@example.com',
phone_number: '+15551234567'
}
});
</script>
Add to Wishlist
<script>
gtag('event', 'add_to_wishlist', {
currency: 'USD',
value: 35.00,
items: [
{
item_id: 'sku123',
item_name: 'Red T-Shirt',
item_category: 'Apparel'
}
],
user_data: {
email_address: 'user@example.com',
phone_number: '+15551234567'
}
});
</script>
Purchase
<script>
gtag('event', 'purchase', {
currency: 'USD',
value: 35.00,
items: [
{
item_id: 'sku123',
item_name: 'Red T-Shirt',
item_category: 'Apparel',
quantity: 1
}
],
user_data: {
email_address: 'user@example.com',
phone_number: '+15551234567'
}
});
</script>
Lead
<script>
gtag('event', 'generate_lead', {
currency: 'USD',
value: 35.00,
user_data: {
email_address: 'user@example.com',
phone_number: '+15551234567'
}
});
</script>
Sign Up
<script>
gtag('event', 'sign_up', {
method: 'Email',
currency: 'USD',
value: 35.00,
user_data: {
email_address: 'user@example.com',
phone_number: '+15551234567'
}
});
</script>
Testing and next steps
After linking your container and setting up events, test your Pixel integration with the Pixel Helper or Events Manager to ensure data is being passed correctly.
CAPI events will post on the dashboard within three hours of being sent. We recommend checking the dashboard to ensure events are being passed correctly.
You can also verify your web and server containers to ensure your tags are triggering.
Troubleshooting
| Error | Resolution |
|---|---|
| Reauthenticate | Your account was unlinked from the Ads Manager. Reconnect it and try again. |
| Permission needed | Your account doesn’t have permission to manage this container. Contact your GTM account admin for edit permission. |
| Publish failed | We couldn’t add the Pixel to this container at this time. Try again later. |
| Not found | Your web container couldn’t be found. Check that it’s published and still exists. |
| Something went wrong | An unknown error has occurred. Try again later. |
If issues arise after linking GTM to the Ads Manager, you can reset your setup using one of the following methods:
- Revert to a previous version (recommended): Roll back your web and server containers to the versions created before you connected them to the Ads Manager. Use this method if you haven’t made any customizations since linking to Reddit.
- Remove the Reddit setup: Delete all entities that begin with
REDDIT-{{Your Pixel ID}}in both your web and server containers.
For more help, contact support.
Revert to a previous version
- Open your container and go to the Versions tab.

- View a version where the Ads Manager wasn’t connected.
Choose a version that doesn’t have the Reddit Conversions API (server containers) or the Reddit Pixel (web container) custom template in it.

- Select More > Set as latest version. This will revert your container to that version’s setup.

- Restart the Ads Manager connection process.
Remove the Reddit Pixel
We strongly recommend using the Reddit Pixel and CAPI together to maximize conversion coverage, campaign performance, and signal resiliency and adaptability.
You can disconnect the Reddit Pixel to share only server-side connections with Reddit from GTM.
- Open your web container and go to Tags. Select the
REDDIT-{{Your Pixel ID}}}}-Web-Tagand then Delete.Removing other Reddit tags will cause CAPI issues.

- In Template, select the Reddit Pixel and then Delete. Select Submit to review your changes.

- Check that only the Reddit Web Tag and Reddit Pixel custom template are being removed. When ready, select Publish to save your changes.
You can reinstall the Reddit Pixel by relinking your web container in the Ads Manager.

- Implement click ID persistence for CAPI.
Learn more
Configure Signals
Validate Events