Ad & Integrations > Advertising
Reddit Pixel
Install the Reddit Pixel on your SuperFunnel pages, fire standard and custom conversion events, and verify tracking in Reddit's Events Manager.
Overview
The Reddit Pixel is a snippet of code you add to your pages so Reddit can see what visitors do, then use that data to measure conversions, build audiences, and optimize your Reddit ads.
The Pixel registers a PageVisit on every load, the Reddit equivalent of a Meta PageView. From there you can fire additional standard events like Lead or SignUp, or your own custom events, to mark the actions that matter to your campaigns.
Before you start
Create your Pixel in Reddit Ads Manager → Events Manager first, and note
your Pixel ID (it looks like a2_xxxxxxxxxxxx). If you also want to pull
campaign data into SuperFunnel, connect your Reddit ad account as well.
Step 1: Get your Pixel base code
Open Events Manager
In Reddit Ads Manager, open Events Manager and select your Pixel. Note the Pixel ID.
Copy the base code
Choose to install the Pixel manually and copy the base code. It looks like
this, with your own ID in place of a2_xxxxxxxxxxxx:
<!-- Reddit Pixel -->
<script>
!function(w,d){if(!w.rdt){var p=w.rdt=function(){p.sendEvent?p.sendEvent.apply(p,arguments):p.callQueue.push(arguments)};p.callQueue=[];var t=d.createElement("script");t.src="https://www.redditstatic.com/ads/pixel.js",t.async=!0;var s=d.getElementsByTagName("script")[0];s.parentNode.insertBefore(t,s)}}(window,document);
rdt('init','a2_xxxxxxxxxxxx');
rdt('track','PageVisit');
</script>
<!-- End Reddit Pixel -->Step 2: Install the Pixel in SuperFunnel
Add the base code using Custom Code. Install it globally so the Pixel loads on every page and quiz.
Open global Custom Code
Go to Settings → Website → Custom Code.
Add the Pixel snippet
Click + Add Code, name it "Reddit Pixel — Base", paste the base code, and set the injection location to Header so it loads before page content. Enable it.
Save your pages
Save so the Pixel goes live.
Install the Pixel in exactly one place
Add the base code once, globally. Enable or disable it at the Page and Quiz level.
Adding the code twice loads the Pixel twice and double-counts every event. This is the single most common cause of inflated numbers. See Debugging Events for additional information.
Step 3: Verify the Pixel is firing
Install the Reddit Pixel Helper
Add the Reddit Pixel Helper Chrome extension, then open your live page to see which Pixel loads and which events fire directly in the browser.
Check Events Manager
In Reddit Ads Manager → Events Manager, open your Pixel and confirm a PageVisit arrives as you load the page. It can take a moment to appear.
Refresh if nothing appears
If no events show on first load, refresh the page. A refresh resolves most "Pixel not detected" cases.
Reddit Pixel events: standard vs. custom
The Reddit Pixel recognizes a set of standard events that map to reporting and optimization in Reddit Ads Manager. Custom events are any other name you choose.
| Standard event | Fire it when… |
|---|---|
PageVisit | A page loads (fired by the base code). |
ViewContent | A visitor views a key piece of content. |
Search | A visitor runs a search. |
AddToCart | A visitor adds an item to their cart. |
AddToWishlist | A visitor saves an item. |
Lead | A visitor submits a lead or contact form. |
SignUp | A visitor completes a sign-up or registration. |
Purchase | A visitor completes a purchase. |
Custom | Any other action, named with customEventName. |
Fire a standard event with a single call:
rdt('track', 'Lead');Add parameters for revenue reporting, for example on an order confirmation page:
rdt('track', 'Purchase', { currency: 'USD', value: 49.99, transactionId: 'order_12345' });Fire a custom event by setting the event name to Custom and giving it a customEventName that does not match a standard event:
rdt('track', 'Custom', { customEventName: 'demo_booked' });The important thing to understand: SuperFunnel fires its own events, superfunnel-form-submission when a visitor reaches the Final Step, and the broader superfunnel-conversion for any conversion. Neither is automatically a Reddit Lead event, so Reddit will not count it until you translate it. For the difference between the two, see Default conversion events.
The cleanest way to translate a SuperFunnel form submission into a Reddit Lead event is through Google Tag Manager: create a Custom Event trigger on superfunnel-form-submission, then fire a Custom HTML tag that calls rdt('track', 'Lead').
Firing your own on-page events
For interactions other than form submission, like a CTA click or a mid-quiz email capture, fire your own event with SuperFunnel's JavaScript API and forward it to Reddit:
window.sf.reportEvent("cta-click");
rdt('track', 'Custom', { customEventName: 'cta_click' });See Online Event Tracking for the full event API, including the sf:step-change hook.
Troubleshooting
- Pixel not detected — refresh the page; confirm the base code is enabled in Custom Code and set to Header.
rdt is not defined— a tag tried to fire before the base code loaded. Make sure the base code is installed globally and in the header.- Events overcounted — the Pixel is installed in more than one place, so every event fires twice. Keep a single source. See Debugging Events.
- Events fire on the wrong step — SuperFunnel's form-submission event fires at the final step. If your real conversion happens earlier, fire a custom event at that point instead, see Online Event Tracking.
What's next
Meta Pixel
Install the Meta Pixel and map SuperFunnel events to standard Meta events.
Google Tag Manager
Fire Reddit and other tags on SuperFunnel events from one container.
Debugging Events
Inspect the page-load dataLayer event and fix common tracking pitfalls.
Online Event Tracking
Fire your own on-page events with the SuperFunnel JavaScript API.