Reading the tape
TAPE is an on-chain forensic scanner for Solana. It reads a coin's complete transaction history and grades every wallet already in it — so you know who you're trading alongside before you ape.
Overview
Most launchpad tokens are dominated by wallets that flip, dump, or rug — and by the time a chart looks good, those wallets already have their position. TAPE surfaces that read for you. Paste a token mint or a wallet address and TAPE pulls the on-chain tape, classifies behaviour, and returns a single 0–100 score plus behaviour tags, with a link to Solscan on every grade so you can verify it yourself.
- Read-only. TAPE never connects a wallet, never asks you to sign, and never touches funds.
- Transparent. The score is a sum of six published signals — no black box.
- Solana-native. Built directly on mainnet transaction data via Helius.
How it works
Every scan runs the same pipeline:
- Read the tape. For a coin, TAPE fetches current holders; for each wallet it pulls recent parsed transaction history — the full arc of buys and sells, not a balance snapshot.
- Extract features. From that history TAPE derives behavioural features: distinct coins touched, buy/sell counts, fast round-trips (buy then sell within ~12 minutes), sell share, and wallet activity age.
- Score & grade. Features feed the scoring engine, which returns a 0–100 score, a primary grade, and behaviour tags.
- Open the receipts. Every graded wallet links to its Solscan page so the underlying tape is one click away.
Coin vs wallet scan
Coin scan takes a token mint. TAPE grades the top holders and shows the distribution — how many are clean, flippers, dumpers, or fresh — plus the share of scanned supply held by flippers and dumpers, and an aggregate tape grade for the coin.
Wallet scan takes a single wallet address and returns that wallet's score, tags, and signal breakdown across every coin it has touched.
The TAPE score
Every wallet starts at a base of 60. The six signals below add or subtract points, and the result is clamped to 1–99. Higher means cleaner, higher-conviction money; lower means extractive or unknown.
// scoring, in one line
score = clamp(60
+ hold_conviction // up to +22
+ track_age_depth // up to +16
+ spread_diversity // up to +10
- flip_rate // up to -30
- sell_pressure // up to -16
- fresh_wallet_risk // up to -20
, 1, 99)
Confidence is reported separately and scales with sample size — a wallet with only a handful of transactions is graded with low confidence, because there simply isn't much tape to read.
The six signals
Grades & tags
The score maps to a primary grade:
| Grade | Score | Meaning |
|---|---|---|
| CLEAN | 70–99 | Conviction money — holds, diversified, real history. |
| MIXED | 45–69 | Some flipping or selling, but not toxic. Read the tags. |
| FRESH | varies | Too new or too thin to grade with confidence. |
| TOXIC | 1–44 | Extractive pattern — heavy flipping and/or dumping. |
Tags describe the specific behaviour behind the grade:
| Tag | What it means |
|---|---|
| DIAMOND | Low flip rate, real round-trips, aged wallet — holds through volatility. |
| STEADY | Balanced behaviour, nothing extractive. |
| FLIPPER | High share of fast buy-then-sell round-trips. |
| FARMER | Touches many coins with a high flip rate — volume farming. |
| DUMPER | Net seller with a high sell share into positions. |
| FRESH | New wallet, thin history — an unknown. |
Receipts
TAPE shows its work. Every graded wallet in a result links directly to its Solscan account page. Nothing is asserted that you can't check against the chain yourself — the receipts are the point, and they're what separates a real read from a vibe.
Stack & data
- Chain: Solana mainnet.
- Data: Helius — holders via the DAS
getTokenAccountsmethod, wallet history via the Enhanced Transactions API. - Backend: a small Node/Express server that holds the Helius key server-side, runs the scoring engine, caches results in memory (~2 minutes), and retries with backoff on rate-limit responses.
- Frontend: a static page served from the same origin — the key never reaches the browser.
- Explorer links: Solscan.
Safety & privacy
- No wallet connection. TAPE never prompts you to connect or sign. It reads public chain data only.
- No custody. It cannot move, hold, or access funds.
- Public data only. Everything TAPE shows is already on-chain and visible on any Solana explorer — TAPE just reads and grades it.
API reference
The same engine that powers the site is available as a small JSON API. Point requests at your deployment's base URL.
Scan a coin
# POST /api/scan/coin
curl -X POST https://your-app.replit.app/api/scan/coin \
-H "Content-Type: application/json" \
-d '{"mint":"<TOKEN_MINT>"}'
// response (trimmed)
{
"subject": "<mint>",
"holderCount": 412,
"rows": [
{
"holder": { "owner": "<wallet>", "pct": 8.4 },
"grade": {
"score": 81,
"grade": "CLEAN",
"gclass": "clean",
"tags": [ { "t": "DIAMOND", "c": "clean" } ],
"confidence": 88,
"comp": [ /* six signal components */ ],
"f": /* raw features */
}
}
]
}
Scan a wallet
# POST /api/scan/wallet
curl -X POST https://your-app.replit.app/api/scan/wallet \
-H "Content-Type: application/json" \
-d '{"address":"<WALLET>"}'
// response
{ "subject": "<wallet>", "grade": { /* same grade object as above */ } }
Health check
# GET /health
curl https://your-app.replit.app/health
// -> { "ok": true, "service": "tape", "cached": 3 }
Errors return an HTTP status with a JSON body: { "error": "..." }. Common cases: 400 missing field, 404 no holders / no transactions, 429 upstream rate limit (retry after a moment), 500 upstream failure.
$TAPE & burn-to-access
$TAPE is the access key to the scanner. Instead of subscriptions or logins, you burn a small amount of $TAPE to unlock scanning for 24 hours. Every burn permanently removes supply, so usage tightens the float over time — the flywheel.
| Action | Cost |
|---|---|
| Wallet scan · 24h | 1,000 $TAPE |
| Full coin scan · 24h | 10,000 $TAPE |
The token's role is utility — access to a tool — not a claim on revenue or profit. That framing is intentional and should carry through all launch copy.
Limitations
- Heuristic v1. The scoring signals are behavioural heuristics with sensible defaults. Thresholds are tuned against live data over time.
- Bundler & rug detection are approximations. True same-slot bundle clustering and liquidity-pull rug detection require additional enrichment (token creation time, LP events) and are on the roadmap — TAPE flags behaviour it can measure and does not fabricate signals it can't.
- Sampling. Coin scans grade the top holders and read recent history per wallet; extremely deep histories are truncated, which is reflected in the confidence score.
- Not a price predictor. TAPE grades who holds a coin, not where it's going.
FAQ
Do I need to connect a wallet?
No. TAPE is read-only and never prompts for a wallet or a signature.
What chains does it support?
Solana. Support for other venues may follow.
How current is the data?
Near-real-time from mainnet, with brief caching on popular scans to respect rate limits.
Why did a scan fail?
Usually an invalid mint/wallet address, a token with no holders, or a momentary upstream rate limit. Check the address and try again.
Can I build on the API?
Yes — see the API reference. Be mindful of your own rate limits and cache aggressively.
Is a high score a guarantee?
No. Scores describe past behaviour of current holders. They're a strong signal, not a promise — always do your own research.
Disclaimer
TAPE provides on-chain behavioural analysis for informational purposes only. It is not financial, investment, or trading advice, and nothing here is a recommendation to buy or sell any asset. Behavioural signals are probabilistic and can be wrong. Trading crypto assets — memecoins especially — carries a high risk of total loss. Always do your own research and never risk more than you can afford to lose.