The only structured dataset
on who is actually trading.
Every company serving this market is optimising for a user they have never spoken to. They have wallet addresses, volumes and retention curves, and no idea whether that wallet belongs to a 22 year old on a phone in Manila or a fund desk in London. This fills that gap and keeps filling it, in public.
It is checked against the chain
Every consumer survey ever sold has the same fatal weakness. It is self reported and there is no way to check. A panel company can tell you a respondent said they trade $10k a day. Nobody can tell you whether that was true.
Here every respondent proved control of a wallet by signature. So stated activity can be sanity checked against that wallet's own on-chain record, and every answer can be checked against the others. Each response carries a calibration score, and you can filter on it.
It is not a lie detector and it is never sold as one. A low calibration score has innocent explanations that are extremely common: people trade from several wallets, people rotate wallets for security, and the readable signature history is capped.
So calibration never voids a response. It is a confidence signal you can filter on, which is worth considerably more than a binary judgement that would sometimes be wrong.
How it is collected, and where it is weak
- Self administered web survey. 39 core questions everyone answers, plus one of 4 supplements assigned deterministically from the wallet hash. About 51 questions per respondent, 87 in the bank.
- Respondents prove control of a Solana wallet by signature. No token holding is required, so the sample is not restricted to this project's holders.
- Wallets must have real trading history, a minimum signature count and a minimum age. A survey about trading only counts people who have traded.
- One response per wallet, enforced by a unique index on a one way hash. No wallet counts twice.
- Cloudflare Turnstile human check, plus embedded attention checks.
- Responses faster than a human can read the questions are voided, not paid, and excluded.
- Straight line answering is detected and voided.
- Every respondent is compensated in SOL from token creator fees.
- Self reported. Losses and PnL are what people say. Calibration catches gross contradictions, not careful ones.
- Self selected. Respondents chose to fill in a paid survey they saw advertised. That skews toward people who are online, engaged, and want the reward. It does NOT skew toward holders of this token, because holding is not required to take part.
- History gated. The wallet activity requirement excludes genuine traders who use fresh burner wallets. That is a deliberate trade against farming and it does bias the sample.
- Incentivised. A paid survey attracts people who want the payment. The quality filters exist for this and the void rate is published.
- English only, web only. Under indexes on low English literacy regions and on app-only users.
- Not a probability sample. No weighting to a known population, because no known population exists. That is the problem this is trying to solve.
Every limitation above ships with the data, in writing, in the report. A dataset sold without its weaknesses is a marketing asset, not a dataset.
What a row looks like
| Field | Type | Notes |
|---|---|---|
| response_id | uuid | Random. Not derived from anything. |
| filed_week | date | Week bucket only. Never an exact timestamp. |
| module_key | enum | Which supplement this respondent was assigned, M1 / M2 / M3 / M4. |
| a* | int / int[] | HEAD OF HOUSEHOLD. Option index into the published codebook. |
| b* | int / int[] | DECLARED POSITION. Option index into the published codebook. |
| c* | int / int[] | HOURS OF OPERATION. Option index into the published codebook. |
| d* | int / int[] | STATE OF THE TERRITORY. Option index into the published codebook. |
| m*_* | int / int[] | Supplement answers. Null for respondents who got a different supplement. |
| quality_score | int 0-100 | Higher is better. Below 35 is excluded entirely. |
| calibration_score | int 0-100 | Agreement with the wallet's own history and with other answers. |
| calibration_checkable | bool | False when chain history was capped or unreadable. |
| completion_seconds | int | Banded above 900. |
- ✕Wallet address, or any hash of one
- ✕IP address, or any hash of one
- ✕Device fingerprint
- ✕Exact submission timestamp
- ✕Raw free text
Three tiers
Public
Free, forever
Anyone
- ›Flat aggregate percentages for every question
- ›Live JSON endpoint, no key, no signup
- ›Charts on the results page
- ›Attribution requested, not required
Cross tab
Most asked forQuoted per report
Terminals, launchpads, exchanges, funds
- ›Any question cut by any other question
- ›Segment filters: portfolio size, tenure, region, main terminal
- ›Filter to high on-chain calibration respondents only
- ›Delivered as a written report plus the underlying tables
Row level
Quoted per licence
Research, product and data teams
- ›One anonymised row per response, no wallet, no hash, no exact timestamp
- ›Quality score, calibration score and completion time included
- ›Small cells suppressed, rare combinations coarsened
- ›Licence forbids re-identification attempts and resale
Who this is for
Trading terminals
Which competitor your users also keep open, why they picked you, and the one feature that would move them.
Launchpads
What holders check before buying, what they think killed their PnL, and what would make them switch.
Exchanges and brokers
Age, volume, leverage appetite and funding source for onchain-native retail, before you build the funnel.
Wallets and security
The casualties supplement is the only structured data anywhere on how people actually get drained.
Analytics and data tools
Current tool spend and willingness to pay, which is direct pricing research.
Media and researchers
Citable numbers with a published methodology. The free tier covers most stories.
Request access
Tell us the question you are actually trying to answer, not the fields you want. Most requests turn out to be one cross tab and a paragraph.