A4F · wallet scoring · formula v14 · live
How a wallet gets its score.
One number between 0 and 100, built from evidence already on the chain, in a fixed order. Labels come in four groups, and only one of them can cost a wallet anything. This is the whole of it, written out.
- Offer Bot
- Quick Flip
- Blue Chip
- Contract
The idea
Two questions, asked separately
Who is acting — a person or a program — and how they trade — patiently or fast. They are different questions, and mixing them is what makes a score feel unfair.
Trading fast is a choice a person is entitled to make, so it is priced: a few points off, proportional to how often. Trading like a machine is not a style, so it is capped. A wallet can be quick without being a bot, and a bot can hold beautiful things and still not be trusted.
The sequence
The order it is worked out in
The order matters more than any single figure. Positive evidence is gathered and capped at 100 first, so a wallet cannot buy past the ceiling — and the subtractions land after, which is why a wallet holding a perfect collection can still be marked down for how it trades.
base evidence + robinhood − quick flip // 0…105 → clamp to 100 // the ceiling lands here → − bot penalty // after the clamp, deliberately → lowest cap wins // replaces, never subtracts → round, then band
| Step | What happens | Range |
|---|---|---|
| 1 · Base evidence | Five readings of what the wallet holds and how long it has been here. | 0…100 |
| 2 · Robinhood bonus | Added before any ceiling, so it can genuinely lift a strong wallet. | +5 |
| 3 · Quick-flip penalty | Priced on the share of sale decisions that were fast resales. | −0…10 |
| 4 · Clamp | The 100 ceiling applies here, not at the end. | max 100 |
| 5 · Bot penalty | After the clamp, so a wallet whose evidence already tops out still pays it. | −0…10 |
| 6 · Ceilings | Three are tested; the lowest wins. A ceiling replaces the score rather than subtracting from it. | 15 / 30 / 40 / 85 |
| 7 · Band | Rounded, then read as low, medium or high. | integer |
Step one
The base, out of 100
Three readings of the collection, two of the address itself. Holdings carry ninety of the hundred points, because what a wallet keeps is harder to fake than how old it is.
| Reading | What it measures | Max |
|---|---|---|
| Holding time | Sustained holding across purchased or curated NFTs, discounted where the record is too thin to be confident. | 30 |
| Value held | Meaningful NFT value held over time, on a log curve — the first ETH-days count for far more than the thousandth. | 30 |
| Blue chips | Recognised blue chips currently held: 20 for the first, 5 for each after. A verified holding that is not blue chip scores 12. | 30 |
| Wallet age | How far back the on-chain history goes. | 5 |
| Transaction history | How substantial that history is, again on a log curve. | 5 |
| Robinhood Chain | A flat bonus for established activity on chain 4663. Sits outside the 100 and applies before the ceiling. | +5 |
The card
The two bars on your report
Those readings are gathered into the two bars the score card shows, so every point on the card traces back to something above.
Holdings quality
What you own, and for how long.Holding time, value held over time and recognised collections — the larger of the two bars, because it is the hardest part of a record to manufacture.
On-chain behaviour
How the address acts.Wallet age and transaction history, plus the restraint the two penalties measure — how little you flip, and how little you trade like a machine. Age and transaction count alone said nothing about behaviour, which is why the bar counts restraint as well.
Steps three and five
The only two subtractions
| Penalty | How it is read | Most it costs |
|---|---|---|
| Quick flip | The share of eligible sale decisions that were fast resales. It scales with the share, so occasional flipping costs little. | −10 |
| Bot | Every machine signal found, summed and floored at the pool maximum. Where an outside detector has also read the wallet, the two combine by taking the higher — never by adding, so one behaviour is never charged twice. | −10 |
The gate on the ceiling
It takes two behaviours
A conviction needs two independent machine families to agree. One reading alone is never enough, however loud it looks: a fortnight of heavy bidding, a thin sample that flatters a ratio, or a contract standing in for a person all produce a single strong signal honestly.
Families are counted, not signals. Relist churn is the listing engine seen from another angle, so it cannot second its own evidence — the two voices must come from different families.
| Family | The behaviour it covers |
|---|---|
| Acquire | Buying through the offer book rather than taking listings. A listing fills in ETH and an offer fills in WETH, so a wallet acquiring almost entirely in WETH is running a bid book. |
| Offer | Offers created, re-priced and withdrawn at a rate or a rhythm a person does not keep. |
| Listing | Listings posted and re-posted the same way, including activity that never stops for sleep. |
| Wash | The same token moving back and forth between the same two addresses at a price. A single round trip is not this — vaults and second wallets do that. |
Two families agreeing sets the wallet confirmed, and that is the only thing that triggers the 40 ceiling. A single family still earns its label and still costs its points; it just does not cap the score.
Being a contract is not one of them. Plenty of people trade through a smart-account wallet, a multisig or a marketplace aggregator, and all three execute buys from a contract. So the code at an address is recorded as a plain fact and costs nothing.
The table
Four groups
A label is behaviour, not an accusation
Labels are re-read from the record every time a wallet is scored. Trade differently and they change with you — nothing is kept on file as a punishment. At most one label from each group shows on a card, worst first.
Bot — automated trading, not a person
The only group that costs points.| Label | What earns it | Family |
|---|---|---|
| WETH Bot | Nearly every buy settled as an accepted offer rather than a taken listing — a bid book at work. | Acquire |
| Offer Bot | Offers created faster, and for longer, than a person sustains. | Offer |
| Listing Bot | Listings arriving in bursts no interface produces, or spread around the clock without a break. | Listing |
| Wash Trader | A token cycled repeatedly with the same counterparty, priced on both legs. | Wash |
| Relist Churn | One token relisted over and over at shifting prices — a pricing loop rather than a change of mind. | Listing |
| Offer Churn | The same offer re-priced repeatedly across many collections at once. | Offer |
| Sniper Undercutter | Reported by a collection’s own detector rather than computed here. We render what that source found. | per source |
Trader — human, but fast in and out
Costs points, never a verdict, never a ceiling.| Label | What earns it |
|---|---|
| Quick Flip | A large share of sales were resales soon after buying. This is the badge for the quick-flip penalty above. |
| High Turnover | Selling considerably more than is currently held, over a recent stretch. |
Collector — buys and holds
Explains the score, never costs anything.| Label | What earns it |
|---|---|
| Diamond Hands | Holding time near the top of what that reading allows. |
| Blue Chip | A recognised collection currently held. |
| Sweeper | Buying several items in one go, in ETH, and keeping them. A sweep is read by how it settled, not by its size — the same sweep paid in WETH is the offer book again. |
| Minter | Most of what is held was minted rather than bought. |
Fact — context, no judgement
Mostly here so a score you did not expect has a visible reason.| Label | What earns it |
|---|---|
| New Wallet | The address has not been around long. |
| Contract | There is code at the address — a smart account, a multisig, a vault. Whether or not it trades. |
| Dormant | No NFT activity for a long while. Only NFT activity carries a timestamp here, so a wallet busy elsewhere can read dormant. |
| Thin History | Too little to read a machine verdict from. It says why a reading is missing, so a blank is not mistaken for a clean bill of health. |
Step six
The ceilings
A ceiling is not a subtraction. It replaces the score outright, and where more than one applies the lowest wins. This is why a wallet can show a strong figure before ceilings and a much lower one after.
| Ceiling | When it applies | Caps at |
|---|---|---|
| Cluster | many sibling wallets found alongside this one | 15 |
| Sybil | the address reads as likely sybil | 30 |
| Cluster | a few sibling wallets | 40 |
| Confirmed machine | two machine families agree | 40 |
| Sybil | the reading is uncertain rather than clear | 85 |
Two readings, often confused
Verdicts and bands
The band describes the score. The verdict describes the machine evidence, and it follows the penalty points alone — a wallet can be watched without being capped.
| Band | Final score | Verdict | Bot points |
|---|---|---|---|
| High | 65 and over | Bot suspected | 7 and over |
| Medium | 30 – 64 | Watch | 3 – 6 |
| Low | under 30 | Clean | under 3 |
A wallet scored here never reads worse than bot suspected. Freezing is an on-chain action a collection owner takes; we observe and report, we do not freeze.
Finally
Scan it again and the score can move
A score is a reading of a moment, not a permanent grade. A rescan re-reads the wallet from the chain and recomputes everything on this page, and the report shows the block it was read at. Thin order data reads as no reading — never as clean.