The Reddit Pixel: install, events and checking it
The Reddit Pixel tells Reddit Ads what people do on your website after seeing or clicking an ad. This guide covers installing the base code directly, through Google Tag Manager or Shopify, the eight standard events and custom events, event metadata, match keys and automated advanced matching, testing with the Pixel Helper and Events Manager, pairing the pixel with the Conversions API and deduplication, and the privacy settings, using Reddit's own help pages.
This guide is built from Reddit Ads Help, mainly About the Reddit Pixel, Install the Reddit Pixel Directly and Event Deduplication, plus the pages linked below. Setting up the ad account and campaigns is in our Reddit ads for business guide. The same job on other platforms is done by the Meta Pixel, TikTok Pixel, Snapchat Pixel and Pinterest Tag.
- What the Reddit Pixel does
- Installing the base code
- Google Tag Manager, Shopify and partners
- Standard and custom events
- The event setup tool
- Event metadata
- Match keys and advanced matching
- Testing: Pixel Helper and Events Manager
- Adding the Conversions API
- Deduplication
- Privacy settings
- How we set it up
- Frequently asked questions
What the Reddit Pixel does
Reddit describes the pixel as a JavaScript snippet that, once on your site, lets you "track actions that visitors take after seeing or clicking your ad on Reddit". It can capture match keys, event metadata and referrer data, and its use falls under the Reddit Business Tool Terms. Reddit adds that browser-based tracking loses some signal, and recommends using the pixel together with the Conversions API for better coverage.
You find your Pixel ID in Events Manager; it should match the business account's Pixel ID under Accounts. Pixel events also feed website retargeting audiences and lookalikes, covered in our Reddit ads targeting guide.
Installing the base code
- In Events Manager, select Configure data source, then Reddit Pixel and Set up manually (or Pixel Only if you have no pixel or Conversions API yet).
- Copy the pixel code. Reddit highly recommends adding match keys to the
initcall at this point. - Paste the code inside the
<head>of every page where you want to track events, including the ad's landing page. - Leave automated advanced matching on (see below), then set up events.
The code loads pixel.js from redditstatic.com, initialises the pixel with your ID and sends a PageVisit event by default. Reddit's warning: "Don't install the Pixel code twice on the same page since it can duplicate tracking and inflate your metrics." If you aren't doing it yourself, Events Manager has a Send to Developer option that emails the setup guide with the events you chose.
If your site sends a Content Security Policy, allow the Reddit hosts the pixel uses, or it may be blocked; Reddit suggests checking the browser's network tab and console for blocked requests afterwards.
Google Tag Manager, Shopify and partners
- Google Tag Manager: set up the pixel in Events Manager, publish a web container, link your account in Ads Manager, then add events with the setup tool or in Tag Manager. For the Conversions API as well you also publish a server container. Reddit recommends this route if you already use Tag Manager; our Google Tag Manager basics and server-side tagging guides cover the Google side.
- Shopify: link Reddit Ads with Shopify to set up the pixel without code and sync your product catalog, or use a Shopify custom pixel for custom events.
- Partners: Reddit lists supported partner integrations for both the pixel and the Conversions API.
Standard and custom events
Reddit's conversion events page says "Reddit supports eight standard events":
- PageVisit: someone lands on a page.
- ViewContent: someone views a product page or a particular piece of content.
- Search, AddToCart, AddToWishlist and Purchase.
- Lead: someone submits information showing interest in an offer.
- SignUp: someone submits a subscription, registration or sign-up form.
Events are sent with rdt('track', 'EventName', {...}). For anything else, use 'Custom' with a customEventName of up to 64 characters; names are case-sensitive, so "Promotion Event" and "PromotionEvent" are different events. You can create as many as you like, but "only the twenty most recent events will be visible" in Events Manager and reporting. Reddit also asks you not to set up the same event more than once, putting all its metadata in one event instead.
The event setup tool
Reddit recommends its event setup tool for adding events without code. In Events Manager, choose Event Configuration, Set Up Events, enter your site URL and open it; your site opens in a new tab with the tool. Each event fires either on web elements (a click on a link or button, for actions on the same page) or on URL keywords (a visit to a page such as the order confirmation). Turn off ad blockers first, and keep the Events Manager tab open or the tool disconnects. It doesn't support dynamic metadata, such as a basket value that changes per order; for that you add events in code or Tag Manager.
Event metadata
Event metadata adds detail to events: item count, value, currency, a conversion ID and products (product ID, category, name, item price and quantity). Product IDs are required for product ads and dynamic product ads and must match your catalog. If you send values in several currencies they are converted to the ad account's currency. Reddit's note on the conversion ID: "Only implement Conversion ID when using both the Reddit Pixel and Conversions API."
Match keys and advanced matching
Match keys link a conversion to a Reddit ad view or click. Reddit's advice: "At a minimum, pass email addresses". The full list:
- email address, phone number (E.164 format), external ID and mobile advertising ID;
- the Reddit click ID, added to ad URLs as
rdt_cid; - the Reddit UUID, created by the pixel;
- for view conversions, device identifiers: IP address (the minimum), user agent and screen size.
Values can be sent plain or pre-hashed with SHA-256. Automated advanced matching, on by default during setup, picks up email addresses and other customer details from your pages and hashes them before sending. Reddit attaches a condition: "If enabled, the Pixel must not be placed on a page where an email address is on screen before the user has given proper consent or been notified."
Testing: Pixel Helper and Events Manager
The Reddit Pixel Helper is a Chrome extension. On any page with the pixel it shows which ad account receives the events and gives each event a status: green (healthy), yellow (works, fix recommended) or red (broken). Expanding an event shows the Pixel ID, page, timestamp, metadata, match keys and any errors, such as an invalid Pixel ID or a custom event with no name, and you can save the results.
In Events Manager, Event Testing opens your page and lists events as you trigger them. "Third-party cookies must be enabled in your browser settings for event testing." Check that all your events appear and that counts make sense; Reddit recommends including Purchase, Lead and SignUp for conversions, and ViewContent, AddToCart and Purchase for dynamic product ads. Some events may not show in Event Testing; check those with the Pixel Helper.
Adding the Conversions API
The Conversions API (CAPI) sends conversions from your server to Reddit, including app and offline events. Reddit says events "must be sent within seven days after they occur", recommends a conversion access token because it doesn't expire, and offers three routes: a direct integration, server-side Google Tag Manager, or a partner. Its best practices: use CAPI and the pixel together, send IP address and click ID (and ideally email and user agent), and set the right action source for each event.
Deduplication
Reddit is firm: "We require event deduplication if you use the Reddit Pixel and Conversions API together." Its deduplication page describes two methods:
- Conversion ID (recommended): send the same unique ID with the event from both sources, such as the order number for purchases. The event with more metadata and match keys is kept; if equal, the later one is marked as the duplicate.
- Session-based (default): if there is no conversion ID, Reddit uses the UUID or external ID to pick the better source for each session, a run of events no more than five minutes apart.
The event type, and for custom events the name, must match. Reddit notes "Events must be sent within two days for proper deduplication", deduplication runs hourly and may take up to 24 hours, and reusing one conversion ID across many events gets them marked as duplicates and not attributed. Different events in each source need no deduplication.
Privacy settings
- Limited Data Use: for users who opted out of the sharing or selling of their data, add data processing mode LDU with country and region codes to the pixel's
initcall, the CAPI request or the Tag Manager tag. Reddit notes it "may impact campaign performance and limit the size of targetable audiences", and that "Advertisers remain responsible for complying with all applicable laws", including consent. - Enhanced metadata sharing: on by default, it lets the pixel collect page and product data such as Open Graph tags and structured data. Turn it off in Events Manager under Pixel Configuration, Settings; advertisers in some sensitive categories may not use it.
How to hold marketing tags back until visitors agree is covered in our cookie consent banners guide.
How we set it up
This is our own practice, not Reddit's guidance:
- We install through Google Tag Manager when the site has it, so the pixel follows the same consent rules as other marketing tags.
- We start with PageVisit plus the one event that matches the campaign goal, usually Lead or Purchase, with value and currency.
- We use the order or lead ID as the conversion ID from day one if CAPI is planned, so deduplication works when it is added.
- We check every event in the Pixel Helper with a test lead or order before the campaign starts, and tag ad links with UTM parameters for our own analytics.
If you want help setting up Reddit ads tracking, see our services.
Frequently asked questions
Where do I find my Reddit Pixel ID?
In Events Manager in Reddit Ads. It should match the Pixel ID shown for the business account under Accounts.
What events does the Reddit Pixel support?
Eight standard events: PageVisit, ViewContent, Search, AddToCart, AddToWishlist, Purchase, Lead and SignUp. Custom events are also allowed, with the twenty most recent visible in reporting.
How do I check that my Reddit Pixel is working?
Use the Reddit Pixel Helper Chrome extension on your site, or Event Testing in Events Manager. Third-party cookies must be enabled in your browser for Event Testing.
Do I need the Conversions API as well as the Reddit Pixel?
It isn't required, but Reddit recommends using both. If you send the same events through both, deduplication is required, ideally with a matching conversion ID.
Can I install the Reddit Pixel with Google Tag Manager?
Yes. Set up the pixel in Events Manager, publish a web container, link your account and add events with the event setup tool or in Tag Manager.
For more on ad tracking, see our guides to the Meta Pixel and Conversions API and the LinkedIn Insight Tag.