Skip to content
Vetto
Engine · scoring v1.1.0

How Vetto scores a token.

Every number comes from on-chain data and public APIs, run through a fixed formula. This page is generated from the same code that scores your token.

The whole formula

score = 10 + red − green

Kept between 0 and 100.

  • Any critical flag: at least 50
  • Impostor or live mint or freeze authority: at least 75
  • Under 60% data: partial data, never a guess
The formula, live

Flip a flag, watch the score move

Every token starts at 10. These are real signals with their real points. The first selection is only an example, not a real token. Tiered signals show their maximum.

35Moderate
Red flags add points
Green flags subtract points

Result

Moderate
35/100
Base score
10
Red flags
+35
Green flags
−10

Kept between 0 and 100.

What the score means

Four levels, and no “safe”

We never call a token safe. The best result is no major red flags found. Below 60% data completeness the level is partial data.

Low0–24

No major red flags found. It can still go to zero.

Moderate25–49

Some flags worth reading before you decide.

High50–74

Serious flags, or at least one critical one.

Extreme75–100

Many flags, an impostor, or live mint or freeze authority.

Forced to extreme (75+): IMPOSTOR · MINT_AUTHORITY_ACTIVE · FREEZE_AUTHORITY_ACTIVE

The pipeline

From a link to a verdict in five steps

The AI only words the reply. It never sees bios or websites and never writes a number.

  1. 01
    Find the token

    CA, links, bio, website, pinned post, our reverse index.

  2. 02
    Collect

    Every source in parallel, each with its own timeout.

  3. 03
    Freeze

    One immutable snapshot with a SHA-256 hash.

  4. 04
    Score

    A fixed, published formula. Same input, same score.

  5. 05
    Reply

    Card, bot reply and report, all from that snapshot.

Step 1 · Find the token

Always the right token

Tag the bot under any post. It works out which token the post is about, in this order, and stops at the first exact hit.

  1. 1
    CA in the post

    A contract address, or a pump.fun, DexScreener, Birdeye, GMGN, Axiom, Photon or Solscan link, in the post that tagged us.

  2. 2
    Parent or quoted post

    Same search in the post you replied to or quoted.

  3. 3
    The author's token

    Cached verified link, then bio, website, pinned post, our reverse index of token socials, DexScreener search and latest posts.

  4. 4
    $TICKER

    Solana only, real liquidity. One clear match is used; otherwise the bot asks “A or B?”.

  5. 5
    Not found

    We say so and ask for the CA. We never guess a token.

Then we check the link both ways

Token metadata, DexScreener socials, the website and the X bio must point at each other.

  • Official

    Two independent sources agree. For example, token metadata links the X account and the website shows the same CA.

  • Unverified link

    Only the account claims the CA. The token doesn't point back.

  • Conflict

    Website or bio lists a different CA than the token. Possible impostor.

Step 2 · Collect

A check for every trick

Each source has its own timeout. A source that fails lowers completeness, and the signals that need it are skipped, never guessed.

MintHelius RPC

Authorities, supply, Token-2022 extensions

MetadataHelius DAS

Name, image, socials, update authority

pump.funon-chain

Creator, create tx, bonding curve, graduation

MarketDexScreener · Birdeye

Price, market cap, liquidity, volume, main pool

DEX paidDexScreener

Paid profile, ads, community takeover

HoldersHelius DAS

Top 20 owners, with pools, burn, locks and CEX excluded

DevHelius

Dev balance, sells, transfers to other wallets

Dev historyHelius · pump.fun

Every token the creator launched and how it ended

Launchon-chain

Bundles in the creation slot, snipers right after

ClustersHelius

Who funded the top holders. Shared funders link wallets

LocksStreamflow

Streamflow locks and the unlock schedule

X and websiteX · RDAP

Account age, handle changes, domain age, CA on site

Impostorour index

Name, ticker and logo against verified tokens

Reverse indexours

Every token's socials, so a post without a CA still finds its token

Outcome trackerours

Measures every check again at +1 h, +24 h and +7 d

Step 3 · Freeze

One snapshot, everywhere

All data is normalised into one immutable snapshot with a SHA-256 hash. The card, the bot reply and the report are rendered from that same object, so the numbers can't disagree. Asking again within a few minutes returns the same snapshot.

Image cardBot replyWeb report

same sha256 everywhere · scoring v1.1.0

Step 4 · Score · 36 rules

Every point, explained

Generated from the scoring config. Change a rule and the version number changes with it.

Red flags

Points added to the risk score, highest first.
SignalPoints
Name, symbol or logo copies an older verified token with a different mint.IMPOSTORCritical+45
Mint authority is not revoked, so more supply can be printed.MINT_AUTHORITY_ACTIVECritical+30
Freeze authority is not revoked, so holders' tokens can be frozen.FREEZE_AUTHORITY_ACTIVECritical+30
The project's website or X bio lists a different contract address than this token.SOCIAL_CA_MISMATCHCritical+30
Token-2022 with a permanent delegate, a transfer hook or a non-zero transfer fee.TOKEN2022_DANGEROUS_EXTCritical+25
Wallets buying in the creation slot (bundle) took more than 30 % (at least HIGH), 10 % or 3 % of supply.BUNDLED_LAUNCHCritical+25 (> 30 %)+15 (> 10 %)+7 (> 3 %)
Dev created ≥ 3 earlier tokens and ≥ 70 % of them are rugged or dead.DEV_SERIAL_RUGGERMajor+20
Main pool is a classic AMM with LP tokens and the LP is neither burned nor locked.LP_UNLOCKEDCritical+20
Dev wallet holds an unlocked share of supply above 10 % (or above 5 %).DEV_HOLDS_HIGHMajor+15 (> 10 %)+8 (> 5 %)
Top 10 holders (excluding pools, burn, locks, CEX) own more than 40 % (or 25 %).TOP10_CONCENTRATEDMajor+15 (> 40 %)+8 (> 25 %)
Holder groups funded by the same wallet (≥ 2 wallets each) together own more than 15 % (or 8 %).LINKED_CLUSTERSMajor+15 (> 15 %)+8 (> 8 %)
Dev created ≥ 10 tokens in the last 30 days.DEV_MASS_DEPLOYERMajor+12
Dev sent ≥ 3 % of supply to other wallets (possible hidden dev wallets).DEV_HIDDEN_WALLETSMajor+12
Early buyers (first launch slots, bundle included) still hold more than 10 %.SNIPERS_HOLDINGMajor+10
Graduated to a DEX but liquidity is below $5,000.LOW_LIQUIDITYMajor+10
The project's X account is younger than 7 days.X_ACCOUNT_NEWMinor+8
We have seen this X account under a different username before.X_HANDLE_CHANGEDMinor+8
More than 5 % of supply unlocks within 72 hours.UNLOCK_SOONMinor+8
Website domain was registered less than 7 days ago.DOMAIN_NEWMinor+5
The project website does not respond.WEBSITE_DOWNMinor+5
No X, website or Telegram anywhere in metadata or DexScreener.NO_SOCIALSMinor+5
An X account claims this CA but the token does not link back to it.UNVERIFIED_BINDINGMinor+5

Green flags

Points subtracted. The score never goes below 0.
SignalPoints
At least 80 % of the dev allocation is locked on Streamflow.DEV_LOCKEDMajor−10
Dev has ≥ 2 earlier tokens, none rugged, at least one success.DEV_CLEAN_HISTORYMajor−10
Top 10 hold less than 15 % and there are more than 500 holders.HEALTHY_DISTRIBUTIONMajor−8
Both mint and freeze authority are revoked.AUTHORITIES_REVOKEDMinor−5
X account ↔ token link verified by ≥ 2 independent sources and the website is live.VERIFIED_SOCIALSMinor−5
Liquidity above $50,000.LIQUIDITY_OKMinor−5
Dev has not sold anything, has not moved tokens to other wallets, and holds less than 5 %.DEV_SOLD_NOTHINGMinor−3
Approved DexScreener token profile (paid).DEX_PAIDMinor−2

Info

Context only, no points.
SignalPoints
DexScreener paid orders (profile, ads, trending), shown for context.DEX_ORDERSInfo0
Community takeover registered on DexScreener.CTOInfo0
Token is less than 1 hour old, so everything can change fast.AGE_UNDER_1HInfo0
Still on the pump.fun bonding curve.BONDING_CURVEInfo0
Graduated from the pump.fun bonding curve to a DEX pool.GRADUATEDInfo0
Launched on a known launchpad (PUBLIC_LAUNCHPADS).LAUNCHED_ONInfo0

Not financial advice

Vetto is an automated research tool. Data can be delayed, incomplete or wrong, and a low risk token can still go to zero. Projects can answer flags with evidence on their report page; responses are reviewed but never change the score. Only data does.