Skip to main content
Snapchat × SubscriptionsRun this yourself

How to reconcile Snapchat Ads against your billing system

This is the check we run first on every account, written out so you can run it without us. It takes about thirty minutes and needs two numbers: what Snapchat says it produced, and what your billing system actually shows. The gap between them is the only honest measure of whether your tracking works — and if it comes back small, you do not need us.

Free30 minutesNo obligation

Specific to Snapchat × Subscriptions

Snapchat vs new subscriptions: app-store billing is the blind spot

Join Snapchat conversions to first web payments on ScCid stored at checkout, and send the first charge through Snapchat's Conversions API. Compare against a closed month of web subscriptions only. If most of your subscribers pay through an app store, your billing export cannot see them and Snapchat will always read higher.

Snapchat's audience is young and almost entirely mobile, which for subscriptions usually means an app. When the subscription is bought through the App Store or Google Play, the charge never reaches Stripe or Chargebee, and the export you are reconciling against simply omits it. Check whether your billing system receives app-store subscriptions at all before treating the gap as a tracking fault. For web subscriptions, ScCid captured on landing and stored on the customer is the join key.

Snapchat's windows are configurable and its defaults differ from Meta's, so confirm the setting and whether view-through is included before comparing. A swipe followed by an app install, a trial and a first charge a week later can sit on the edge of a short window. Verify the accepted event-freshness limit against current documentation before sending first payments days after the click.

Compare Snapchat's report for the paid subscription event, not installs or trial starts. A modest gap either way on web-only subscriptions is normal. A large excess almost always means app-store revenue, trial starts or the wrong event is counted. If your subscribers are not in Snapchat's age profile, the channel itself is the question, not the measurement.

Snapchat × Subscriptions · what breaks

Why Snapchat and your billing system disagree

  1. 01

    Every renewal firing as a conversion

    The single most common subscription error. A customer who stays two years produces twenty-four payment events, and counting them all inflates the conversion count by exactly your retention rate.

  2. 02

    Trial starts counted as paid conversions

    A free trial costs the user nothing. Optimising toward trials reliably finds people who start trials and never pay.

  3. 03

    Cancellations inside the first period never reversed

    Early churn on discounted offers is high, and the reversal is almost never wired.

  4. 04

    Lifetime value assumed rather than measured

    An industry figure for tenure will either starve a channel that works or overfund one that does not. Your own churn data says something different.

Snapchat × Subscriptions · the fix

What you get from this — Snapchat × Subscriptions

  • A number instead of a suspicion

  • The likely cause, narrowed

  • A basis for deciding

Snapchat × Subscriptions · architecture

What each side is actually counting — Snapchat × Subscriptions

  1. 1

    What Snapchat counts

    An event name Snapchat recognizes, a shared event identifier if you are also running the pixel, a timestamp, hashed customer information, and the click identifier where you have it.

  2. 2

    How Snapchat attributes it

    Snapchat appends its click identifier to your landing page URL, and matches additionally on hashed email, phone and mobile advertising IDs. The environment is what makes this hard: traffic arrives inside Snapchat's in-app browser, whose storage behavior is inconsistent, so an identifier captured into a cookie rather than persisted server-side frequently is not there when the conversion happens.

  3. 3

    The window it uses

    Snapchat's attribution windows are configurable and its defaults differ from Meta's. Confirm what your account is set to before reconciling anything, and verify the accepted event-freshness limit for server events against current documentation.

  4. 4

    What your billing system counts

    First successful payments on new subscriptions, found in Stripe, Chargebee, Recurly, Paddle or whatever charges the card.

  5. 5

    The filter that makes them comparable

    New subscriptions only — exclude renewals, and exclude trials that have not yet converted.

Snapchat × Subscriptions · events

Reading the gap — Snapchat × Subscriptions

15%+ platform higherUsually the wrong event entirely — the platform is counting renewals, trials, or subscriptions that cancelled before the first real charge.
20%+ platform lowerUsually structural — the platform is missing subscriptions it produced — usually a signup-to-payment gap longer than the attribution window.

Snapchat × Subscriptions · diagnose

Diagnostic order — Snapchat × Subscriptions

  1. 01

    Confirm both numbers cover the same period and channel

  2. 02

    Every renewal firing as a conversion

    The single most common subscription error. A customer who stays two years produces twenty-four payment events, and counting them all inflates the conversion count by exactly your retention rate.

  3. 03

    Trial starts counted as paid conversions

    A free trial costs the user nothing. Optimising toward trials reliably finds people who start trials and never pay.

  4. 04

    Cancellations inside the first period never reversed

    Early churn on discounted offers is high, and the reversal is almost never wired.

  5. 05

    Read the events received and matched in Snapchat Ads Manager, reconciled against your own records

    Snapchat skews young and almost entirely mobile. If your buyer is not in that profile, no measurement work makes the channel viable — and that is a media planning conversation rather than a tracking one, worth having before anyone builds.

Snapchat × Subscriptions · prove

How to know you did it right — Snapchat × Subscriptions

Source of truth

your billing system — new subscriptions for a fully closed month

    Snapchat × Subscriptions · free audit

    What we check in the free audit

    • Confirm both numbers cover the same period and channel
    • Every renewal firing as a conversion
    • Trial starts counted as paid conversions
    • Cancellations inside the first period never reversed
    • Read the events received and matched in Snapchat Ads Manager, reconciled against your own records

    Checked against

    your billing system — new subscriptions for a fully closed month

    Get my free conversion tracking audit

    Free30 minutesNo obligation

    Snapchat × Subscriptions · when not to buy

    When the answer is that you do not need us — Snapchat × Subscriptions

    • If almost all of your new subscriptions come from a channel with no click behind it, no tracking work will reach them — and knowing that is worth more than a build.
    • If your customers are not in Snapchat's age profile, the channel is the wrong question. We would rather say that than build measurement for a campaign that cannot work.

    Snapchat × Subscriptions · what we deliver

    The method, step by step — Snapchat × Subscriptions

    • Pull what Snapchat reports

    • Pull what your billing system shows

      Export subscriptions by creation date for a closed month, filtered to those that took a first successful payment, and record the plan value.

    • Filter both to the same thing

      New subscriptions only — exclude renewals, and exclude trials that have not yet converted.

    • Compare per record, not on totals

    FAQ

    Snapchat × Subscriptions questions, answered

    Not from a web billing export. You would need the app's own subscription data, and check what your mobile measurement setup actually reports back to Snapchat.

    Free · 30 min

    Found a gap between Snapchat and your billing system?

    Free30 minutesNo obligation