
How to Measure Crypto Conference ROI

Key takeaways
Follow each booth visit through to a wallet connect and a deposit. Badge scans and booth traffic are not outcomes. Wallet connects, transactions such as deposits, and retained wallets are.
Plan the measurement before the event: one tagged link and one QR code per booth, talk, side event, and speaker slide.
Report two numbers: cost per wallet (spend divided by new wallets) and cost per retained wallet (spend divided by wallets still active 30 days later).
Formo has no conversion lookback window. Compare conference results by date range and by first touch, not by a fixed window.
Side events can produce fewer wallets than the main stage but better ones. Compare quality, not only volume.
To measure crypto conference ROI, follow each person from booth visit to wallet connect to deposit. Give every booth, talk, and side event its own tagged link and QR code. Then count the wallets that arrive through those links and what they do onchain, such as deposits. Divide the full event cost by new wallets and by wallets that are still active weeks later. That gives you cost per wallet and cost per retained wallet, which you can compare with every other channel.
Why is crypto conference ROI so hard to measure?
Conference ROI is hard to measure because most of the value happens off your website. People meet your team, scan a badge, take a photo of a slide, and come back days later from a different device. Without tagged links, those visits look like direct traffic, and the event gets no credit for wallets it created.
Crypto adds three more problems. The conversion is onchain, so a visit is not the goal. The journey crosses devices: a phone scan, then a laptop connect. And big events such as Token2049, ETHDenver, Devcon, Permissionless, and Breakpoint come with a week of side events, so one trip has many costs and touchpoints.
What should you measure at a crypto conference?
Measure a short chain of outcomes, from first contact to retained onchain user, and use the same chain for every event so you can compare them. Leads tell you about reach. Wallets tell you about intent. Retained wallets tell you whether the event paid for itself.
Metric | Definition | Where the data comes from |
|---|---|---|
Leads | Contacts collected at the booth or side event | Lead forms, badge scans, CRM |
Visitors from event links | Unique visitors who landed through an event link or QR code | Web analytics with UTM parameters |
Wallet connects | Visitors who connected a wallet | Wallet-aware analytics SDK |
Onchain conversions | Wallets that completed your key action (deposit, swap, mint) | SDK transaction events or contract events |
Cost per wallet | Total event cost divided by new wallets from event links | Your budget plus analytics |
Cost per retained wallet | Total event cost divided by wallets still active after 30 days | Retention cohort |
Value per wallet | Volume or revenue from event wallets | Revenue and volume events |
Use full cost. Include tickets, booth fees, sponsorship, travel, hotels, swag, side event venues, and staff time.
How do you set up tracking before the event?
Set up tracking two weeks before you fly. Create one link per touchpoint with UTM parameters, turn each link into a QR code, and build a short landing page for each audience. Test every QR code on a phone before you print it.
List every touchpoint. Talks, panels, the booth, each side event, swag, speaker slides, and team posts.
Pick one naming scheme. Use lowercase and underscores. Use
utm_sourcefor the event name,utm_campaignfor the event and year, andutm_contentfor the touchpoint. Formo's attribution guide also recommends lowercase, underscores, and a date in campaign names.Build the links. For example:
https://yourapp.xyz/?utm_source=token2049&utm_medium=event&utm_campaign=token2049_2026&utm_content=booth. You can use the free UTM link generator.Add a referral code for people. Give each BD lead or speaker a
refvalue, such as?ref=alice_token2049. Formo capturesrefand other common referral parameters automatically, alongside UTMs.Make one QR code per link. Do not reuse a QR code across the booth and the side event. If they share a code, you cannot split the results later.
Build event landing pages. One clear action per page: connect a wallet, claim, or try the product.
Install wallet-aware tracking. Your app must record page views, wallet connects, and transactions with the UTM context attached. The Formo web SDK captures page views and wallet events with referrer, UTM, and referral data automatically.
Write down the baseline. Record your normal daily wallets for the two weeks before the event so you can see the lift later.
How do you track QR codes, booths, and talks during the event?
During the event, your job is discipline. Every person on your team shares the tagged link for their touchpoint, not the homepage. Check that event traffic arrives each day, fix broken codes fast, and link each lead to a wallet whenever you can.
Put the QR code where people stand still. The last slide of a talk, the booth table, a badge sticker.
Check traffic daily. Open your channel and UTM reports each evening. In Formo, the Overview page has Channels, Referrers, Referrals, Ads, and UTM tabs.
Watch the mobile path. Most scans happen on phones, so test the page in mobile browsers and wallets.
Lead capture with forms
Badge scans give you a name, not a wallet. A short form fixes that. Formo has a form builder with Email, Connect Wallet (EVM and Solana), Connect X, and Connect Telegram fields, so a booth visitor can leave an email and a verified wallet in one step. Form webhooks can send each response to Zapier, Make, n8n, or Slack, so new leads reach your CRM or your BD channel while the event is still running.
Formo does not add form responses to wallet profiles automatically. After the event, import the lead wallets into Formo with profile properties, so they get onchain data and you can find them later. You can also add a custom label to each lead wallet, such as token2049_lead, and filter users by that label.
POAPs and claim flows
Many teams use a POAP (Proof of Attendance Protocol badge) or a custom claim (a free mint, a testnet badge, a points boost) to get a wallet connect on the spot. A claim wallet is not yet a user. Measure what it does next, not only the claim count. Formo has no POAP integration, so send people to a claim page on your own site where the SDK runs. If the claim runs through your own contract on a supported EVM chain, you can add that contract in Formo and use its events as funnel steps.
How do you attribute wallets after the event?
After the event, count wallets that arrived through event links, then follow them for at least 30 days. Formo has no fixed conversion lookback window, so you answer two separate questions: which wallets were first acquired by the event, and what all wallets did during and after the event dates.
Why there is no lookback window
Many ad tools credit a conversion only within a fixed window after a click. Formo does not. A wallet's first-touch and last-touch fields use the wallet's full history, and funnel breakdowns use each user's first or last real value inside the date range you select. This is good for conferences, because event leads often convert weeks later. It also means you must choose the right view:
Question | View to use | What it tells you |
|---|---|---|
Which new wallets did the event bring? | Filter users by first-touch UTM source or campaign | Wallets whose first known touch was an event link |
Did the event reactivate existing users? | Filter by last-touch UTM, or compare with first touch | Known wallets that came back through an event link |
What happened during event week? | Date range set to event week plus the week after | Visitors, wallets, and transactions from event links in that period |
Did event wallets stay? | Retention filtered by UTM parameters | Weekly activity of the event cohort |
Which touchpoint converted best? | Funnel broken down by | Connect and transaction rates per booth, talk, or side event |
A wallet that used your app before the event keeps its earlier first touch. So first-touch reports show only truly new wallets, and last-touch reports show the returning ones. Report both, and do not add them together.
Build an event funnel
Create a funnel with the steps Visit, Connect, and Transaction. Break it down by UTM content or referral. The default funnel conversion window is 2 hours. That suits a person who scans and connects at the booth. For people who come back later, set a longer window in days or weeks.
Know the edge cases
Contract events and sessions. An onchain event inherits the UTM and referrer of the same wallet's SDK session from the last hour. If there was no SDK session in that hour, Formo attributes the event to Direct. Wallet first touch still carries the event campaign if the wallet connected during a session that started from an event link, because wallet first touch reads every event that carries that wallet's address.
Cross-device journeys. Formo links wallets by a shared device cookie (the anonymous ID) or the same user ID set with identify. A phone scan followed by a laptop connect with no shared identifier shows up as two journeys. Ask people to connect on the device they scanned with, or use a claim flow on the phone.
Bots. Formo labels known crawlers and automated clients with the device type Bots, but does not remove them from Visitors. Add a Device filter that excludes Bots before you report visitor numbers.
How do you calculate cost per wallet and cost per retained wallet?
Cost per wallet is total event cost divided by new wallets that arrived through event links. Cost per retained wallet is total event cost divided by those wallets that are still active after a set period, such as 30 days. The second number is the honest one, because it removes claim hunters and one-time visitors.
Add up the full event cost, including travel and staff time.
Count new wallets with a first-touch event UTM or event referral code.
Divide cost by new wallets. This is your cost per wallet.
Open retention for the same cohort. In Formo, you can narrow a retention cohort by UTM parameters, referral, or referrer. The retention grid uses calendar weeks, so week 4 is the closest column to 30 days.
Count the wallets still active after 30 days. Divide cost by that number. This is your cost per retained wallet.
Add value. Sum volume or revenue from the event wallets and compare it with cost. Formo reads volume and revenue from the values you send in your events, so send them in USD.
Here is a worked example with made-up numbers. Use it as a template, not a benchmark.
Line item | Main stage plus booth | Hosted side event |
|---|---|---|
Total cost | $60,000 | $15,000 |
New wallets from event links | 400 | 90 |
Cost per wallet | $150 | $167 |
Wallets active after 30 days | 60 | 30 |
Cost per retained wallet | $1,000 | $500 |
In this example, the side event looks worse on cost per wallet and twice as good on cost per retained wallet. For more on unit economics, see our guide to measuring CAC and LTV onchain.
Are side events worth more than the main stage?
Main stage talks and booths give reach. Side events give depth. A talk can put your link in front of thousands of people, but many scans come from curious visitors. A dinner or workshop for 60 builders gives fewer wallets, but those wallets can belong to people who use similar apps and stay longer. Check this with your own retention data.
Compare them on the same terms:
Volume: new wallets per touchpoint.
Quality: wallet net worth, wallet age, and apps used. Formo profiles show these for each wallet.
Retention: share of wallets still active after 30 and 90 days.
Value: volume or revenue per retained wallet.
Run this comparison for every event, and cut the touchpoints that produce leads but no retained wallets.
Frequently asked questions
What is a good ROI for a crypto conference?
There is no standard number. Compare your cost per retained wallet from the event with the same metric for your other channels, such as paid ads, KOL (key opinion leader) campaigns, and referrals. If the event is cheaper per retained wallet, or brings wallets with more value, it earned its place.
How do I track QR codes at a crypto event?
Create one link per touchpoint with UTM parameters, such as utm_content=booth or utm_content=main_stage, and turn each link into its own QR code. Wallet-aware analytics then attributes visits, wallet connects, and transactions to that code.
How long after a conference should I keep measuring?
Measure for at least 30 days, and check again at 90 days. Many people return days or weeks after an event. Formo uses a wallet's full history for first touch, so wallets that arrived through an event link keep that credit when they convert later.
Should I count badge scans as conversions?
No. A badge scan is a lead, not a user. Track it in your CRM. Count a conversion only when the person connects a wallet or completes your key onchain action.
Can Formo track POAP claims?
Not directly. Formo has no POAP integration, but you can still measure the journey. Track visits and wallet connects from your claim page with tagged links. If you run the claim through your own contract on a supported EVM chain, add it as a contract and use its events in funnels.
Related articles
Glossary: UTM parameters, first-touch attribution, attribution lookback window, conversion window, wallet connects, customer acquisition cost, return on investment.


