Kratly
Revenue attribution

Reddit ads attribution: track Reddit, TikTok and podcast ads

Reddit ads attribution, plus TikTok and podcasts: pixels, conversion APIs, view windows, promo codes, surveys and holdouts that tie unclicked ads to sales.

Priyansh KumarUpdated October 24, 202610 min read
A Reddit ad, a TikTok video and a podcast episode, each linked by a dotted line to a Stripe payment days later

Short answer

Reddit ads attribution needs more than the Reddit Pixel. Send purchases through the Conversions API, set click and view windows on purpose, and tag every link with UTMs. Then add a "How did you hear about us?" question and a holdout test. The same three layers work for TikTok and podcast ads.

Reddit ads attribution broke for me on one buyer. They saw us on Reddit, inside the Reddit app. Later they bought, and there was no trackable click to tie the sale back to Reddit.

That buyer is normal on Reddit, TikTok and podcasts. Platform reports guess at them. Your analytics calls them "direct."

Why don't people click these ads?#

The apps keep people inside. Three things break the trail.

The in-app browser. A tapped link often opens in a browser inside the app. On iOS, Apple's in-app Safari view doesn't let apps share website data with Safari; Apple points developers to a different tool for that (Apple Developer). So the in-app visit and a later purchase in Safari can look like two strangers.

Shared links lose their source. SparkToro tested links shared across apps in 2023. Visits from TikTok showed up 100% as direct, with no referrer (SparkToro).

Audio has no link at all. A podcast ad gives a name, a URL or a code. The listener types it later, if they remember.

Unclicked-ad attribution is the work of crediting sales to ads people saw or heard but never clicked. Pixels alone can't do it.

How does Reddit ads attribution work?#

Reddit sends conversions two ways: the Reddit Pixel in the browser and the Conversions API from your server (Reddit Ads Help). I'd run both.

Click-through vs view-through windows on Reddit#

Reddit defaults to a 28-day click window and a 1-day view window. You can set each to 1, 7 or 28 days. "Your view window can't be longer than your click-through window" (Reddit Ads Help).

Reddit recommends the "view-through and click-through" type, which credits people who only saw the ad. That catches the in-app buyer, and inflates Reddit's numbers.

My rule: keep the view window at 1 day. Never compare Reddit's count with Google Ads' before checking both windows. A 28-day click window against a 7-day one is not a fair race.

Send purchases through the Conversions API#

The Pixel misses buyers who block scripts or switch browsers. The Conversions API sends the purchase from your server. Two fields matter:

  • Reddit Click ID. Reddit adds rdt_cid to ad links. It's "the Reddit-generated ID associated with a single ad click" (Tealium, documenting Reddit's API). Save it at sign-up and send it back with the purchase.
  • Conversion ID. Use the same ID in the Pixel and the API so one purchase isn't counted twice.

Send the purchase when Stripe or Shopify confirms payment, not when the thank-you page loads. The how is in server-side tracking explained: first-party data after cookies. For free posting on Reddit, see Reddit marketing for SaaS; this post covers paid ads only.

Reddit Ads default attribution windows, 28-day click and 1-day view, next to TikTok's 7-day click default
Reddit's default windows. Write yours down before you compare Reddit with any other platform.

How does TikTok ads attribution work?#

Same outline: the TikTok Pixel in the browser, plus the Events API from your server.

TikTok attribution windows#

For web campaigns, TikTok defaults to a 7-day click window and a 1-day view window. Click windows can be 1, 7, 14 or 28 days. View windows can be off, 1 day or 7 days (TikTok Ads Help).

Out of the box, Reddit counts clicks for 28 days and TikTok for 7. Same buyer, same path, different credit.

Deduplicate the Pixel and the Events API#

TikTok says you "must share Event ID (event_id) as a parameter through both Pixel and Events API" for deduplication. It removes duplicates within a 48-hour window of the first event (TikTok Ads Help).

Where TikTok view-through helps, and where it misleads#

A 7-day view window on a cheap, high-reach campaign will claim buyers who would have paid anyway. I'd keep view-through at 1 day and judge TikTok on a holdout (below).

How do you measure podcast advertising?#

Podcast advertising attribution has no click to start from. You stack imperfect signals.

Promo codes and vanity URLs. Give each show its own code and URL, like yoursite.com/showname, redirecting to a page with UTMs. Many listeners forget both. Podscribe, which sells podcast attribution, says marketers are "likely still multiplying the counts by at least 2" to estimate the total (Podscribe Help). That's a vendor estimate.

Host IP matching. Podscribe, which also powers Acast's attribution, matches "the IP address the impression occurred on" to the IP of a later visit or purchase. The default window is 30 days (Podscribe Help; Acast). This is household matching, so a roommate who never heard the ad can count. Shared mobile IPs are modeled, not matched.

Download counts aren't sales. The IAB Tech Lab finalized version 2.3 of its podcast measurement guidelines in September 2026, now covering video in RSS feeds. Brad Pipkin of IAB Tech Lab said, "A download is not the same thing as a confirmed play" (PPC Land). The guidelines make downloads comparable across hosts. They don't tell you who bought.

Asking. A survey catches the listener who searched your name a week later.

Podcast ad tracking setup with a show-specific promo code, vanity URL redirect and a survey answer joined to one order
Weak signals for one podcast sale. Together they beat any one alone.

Three methods that work across all three channels#

Platform numbers are each platform grading its own homework. These use your data.

Tag every Reddit ad, TikTok ad and podcast vanity URL with the same rules: utm_source=reddit, tiktok or the show name, every time. Save UTMs and click IDs at sign-up, then pass them into Stripe or Shopify so each payment carries its source. See our SaaS marketing attribution guide. UTMs only catch clicks, hence the next two.

2. Self-reported attribution#

Ask "How did you hear about us?" at sign-up or checkout, as open text. The in-app Reddit buyer will often name Reddit. Listeners name the show. Join each answer to revenue. Wording and tagging are in self-reported attribution: asking "How did you hear about us?" right. Refine Labs, an agency, found podcasts drove 53% of its own closed-won revenue by buyer answers, against 0% in software reports (Refine Labs).

3. Geo or time holdouts#

To know if TikTok or Reddit caused sales, turn it off somewhere and watch revenue. Pause ads in a few regions, or switch them on and off by week. Compare Stripe or Shopify revenue between test and control. Most podcasts can't be geo-targeted, so use time blocks around each episode. The method is in incrementality testing on a small budget.

What I'd check first: add up what each platform claims and compare it with total revenue. If Reddit, TikTok and Meta together claim 140% of revenue, the windows overlap. A holdout tells you which to believe.

Which method to use, by channel#

ChannelPlatform signalDefault windowsYour own signalMain blind spot
Reddit AdsReddit Pixel + Conversions API28-day click, 1-day viewUTMs + rdt_cid stored at sign-up, survey answersIn-app viewers who buy later in another browser
TikTok AdsTikTok Pixel + Events API7-day click, 1-day viewUTMs + survey answersViews that lead to a brand search days later
PodcastsHost IP matching (for example, Podscribe)30-day default (Podscribe)Promo code, vanity URL, survey answersListeners who forget the code and URL
All three——Holdout test against Stripe or Shopify revenueTakes 2–6 weeks and some lost sales

My take: under about $5k a month per channel, skip paid attribution tools. UTMs, a survey and a quarterly holdout are enough.

How to do this in Kratly#

A note on bias: Kratly sells software that ties marketing to revenue. Everything above works in a spreadsheet. See also AI marketing agent: what it can do, what it can't, how to choose.

Reddit Ads and TikTok Ads connections are coming soon. Kratly can't pull their spend or conversions yet. The workaround today:

  1. Connect website tracking and Stripe or Shopify. Kratly ties each payment to the UTM-tagged campaign, page or email that brought it, including Reddit, TikTok and podcast links.
  2. Upload each platform's spend as a CSV, so revenue sits next to cost.
  3. Send the self-reported answer as an event with kratly.track, then compare it with the tracked source in a spreadsheet, so the in-app Reddit buyer still gets credit.
  4. Approve suggested changes. You approve each budget move; every change is logged and reversible.

Questions, answered

Does Reddit track conversions from people who don't click?

Yes, if you use a view-through attribution type, which Reddit recommends. A purchase within 1 day of seeing an ad counts by default, and you can stretch that to 7 or 28 days. That credit is Reddit's own estimate. Check it against Stripe or Shopify revenue, a survey answer, or a holdout test before you scale spend.

What attribution window should I use for TikTok ads?

Start with TikTok's default of a 7-day click and 1-day view window. If you compare TikTok with Reddit, line the windows up first, since Reddit defaults to a 28-day click window. Avoid longer view windows on cheap, high-reach campaigns. They tend to claim buyers who would have paid anyway. Use a holdout test to decide.

How do you track podcast ads without a link?

Combine a promo code and vanity URL per show, a "How did you hear about us?" question, and host IP matching if your network offers it. Each one misses buyers. Promo codes miss people who forget them. IP matching works by household, not person. Together they give a fair estimate of what each show brings in.

Why do Reddit and TikTok claim more sales than I made?

Because each platform counts its own clicks and views with its own windows. One buyer can see a TikTok video, scroll past a Reddit ad and click a Google ad. All three may claim the sale. Add up the platform claims and compare them with real revenue. A holdout test shows which channel actually moved sales.

Written by

Priyansh Kumar

Priyansh Kumar has spent more than a decade in growth, scaling brands from 1 to 10 and from 10 to 100. He now builds Kratly, an autonomous growth team that ties every campaign, page and email to the revenue it brings.

Kratly on LinkedIn

Sources

Was this article useful?

Next step

See which Reddit, TikTok and podcast links bring paying customers.

Start a free Kratly trial, connect your site and Stripe or Shopify, and see revenue by source from your UTM-tagged links.