Start by aligning on definitions
Before troubleshooting, confirm which definition you’re using in each tool:- New subscriptions: created date vs first successful charge vs first fulfilled order
- Cancelled subscriptions: cancelled timestamp vs churn proxy (no recurring orders in X days)
- Subscription order revenue: gross vs net revenue, and how refunds are handled
- Subscription scope: order-level subscription rollup vs line-level subscription behavior inside mixed carts
Common causes of mismatches
1) Different time fields
ReCharge often reports on subscription lifecycle timestamps, while SourceMedium reporting typically uses order-based timestamps (for example, processed or created time) for revenue and order metrics.2) Refund and cancellation handling
If an order is refunded or cancelled, different tools may:- Exclude it entirely
- Include it in gross but not net
- Attribute it to the original purchase date vs the refund date
3) Attribution differences (UTM + checkout)
Subscription checkouts can reduce UTM coverage depending on your storefront or checkout setup. If you’re validatingsource / medium or channel attribution, start with:
4) Line-level vs subscription-lifecycle classification
ReCharge is often closest to the subscription lifecycle itself. SourceMedium is often closest to what happened on the order and order lines that actually processed. That difference matters when:- an order contains both subscription and one-time lines
- a Shopify line has explicit one-time metadata that overrides weaker subscription-like signals
- line-level metadata is stronger than legacy order-tag heuristics
- a placeholder value or free-gift marker is present in Shopify metadata
obt_order_lines rather than only obt_orders.
5) Multi-store or multi-channel scoping
Confirm you’re comparing the same store(s), channel(s), and date range in both tools.What to do next
If you’re still seeing unexplained differences, share the following with your SourceMedium team:- The ReCharge report you’re using (name + filters + date field)
- The SourceMedium module or table you’re comparing against
- A handful of example subscription IDs or order IDs that illustrate the mismatch
- If the issue is line-specific, include both
order_line_idandsm_order_line_keyfor the fastest debugging path

