Methodology
How the score works
The Fake Score is a 0–100 number where higher means more extractive behavior. It is a weighted sum of eight signals, each scored 0–100 from public activity. Nothing here is a statement of fact about intent; it's a pattern score.
The formula
// each signal is 0–100; weights sum to 100
score = Σ weighti × (signali / 100)
// Transparency is inverted: more disclosure → lower score
signaltransparency = 100 − disclosure
The eight signals
Wallet behavior
20 ptsDoes the KOL dump on followers?
How often linked wallets sell shortly after a shill post, pre-buy before announcing, or receive tokens from launch wallets.
Shill frequency
10 ptsHow many coins per week?
Volume of distinct token promotions per week. Spraying 20 tickers a week is a quantity-over-quality signal.
Shill performance
15 ptsHow did the calls perform?
Average price change of promoted tokens from the shill post to now. Worse performance means a higher sub-score.
Follower outcomes
15 ptsDid followers actually profit?
Estimated share of followers who could have exited in profit if they bought at post time and sold within 48h.
Funnels & extraction
15 ptsPaid groups, ref links, courses?
Monetization pathways aimed at followers: paid Telegram groups, exchange referral links, courses, own token launches, DM-for-alpha.
Content quality
5 ptsLow-effort hype vs. actual analysis
Share of posts that are pure hype (rockets, 'last chance', countdowns) versus posts containing any verifiable reasoning.
Community sentiment
10 ptsWhat do X and Reddit say?
Negative share of public mentions on X and Reddit, weighted toward accounts that are not obvious bots.
Transparency
10 ptsDiscloses bags and paid promos?
Disclosure of paid promotions, public wallets, and acknowledging losses. This signal REDUCES the Fake Score.
inverted signal
Tiers
- 80–100Professional Rug Promoter
Dumps on followers as a business model. Treat every post as an exit signal.
- 60–79Heavy Shiller
Promotes constantly, followers rarely profit, funnels everywhere.
- 30–59Sus
Some red flags. Could be careless, could be early-stage grifting.
- 0–29Mostly Legit
Discloses, holds, and the calls mostly aged fine. Still DYOR.
Data sources
Five public sources feed the pipeline: Helius, DexScreener, YouTube, X and Reddit. X data comes from the twitterapi.io API, not from scraping, and is limited to a fixed daily request budget. Nothing is pulled from Instagram or Google.
Helius
wallet behavior · transparencyEnhanced Solana transaction data for every confirmed wallet. A webhook streams swaps live; a daily backfill stores 90 days of history. Sells within two hours of a shill of the same token flag the dump-on-followers pattern.
DexScreener
shill performance · follower outcomesPrice, market cap and liquidity for each promoted token from its highest-liquidity Solana pair. A price snapshot is written on every refresh so calls can be measured at 24h, 7d and 30d.
YouTube Data API
shill frequency · content quality · transparencyThe last 50 videos of each linked channel. Titles and descriptions are scanned for $TICKER patterns, Solana mints and hype phrases to detect shills, for sponsorship disclosures, and for self-disclosed wallets.
X (via twitterapi.io)
shill frequency · wallet behavior · funnels · sentimentEvery account gets a one-time deep scan of its 50 highest-engagement tweets and replies (ranked by likes, retweets, quotes and replies), plus the 30 most-engaged posts by other accounts that tag or name them alongside words like scam, rug, exposed, side wallet, bundled or legit, starting with a curated list of the most active memecoin KOLs; company and brand accounts are not tracked; ticker-only mentions older than 180 days are ignored because the ticker can't be reliably matched to a token, but older tweets with an explicit mint or pump.fun link still count. After that, accounts are fetched once a day (the 800 most-followed daily, the rest every other day) and the 20 latest original tweets are scanned for $TICKER, Solana mints and pump.fun / DexScreener links to create shills; the bio, pinned tweet and tweets for self-disclosed wallets and .sol names; bio links for paid groups, referral links, courses and own token launches; and a search for @handle plus scam/rug/legit keywords for sentiment, keyword-classified, with 10k+ follower voices weighted double. Follower counts are refreshed from the same profile call.
Reddit
community sentimentNewest 50 posts mentioning the handle site-wide and in r/solana, r/memecoins and r/CryptoMoonShots, labelled positive or negative with a fixed keyword list. Addresses the KOL posts themselves become confirmed wallets.
The “pending” status
Every account enters the system as pending with no score. It is listed on the tracked page with an “Awaiting on-chain data” badge until its first refresh pass completes, usually within 10 minutes.
Every tracked account is then scored and ranked on the leaderboard, wallet or not. Signals with no evidence sit at their neutral default, so an account with no confirmed wallet (self-disclosed in an X bio, YouTube description or the KOL's own Reddit post, or resolved from a .sol name) and no detected shill (a YouTube video or tweet that names a $TICKER, a Solana mint, a pump.fun or DexScreener link, “gem”, “100x” or “1000x”) lands in the middle of the range. The score sharpens as evidence arrives.
Wallets submitted by visitors are stored as unverified, shown with that badge, and excluded from scoring until a moderator confirms them.
Refresh cadence & limits
A refresh runs every 10 minutes and processes the 25 stalest accounts: new YouTube videos become shills, Reddit mentions are labelled, DexScreener prices are snapshotted for every promoted mint, and the eight signals are recomputed from stored rows. A separate X pass runs every 15 minutes on 25 accounts so every tracked account is fetched from X about once a day within a hard cap of 2,500 requests. Wallet swaps arrive live through a Helius webhook; a daily job re-backfills 90 days of history. The 24h and 7d deltas compare against stored score snapshots and the 30-day sparkline keeps one point per day.
Shill frequency counts X and YouTube shills together, and the “sold before followers” check compares every confirmed-wallet sell against shill timestamps from both platforms.
Sentiment (X and Reddit) is keyword-labelled and sampled, not exhaustive, and is deliberately weighted lightly because it's the easiest signal to game in either direction. Think a label is wrong or a shill was misread? Use the report button on the profile; disputes are reviewed in the admin queue and corrected rows are rescored on the next pass.
Prices come from the highest-liquidity Solana pair on DexScreener and are cached for five minutes. Tickers are resolved to mints the same way, so a shared ticker can occasionally map to the wrong token; use the report button on a profile if you spot one.