Reconciliation & Match Rate
This is the promise that makes Signal Sparrow different: our numbers always add up to your real Stripe revenue — down to the cent. No inflated figures, no black box.
What "reconciled" means
For any period, your revenue splits into just two buckets:
Attributed (traced to a source) + Direct/Unknown (couldn't be traced) = your net Stripe MRR
Because the two buckets always sum to what's actually in Stripe, you can trust the totals. If they ever drifted apart, that would be a data problem — and Signal Sparrow flags it rather than hiding it.
A worked example
| Bucket | Amount |
|---|---|
| Attributed to campaigns | $42,180 |
| Direct / Unknown | $6,920 |
| Total (matches Stripe) | $49,100 |
What match rate is
Match rate is the share of your revenue that Signal Sparrow could trace back to a marketing source:
Match rate = Attributed ÷ Total
In the example above, that's $42,180 ÷ $49,100 = about 86%. It's shown right on your dashboard so you always know how complete the picture is. (For a plain-English recap, see Key Concepts.)
Why some revenue is "Direct/Unknown"
A sale lands in Direct/Unknown when there was no trail to follow. Common reasons:
- The customer was never identified (no email link between visit and payment).
- They arrived through a channel with no click ID or UTM — e.g. typed your URL, or an untagged link.
- Their browser blocked all tracking.
- The purchase happened offline or through a route the SDK never saw.
A little Direct/Unknown is completely normal. A lot of it usually means there's an easy win available.
How to raise your match rate
1. Identify users at signup and login → the biggest lever
2. Set up a first-party tracking domain → fewer visits lost to blockers
3. Add UTM tags to your own links → labels email, social, partnerships
Match rate climbs naturally as more identified visitors turn into paying customers. Day one will look low — that's expected.