Cometly
Solutions / Stripe Revenue Attribution

Connect every ad
to real Stripe revenue.

See exactly which ads drive MRR, ARR, and trial-to-paid conversions. The native Stripe integration sets up in two minutes, with no webhooks, no engineers, no spreadsheets.

MRR + ARR by plan

Att. Model: First TouchSource: Stripe
PlanCustomersNet MRRARR · Δ
Growth · monthly
1,842$184.2K$2.21M+24%
Scale · annual
612$96.8K$1.16M+18%
Pro · monthly
2,419$72.4K$869K+11%
Starter · monthly
4,108$41.0K$492K−3%
What you actually get

Stripe-native.
Set up in two minutes.

Connects to Stripe in one click

Log in to Stripe once. Cometly automatically tracks every signup, trial, new customer, recurring payment, refund, and churn event, with no setup required.

MRR and ARR, broken out by ad

Every campaign and every ad gets a line for new MRR, churn, net revenue, and LTV at 30, 60, and 90 days. You see exactly which ads grow the business.

Find the trials that actually pay

Group every trial back to the source that brought it in. See which channels send real buyers, and which keep sending you tire-kickers.

Real ROAS, even on long cycles

Watch September ad spend turn into January revenue. PLG teams with multi-month payback finally see real ROAS instead of month-1 guesses.

Tell Meta and Google about paying customers

Send paid-customer events (not just signups) to Meta, Google, LinkedIn, TikTok, Microsoft, and Reddit. Meta rates Cometly's enriched events as “Great”, so the algorithms optimize for buyers, not browsers.

Zero engineering required

Setup takes hours, not weeks. Most SaaS teams are live the same day they sign up. Your dev team never has to touch it.

Stripe triggers

Every Stripe event,
every filter.

Pull from every payment trigger Stripe fires, then refine with filters so only the events that matter ever hit your attribution.

Triggers · Filters

8 Stripe triggers, all server-side.

New Payment, New Subscription, Updated Subscription, New Trial, First Payment, Canceled Subscription, New Customer, refunds, invoices, and more. Each trigger lands in Cometly in real time and can be narrowed down with filters before it ever counts as a conversion.

  • 8 built-in Stripe triggers
    Payments, subscriptions, trials, refunds, and customer lifecycle events, all natively wired.
  • Filter by amount, plan, currency, or metadata
    Only attribute the events that count: paid customers, specific plans, hitting a revenue floor, matching a UTM in metadata.
  • Real-time, server-side ingestion
    No webhook config, no missed events. Cometly maintains the Stripe connection so your team doesn't.
  • Dedup automatically across triggers
    A New Subscription and First Payment for the same customer count as one conversion, not two.
Stripe · Trigger8 triggers
Choose trigger
  • First PaymentTriggers on a customer's first successful payment greater than $0.00Recommended
  • New PaymentTriggers when any successful payment is greater than $0.00Available
  • New SubscriptionTriggers when a customer has signed up for a new planAvailable
  • Updated SubscriptionTriggers when a customer subscription has changedAvailable
  • New TrialTriggers when a customer initiates a trial periodAvailable
  • Canceled SubscriptionTriggers when a subscription is canceledAvailable
Filters · refine the events that count
amount > $0currency = USDplan = growth_annualmetadata.utm_source+ Add filter
First Payment trigger

The moment a customer first pays you.

Use case · First paying customer (PLG & sales-led)How it's used: fire the moment a customer pays you for the first time. Works for self-serve SaaS (trial → first paid invoice) and sales-led motions alike. When a closed-won deal lands its first Stripe charge, that's the same signal.How it works: when the trigger fires, Cometly automatically looks up every payment associated with that Stripe Customer ID, confirms it's the customer's first successful payment greater than $0.00, and accurately attributes that revenue back to the original marketing source.

  • Automatic Customer ID history lookup
    No guesswork, no SQL. Cometly queries the customer's full payment history the moment the trigger fires.
  • Works for PLG trials and sales-led closed-won
    Same trigger for self-serve trial conversions and for sales-assisted deals once Stripe invoices them.
  • Filters out $0 and trial charges
    Only the customer's first real paid transaction qualifies, so trial starts and $0 invoices never inflate revenue.
  • Pushed back to Meta, Google, LinkedIn
    The buyer signal lands in your ad platforms enriched for top match-quality tier, so algorithms optimize for real customers.
First Payment · triggerAuto-lookup
Stripe customerMatched
cus_Pa4Q9k2sLm
Atlas Inc.
maya@atlas.co · Growth · annual
  • Original sourceMeta · video v3
  • First clickFeb 12
  • Time to paid34 days
Payment history · auto-scanned5 charges
  • ch_3PqA2ktrial startMar 04$0.00
  • ch_3Pq7Lm$0 invoiceMar 06$0.00
  • ch_3PqHs9first paidMar 18$249.00
  • ch_3PqLp1recurringApr 18$249.00
  • ch_3PqQz4recurringMay 18$249.00
First paid charge · attributed to Meta · video v3
FAQ

Stripe-native revenue attribution: FAQs before you flip the switch.

Identity stitching across devices, trials vs paid signals, refunds, and long cohort windows. Book a demo with your billing model in mind.

Talk to sales
How does Cometly know a Stripe charge came from an ad?
The Comet Pixel drops a first-party identifier when someone lands on your site. When that same person pays through Stripe, even months later and even on a different device, Cometly matches the payment back to the original ad click.
Does this work for $1 trials, free trials, and freemium?
Yes. Cometly separates $1 trial starts, full subscription starts, and recurring payments. You can optimize Meta or Google on whichever signal matters most to you, usually “new paid customer,” not “trial start.”
Can I see year-1 LTV ROAS?
Yes. Cometly stores 3+ years of data and supports cohort dashboards out to year-3 LTV. Compare cohorts side by side to see which months of ad spend produced the most durable revenue.
What happens with refunds and chargebacks?
Refunds, partial refunds, and chargebacks flow in from Stripe automatically and reduce attributed revenue. You see net revenue, not inflated gross numbers.
Do I still need GA4 or Mixpanel?
They answer different questions. GA4 and Mixpanel tell you what people do inside your product. Cometly tells you which ad brought them in and what they paid. Most SaaS teams run all three.

Stop guessing on ROAS.
Connect Stripe and see.

Every ad mapped to real MRR, ARR, and trial-to-paid revenue, so ROAS reconciles to Stripe, not to platform estimates, and you stop scaling on conversions that never become customers.