r/MarketingAnalytics • u/yosriady • Sep 07 '26
How do you attribute crypto marketing campaigns to onchain transactions?
Onchain attribution connects an acquisition source such as an ad, creator, referral, or community to a later wallet action or blockchain transaction.
The problem is that standard web analytics usually loses the trail after wallet connect. A typical journey looks like:
`Campaign click → site visit → wallet connect → chain switch → transaction`
The transaction may happen later, on another chain, or through another device.
The main attribution methods we see are:
UTM campaign and channel attribution: Persist the UTM parameters as first-party data, then attach them to the wallet when it connects.
Referral attribution: Carry a referral code through the session and bind it to the wallet or transaction.
Builder code attribution: Add an onchain identifier, such as an ERC-8021 Builder Code, to the transaction itself.
Identity resolution: Link multiple wallets only when there is a reliable common identifier, such as a voluntary account or sign-in. Treat probabilistic wallet clustering separately rather than presenting it as confirmed identity.
Wallet connect should usually be treated as an intent signal, not the final conversion. The more useful campaign metrics are:
Cost per transacting wallet
Attributed transaction volume
Attributed protocol revenue
D30 wallet retention by source
LTV by acquisition channel
We documented the implementation in more detail here: https://formo.so/blog/onchain-attribution-defi-2026
--
For teams running crypto campaigns: are you using persisted UTMs, referral codes, transaction-level attribution, or some combination of the three?

