BBrainyMetrics

Payments & stores

Stripe revenue attribution, payment by payment

Every Stripe payment, renewal and refund tied to the ad, email or call that produced it, in real time and backfilled from the API.

  • Flat monthly price, no revenue tax
  • No annual contract
  • Tracking starts the minute the snippet is live

Stripe knows exactly how much each customer paid. It doesn't know which ad brought them. BrainyMetrics joins the two: payments, subscription renewals (marked recurring), refunds, customer emails and phones, and Stripe customer ids are imported and matched to the person's journey.

Connect the webhook for real-time sales, a restricted read-only API key for complete data, or ideally both. With a key, Stripe is re-checked every 15 minutes for new charges and refunds, catching anything a webhook missed, and you can backfill up to 730 days. Webhook and API copies of a payment share an order id, so they merge into one order instead of double counting.

The problem

What you miss while Stripe isn't connected

Stripe knows exactly who paid and how much, but nothing about the ad, email or call that brought them there. Payment links, hosted checkouts and renewals all happen away from your site, so the connection to marketing is lost.

Renewals and refunds make it worse. Without them, a campaign that brings loyal subscribers looks the same as one that brings refund requests.

Attribute every Stripe payment to the ad that earned it

Create your account, install one snippet and see it on your own leads and sales.

  • Flat monthly price, no revenue tax
  • No annual contract
  • Tracking starts the minute the snippet is live
Create your account

What you get with Stripe

Exact match for Payment Links

tracko.js adds client_reference_id to Stripe Payment Links so each payment maps to the exact visitor.

Subscriptions and renewals

Invoices for renewals are marked recurring and grouped for MRR.

Refunds applied

charge.refunded keeps every report net of refunds.

Every API version

Works with current Stripe API versions without double counting subscription payments.

Connect Stripe and see it on your own data.

Start using Stripe

How it works

  1. 1

    Create a restricted key

    Read access to Charges, Refunds, Invoices, PaymentIntents and Checkout Sessions.

  2. 2

    Add the integration

    Paste the key; it's tested when you save. Copy the webhook URL.

  3. 3

    Add the webhook

    checkout.session.completed, payment_intent.succeeded, invoice.paid and charge.refunded.

  4. 4

    Paste the signing secret

    Requests are verified from then on.

Use cases

Stripe in practice

Subscription businesses

Credit renewals back to the campaign that won the subscriber and watch MRR by channel.

High-ticket offers

Match invoices and payment plans to the lead who booked the call weeks earlier.

Net revenue

Refunds come off automatically, so ROAS reflects money you kept.

Start using Stripe
  • Flat monthly price, no revenue tax
  • No annual contract
  • Tracking starts the minute the snippet is live

Why BrainyMetrics

Your tools already have the data. BrainyMetrics connects it.

Checkout, calendar, phone and ad platforms stop being separate islands once they share one journey per customer.

Meta, Google and TikTok each claim the same sale, so platform totals add up to more than your bank account.
Each sale is counted once, from your own checkout data, and reconciled against what each platform claims.
Analytics gives the last click all the credit, so the ads that start journeys look like they lose money.
Seven attribution models are computed for every conversion, so you can compare first click, last click and everything between.
Phone calls and booked calls are a black box. You know they happened, not which ad caused them.
Calls and bookings are matched to the visitor's session and the ad behind it, then tracked through qualified and closed.
Ad blockers, Safari and cross-domain checkouts quietly break your data.
A first-party tracking subdomain, server-set cookies and cross-domain linking keep journeys intact.
Spend lives in one tab, revenue in another, and ROAS is a spreadsheet you rebuild every Monday.
Spend syncs hourly and sits next to attributed revenue, so ROAS, CPA and profit are on every row, down to the ad.
Ad algorithms optimise on the few conversions their pixel happens to see.
Real purchases and leads are sent back to the ad platforms' conversion APIs, deduplicated against the pixel.

Stop guessing which marketing pays.

Start using Stripe

Getting started

Connected and attributing in four steps

No migration project and no agency retainer. Here is the whole path from sign-up to your first attributed sale.

  1. 1

    Create your account

    Sign up, name your workspace and pick the plan that fits. Your tracking snippet is waiting under Settings → Install.

  2. 2

    Install tracko.js

    Paste one snippet into your site's head, or add it with Google Tag Manager, WordPress or your funnel builder's tracking code box.

  3. 3

    Connect revenue and ads

    Connect Stripe, Shopify, your funnel builder or calendar, then Meta, Google or TikTok for hourly spend. Most connections take a click.

  4. 4

    Watch the first sale land

    The setup checklist ticks itself off as data arrives. Your next lead or sale shows up with its full journey and the ad that earned it.

Create your account
  • Flat monthly price, no revenue tax
  • No annual contract
  • Tracking starts the minute the snippet is live

Frequently asked questions

Common questions about Stripe, setup and pricing.

The fastest answer is your own data

Create an account, install the snippet and see how BrainyMetrics handles your real traffic.

Get started
How do I match custom Stripe checkouts to visitors?

Set metadata.tracko_vid on the PaymentIntent to the visitor id. Otherwise payments are matched by email.

My funnel tool also charges through Stripe. Will sales double?

If ClickFunnels, systeme.io or GoHighLevel charge through your Stripe account, connect only one of them for those sales, or the revenue is counted twice.

Is the connection secure?

Secrets are encrypted at rest, and requests are signature-verified wherever the provider signs them. Editing credentials never changes your webhook URL.

How long does setup take?

The basics take minutes: paste the snippet, connect your checkout or funnel builder, and connect your ad accounts. The setup checklist in your dashboard ticks each step off as data arrives, so you always know what's left.

Do I need a developer?

Usually not. The snippet can go in through Google Tag Manager, WordPress or your funnel builder's tracking code settings, and most revenue sources connect with a click or a webhook URL you paste. The developer guide covers the JavaScript and server API if you do have a developer.

Does the price go up as I grow?

No. Plans are a flat monthly or yearly price. We never bill a percentage of revenue or ad spend, and you can switch, pause or cancel from the Billing page without a call.

Does tracking stop if I hit a plan limit?

No. Plans limit dashboard modules and things like integrations or workspaces; tracko.js, webhooks and syncs keep collecting data, so nothing is lost if you upgrade later.

Is it privacy friendly?

Yes. BrainyMetrics supports consent modes, works with your consent banner, respects Global Privacy Control and handles sensitive form fields strictly. Data is first-party: it belongs to your workspace, not an ad network.

Keep exploring

Attribute every Stripe payment to the ad that earned it

Install one snippet, connect your checkout and ad accounts, and get attribution you can act on today. Flat pricing, no annual contract.