VibeScoreDOCS Get extension

VIBESCORE DOCUMENTATION · MODEL 1.11.0

Evidence, not verdicts.

VibeScore reads public on-chain and explorer data about a token and turns it into a transparent 0–100 evidence score, a set of risk indicators and an explicit list of what was not checked. This page explains every number it shows, how each one is computed, and where each one stops being reliable.

01 Overview

VibeScore is a read-only research tool for tokens on Robinhood Chain Testnet, especially tokens launched on vibe/vibe. It runs as a Chrome extension (a panel on token pages, badges on token lists and on X, a toolbar popup) and as this website.

What it is

  • A summary of observable evidence with fixed, published weights.
  • A list of risk indicators, each with its trigger and its limitation.
  • An honest record of unknowns: missing data earns no points and is never shown as passed.

What it is not

  • Not an audit, a safety certificate or a prediction of price.
  • Not a rug or scam probability. No score means "safe".
  • Not financial advice. Testnet tokens have no monetary value.

Core principle. A high score means "the available evidence looks healthy", never "this token is safe". A low or withheld score means "the evidence is weak or missing", never "this is a scam".

02 How a check runs

  1. Detect. On a vibe/vibe token page the extension reads the contract address from the URL; on lists and on X it finds visible token links and full 42-character addresses. On this site you paste an address.
  2. Read the contract. One RPC call fixes the latest block number; every contract read for that check (code, name, symbol, decimals, total supply, owner(), the EIP-1967 implementation slot, the transfer simulation) uses that same block, so the readings are mutually consistent.
  3. Read the explorer. The Blockscout API gives the holder count, the first page of holders, the creation transaction (age and launcher), the launcher's own transfers of this token and the newest page of transfers.
  4. Read the page. On a vibe/vibe token page only, visible text supplies bonding progress, project tax, the tax split, the airdrop allocation and the category. Page text can only add signals the chain cannot provide; it can never overwrite chain data.
  5. Score and assess. The pure scoring engine (scoring.js, the same file in the extension and on this site) computes the evidence score, warnings and risk indicators.

Results are cached for 30 seconds (5 seconds when any source failed, so a recovered source is retried quickly). Identical requests made at the same time share one set of network calls, and at most four requests run at once to respect public rate limits.

03 The evidence score

The score is a weighted sum of seven factors with a fixed denominator of 100. Each factor produces a value between 0 and 1; its points are weight × value; the score is the rounded total.

score = round( Σ weightᵢ × valueᵢ ) — over the factors that have data
FactorWeightSourceFull points when…Zero points when…
Bonding progress20vibe/vibe pagegraduated (100%)0% bonded
Distribution20Explorer holderstop 10 wallets ≤ 20%top 10 wallets ≥ 80%
Holder count15Explorer≥ 1,000 holders0 holders
Token age10Creation tx≥ 7 days oldjust deployed
Contract sanity15RPCcode, metadata, 1B supply all confirmednone confirmed, or holder transfer fails
Launcher conduct10Launcher transferslauncher moved out 0%moved out ≥ 50%
Transfer recency10Newest transfersa transfer in the last 24hno transfer for 7+ days

Grades

ScoreLabel
80–100Strong evidence
60–79Moderate evidence
40–59Limited evidence
0–39Early evidence
withheldInsufficient data

Worked example

A real testnet token, read on 2026-11-04: no bonding text (checked on the website, not on its token page), top 10 wallets hold 19.2%, 11,247 holders, 36 days old, all three contract reads confirmed and the simulated transfer passed, the launcher has moved out 0% of what it received, and the newest transfer was minutes ago.

0 (bonding unknown) + 20 + 15 + 10 + 15 + 10 + 10 = 80 · evidence weight 80/100 · Strong evidence

The same token on its vibe/vibe page would also gain up to 20 bonding points. This is why the coverage line ("6/7 signals · 80% evidence weight") is always shown next to the number.

04 The seven factors

Bonding progress 20

value = bonding progress (0–1) · graduated = 1

How far a vibe/vibe token has moved along its bonding curve. Graduation moves liquidity into a pool that the launchpad locks permanently, which removes the classic "pull the liquidity" exit. Only explicit percentages on the token page count; a generic "Graduated" filter label elsewhere on a page does not.

Limit: available only on the token page, so badges, X and this website usually score without it.

Distribution 20

s = top-10 wallet share of wallet-held supply · value = clamp(1 − (s − 0.20) / 0.60, 0, 1)

Concentration is measured on wallets only: contract balances (the bonding curve, pools, routers) and burn addresses are excluded from both the numerator and the denominator, because they are not people who can sell. 20% or less in the top ten earns full points; 80% or more earns none; in between is linear.

The factor is skipped entirely — not penalised — for very early tokens (under 5% bonded, fewer than 20 holders, or younger than one hour), because every launch looks concentrated in its first minutes.

Limit: based on the explorer's first holder page. Wallet identity is unknown — one person can control several wallets, and an exchange wallet can hold for thousands of users.

Holder count 15

value = log₁₀(holders + 1) / log₁₀(1001) — saturates at 1,000

A logarithmic scale rewards the first hundreds of holders strongly and stops rewarding growth beyond 1,000, so airdrops and dust transfers cannot inflate the score without bound.

Limit: holder addresses are not unique users, and holder counts can be farmed cheaply.

Token age 10

value = min(1, hours since creation / 168)

Time is weak but real evidence: a token that has existed for a week has had time to show its behaviour. Age comes from the creation transaction; a missing or future-dated timestamp leaves age unknown.

Contract sanity 15

value = (confirmed checks among: code exists · metadata readable · supply = 1,000,000,000) / 3 · 0 if the holder transfer simulation fails

Each confirmed check is worth 5 points. An unknown check earns nothing and lowers the evidence weight instead of counting as a fail. The supply check reflects vibe/vibe's standard 1B supply.

The holder transfer simulation asks the node to execute transfer() of 0.1% of the largest wallet's balance to a fresh address, at the pinned block, without signing or sending anything (eth_call). If it reverts or returns false, holders may be unable to move the token and the whole factor scores zero.

Limit: a true return value does not verify balance changes or prove you can sell into the curve or a pool. Empty or malformed return values remain inconclusive.

Launcher conduct 10

o = tokens the launcher moved out / tokens it received · value = clamp(1 − o / 0.5, 0, 1)

vibe/vibe tokens are deployed by a factory contract, so the explorer's "creator" is the factory. VibeScore identifies the launcher — the wallet that signed the creation transaction — and reads its transfers of this token. Moving out nothing earns full points; moving out half or more earns none.

The factor is scored only when the launcher's whole history fits in one explorer page. Otherwise it is listed as unknown rather than estimated from a partial history.

Limit: a transfer out may be a sale or a move to the launcher's own second wallet. Paginated or malformed histories do not produce a lifetime outflow ratio. The creation-transaction signer may be a relayer rather than the beneficial launcher.

Transfer recency 10

h = hours since the newest transfer · value = 1 if h ≤ 24, else clamp(1 − (h − 24) / 144, 0, 1)

This measures positive wallet-to-wallet transfer recency, not executed trades or exit liquidity. Full points for a transfer within a day, falling linearly to zero after a week of silence.

Limit: transfers can be generated artificially (wash activity); recency is not volume, demand or sellability.

05 Evidence rules

  • Missing means unknown. A factor without data earns 0 points and is shown as "Unknown" with the reason. It is never shown as passed.
  • Fixed denominator. The score is always out of 100. Missing factors are not reweighted away, so incomplete evidence cannot reach 100 — this is tested for every subset of factors.
  • Minimum evidence. A number is shown only with confirmed contract code, a usable holder count, at least 3 factors and at least 50 of the 100 points' worth of evidence. Otherwise the result is Insufficient data.
  • Evidence weight. The sum of the weights that had data (for example "80% evidence weight") is shown next to every score so two scores can be compared fairly.
  • Same score everywhere. Badges, the panel, the popup and this site use the same engine and read the same factors.
  • Versioned model. Every result carries its model version. Saved scores from an older model are marked "recheck" instead of being compared with new ones.

06 Risk indicators

Risk indicators are separate from the score. Each has a severity, a trigger, the evidence that fired it and its limitation. The overall level is High observed risk if any high indicator fired, Caution if any medium one did, and Unresolved otherwise — which never means safe.

IndicatorSeverityFires whenDoes not prove
Holder transfer failsHighthe simulated transfer reverts or returns falseintent — some tokens restrict transfers on purpose
Large observed walletHighone wallet holds > 25% of wallet-held supplywho controls it or whether they will sell
Concentrated holdingsHightop 10 wallets hold > 50%that the wallets are related
Launcher moved tokens outHigh ≥ 50%
Medium ≥ 20%
share of received tokens the launcher moved outa sale — it may be a move between own wallets
Launcher inventoryMediumlauncher still holds > 5% of total supplyintent to sell
Shared fundingMedium2+ of the top 3 wallets got their first funds from the same walletcoordination — common funders have innocent explanations
No recent transfersMediumnewest transfer older than 7 daysfraud — quiet tokens are common on testnet
Recent deploymentMediumcontract younger than 24 hoursanything about trading activity
Unverified sourceMediumexplorer reports the source as unverifiedmalicious code — only that it was not reviewed
Active ownerMediumowner() returns a non-zero addresswhat the owner can do
Implementation slot populatedMediumthe EIP-1967 proxy slot is non-zerowho can upgrade, or other proxy patterns
Mint / pause selectorHeuristicbytecode contains a known function selectorthat the function is callable or permissioned

Every report also lists what was not checked: selling into the curve or a DEX, liquidity depth and lock terms, blacklist or fee-change permissions and full admin roles.

07 How rugs & scams work — and what each leaves on-chain

Most token scams are variations of a few mechanisms. Each one leaves a fingerprint in public data; some fingerprints are strong, some weak, and some mechanisms leave none at all. Knowing which is which is the point of this section.

A The launcher dump

Mechanism. The launcher buys cheaply at the start of the curve, lets others push the price up, then sells everything at once.

Fingerprint. A large share of supply in the launch wallet, followed by large transfers out of it.

VibeScore. Identifies the real launcher (the creation-transaction signer, not the factory), shows its holding, and scores and flags how much it has moved out.

Blind spot: a launcher who buys from fresh wallets instead of the launch wallet.

B Insider concentration

Mechanism. A small group accumulates most of the supply early and can crash the price whenever it exits.

Fingerprint. A high top-1 / top-10 share of wallet-held supply.

VibeScore. The distribution factor, the top-wallet warning at 10%, high-risk indicators above 25% (one wallet) and 50% (top ten), and the holder map with the launcher highlighted.

Blind spot: supply split across hundreds of insider wallets.

C Sybil distribution

Mechanism. One operator funds many fresh wallets so a token looks widely held while one person controls it.

Fingerprint. Several top wallets whose very first incoming transaction came from the same funder.

VibeScore. The shared-funding check reads the earliest transaction of each of the top three wallets (only wallets with a complete short history) and flags a shared funder.

Blind spot: funding routed through exchanges, bridges or chains of intermediate wallets.

D Honeypot / transfer block

Mechanism. The contract lets you buy but blocks or taxes transfers and sales, so only the deployer can exit.

Fingerprint. A transfer from an ordinary holder reverts.

VibeScore. Simulates a real holder's transfer with eth_call; a failure zeroes contract sanity and raises a high indicator.

Blind spot: rules that only bite when selling into a pool, or that switch on later.

E Admin powers: mint, pause, upgrade

Mechanism. A privileged key can mint new supply, freeze transfers or replace the contract code.

Fingerprint. A live owner(), an EIP-1967 implementation slot, mint or pause selectors in the bytecode, unverified source.

VibeScore. Reads all four and reports each as an indicator with its limitation; selector matches are labelled heuristic.

Blind spot: role-based access control and non-standard proxy patterns.

F The abandoned token

Mechanism. Attention moves on, trading stops and remaining holders find no buyers.

Fingerprint. No transfers for days.

VibeScore. The trading-activity factor and the "no recent transfers" indicator; watchlist alerts when a saved token goes quiet for 7 days.

G Impersonation & social engineering

Mechanism. Fake tokens copying a real name, fake "official" accounts, links to drainer sites, or a request to sign a malicious approval.

Fingerprint. Mostly off-chain.

VibeScore. Cannot detect a fake by name — it scores the contract address in front of it. It never asks you to connect a wallet or sign anything; anything that does is not VibeScore.

08 vibe/vibe mechanics, briefly

These launchpad rules, from vibe/vibe's own documentation, are why some VibeScore checks exist. Always confirm current terms in the official docs ↗.

  • Supply. 1,000,000,000 tokens: about 800M sold along the bonding curve, about 200M paired as liquidity at graduation — hence the 1B supply check.
  • Graduation. When the curve fills, liquidity moves to a pool and is locked permanently — hence bonding progress as a factor.
  • Project tax. 1–3%, fixed at creation; the project share is split by the creator between treasury, holder rewards and burn, with a fixed protocol share. The panel shows the split when the page displays it, and warns at 3%.
  • Graduation airdrop. Creators may reserve supply for opt-in traders, creators and holders of partner tokens; the panel shows the reserved share.
  • Categories. Meme & Artcoins, Product & Utility, RWA & Stocks — self-reported by the creator, not verified.

09 Data sources & freshness

SourceUsed forNotes
Robinhood Chain Testnet RPCcode, metadata, supply, owner, proxy slot, transfer simulationall reads pinned to one block per check
Blockscout explorer API v2holders, holder count, creation tx, launcher transfers, newest transfers, wallet historiesfirst page of each list; incomplete lists are reported, not extrapolated
vibe/vibe token page textbonding, tax and split, airdrop, categoryextension only; heuristic text reading; never overrides chain data

Explorer data is indexed at the explorer's own head, which can lag the pinned RPC block by a few seconds. Every report shows its read time and RPC block.

10 Watchlist & alerts

Saved tokens are rechecked every 30 minutes (up to 25). The first check stores a baseline; later checks compare with it and notify when:

  • the score drops by your chosen threshold (5, 10 or 20 points) under the same model version;
  • the risk level becomes High observed risk;
  • the launcher crosses 20% moved out;
  • the token has had no transfers for 7 days.

A failed or partial read never alerts and never moves the baseline. The last 48 checks form the sparkline in the popup.

11 Privacy & permissions

  • No wallet, no signatures. VibeScore never asks to connect a wallet or sign anything. The transfer simulation is an eth_call: nothing is signed, sent or paid.
  • Local only. Your watchlist, settings and alert state stay in your browser's storage. There is no account, server or telemetry.
  • Public providers. The RPC and explorer see ordinary request metadata (your IP address and which contracts are queried), like any website using them.
  • Extension permissions. storage (local data), alarms (the 30-minute recheck), notifications (alerts, can be turned off), contextMenus (right-click check), plus access to vibe/vibe, X, the testnet RPC and the explorer.

12 Limits

  • Testnet only; testnet tokens have no monetary value.
  • Selling into the bonding curve or a pool is not simulated; liquidity depth and lock terms are not read.
  • Holder and transfer lists are first-page samples.
  • Wallet identity, custody and intent are unknowable from public data.
  • Page reading depends on vibe/vibe's current layout and can miss values.
  • Thresholds are disclosed product heuristics, not calibrated fraud probabilities.

13 Glossary

Bonding curve
A contract that sells a new token at a price that rises with each purchase, until the token graduates.
Graduation
The moment a curve fills and liquidity moves into a pool.
Launcher
The wallet that signed a token's creation transaction — a transaction signer, which can also be a relayer; beneficial ownership is not established.
Wallet-held supply
Total supply minus balances held by contracts and burn addresses.
eth_call
Asking a node to run a contract function and report the result without creating a transaction.
EIP-1967
A standard storage slot where upgradeable proxies keep the address of their implementation.
Sybil
Many wallets controlled by one operator to fake broad participation.
Evidence weight
How many of the 100 points had data in a given check.

14 Changelog

  • 1.10 Docs page; our own token showcase.
  • 1.9 Score history sparklines, settings, shareable score card.
  • 1.8 Holder transfer simulation (model 1.8.0), holder map, right-click check.
  • 1.7 Launcher conduct and trading activity added to the score (model 1.7.0); watchlist alerts.