DENSHINBLOG

Quality On-Chain Activity: How to Check It, and Where KYC Fits

Fake volume and farmed wallets make on-chain numbers lie. How we think real activity should be checked, what KYC solves and what it doesn't.

The DENSHIN city map at night: neon city blocks, named streets and player markers moving between the quarters.

Every network wants the same chart: more wallets, more transactions, more volume, all going up and to the right. The chart itself is easy to make. A few scripts and one funded wallet can draw it in a weekend. The hard part is the thing the chart is supposed to show: people who came, tried something and came back.

This post is about that gap. Why the quality of on-chain activity matters for the whole industry, how we think it should be checked, and where identity checks like KYC actually help.

Why fake activity hurts everyone#

On-chain numbers are public, and a lot of decisions rest on them. Builders pick a network by its users. Grant programs back teams by their traction. Liquidity follows volume. When a big share of that activity is wallets paying themselves to look busy, all of those decisions get made on bad data.

The cost lands on real people:

  • Rewards leak to farms. A campaign budget meant for a thousand new users ends up with one operator and five hundred wallets.
  • Real users start to look like noise. Once a program gets farmed, the next one gets stricter, and the newcomer with one wallet and a small balance is the first to be filtered out.
  • Teams learn the wrong lesson. A dashboard full of bots says the product works. It doesn't say anyone would use it without a reward.

Cheap fees made this both better and worse. On networks like Base, Soneium and Sonic a transaction costs a fraction of a cent, so trying a DEX or a lending market is finally cheap for a normal person. It's cheap for a script too. With fees this low, the price of an action doesn't filter anything on its own anymore, and the check has to do that job instead.

What a quality action looks like#

A quality on-chain action has three properties, and each of them can be checked.

  • It's new. It happened after the person was asked to do it, not somewhere in last year's history.
  • It's unique. One transaction proves one thing, once. Not two tasks, not two accounts.
  • It cost something real. Gas was paid, funds actually moved, a position was actually opened.

Holding a balance is weaker than doing something. A balance proves that funds exist. It doesn't prove whose they are, and the same funds can sit under many wallets one after another. An action leaves a trace that can't be passed around like that.

How we check it in DENSHIN#

We built our checks around those three properties:

  • Start first, then act. Every action check is bounded by the block where you started the quest. A swap from before that block doesn't count.
  • One transaction, one reward, ever. An accepted transaction hash is recorded once, globally. It can't close a second task or count for a second account, including another account you own.
  • The chain is the witness. The hash comes from our own read of the chain, never from the browser. No screenshots, no "paste your tx here".
  • The filter sits on the payout. Anyone can play and show up on the board. To receive a season reward you need at least one verified on-chain transaction inside the season window. It's a single rule, and it's the one that costs money to fake.
  • Cheap sources have caps. A Daily Check is worth at most 30 points a day, referral income stops at 25% of what you earned yourself, and team quest seats are checked against the referral tree.

None of this depends on a vendor's "humanity score". The rule is computed from our own records, so it's the same for everyone, and it can't break on payout day because someone else's API is down. The full list is public in Fair play.

A history says more than one action#

One action says little on its own. A history says a lot. A wallet that has been swapping for months, holds a real balance and is years old looks nothing like one created last Tuesday. Neither does an X account with years behind it, or someone who has been in our Discord for four months.

That's the idea behind our reputation score. It adds up on-chain history, X, Discord and Telegram, each with its own cap (30, 30, 20 and 10), and pays up to +90% on every quest. It doesn't gate anyone, and a brand new player can still play everything. It just makes a real history worth more than a fresh one, which is the opposite of how farming works.

Where KYC fits, and where it doesn't#

So why not ask everyone for a passport and be done with it? We hear this a lot. Our honest answer is that KYC solves a different problem.

What KYC does well:

  • It ties one person to one account, at least on paper.
  • It's the right tool where the law asks for it: large payouts, regulated products, fiat on-ramps.

What it doesn't do:

  • It doesn't prove the action was real. A verified person can still trade with themselves to pump volume.
  • It builds a pile of personal data that someone has to guard forever. Leaks happen in this industry, and passport scans are the worst thing to lose.
  • It shuts people out. Plenty of people have no document a verification provider accepts, or live where the service doesn't work. Web3 was supposed to be the place where that didn't matter.
  • It's slow, and every check costs money. That kills the "try it in five minutes" moment that makes a first quest work.
  • Documents get farmed too. There's a whole market for already-verified accounts.

For a quest game with a small season pool, a passport check costs more than it protects. We don't ask for ID in DENSHIN. We'd rather make the qualifying action cost real gas and read the answer from the chain.

The more interesting direction is somewhere in between: proof of personhood and zero-knowledge credentials, where you can prove "I'm a unique person" or "I'm over 18" without handing over the document itself. That keeps one person per account without the pile of data. It isn't mainstream yet, but it's the kind of identity that actually fits Web3.

What we'd like the industry to do#

  • Reward actions, not clicks. A follow isn't usage. We wrote more about that in why on-chain quests are a better way into Web3.
  • Make proof unique. One transaction, one reward, across every account.
  • Filter at the payout, not at the door. Let people in, and check before money moves.
  • Publish the rules. If a check is secret, honest players can't pass it on purpose, and farmers find it anyway.
  • Ask for identity only when it's really needed, and ask for as little as possible.

On-chain activity is one of the few things in this industry that anyone can check for themselves. It's worth keeping it honest. If you want to see how that feels from the player's side, the Genesis season is live and the map opens without a wallet. Take a look.

Keep reading

電信 · DENSHIN MEANS “TELEGRAPH”

Join the signal

New articles, season news and the first word on what the city opens next — pick the channel you already read.

X@_denshin Announcements and the first word on anything new. Follow DiscordJoin the server Help, quest talk and the roles your rank unlocks. Join Telegram@denshin_channel Every announcement, delivered to Telegram. Subscribe Instagram@denshin.web3 Posters, clips and short updates from the city. Follow