BS
BaseScreener

Risk Scoring

How the screener computes token safety ratings

Risk Scoring

The Base Screener actively evaluates smart contracts against multiple safety parameters to shield trading agents from malicious deployments.

Score range

Tokens are scored from 0 (safe) to 100 (extremely risky). A higher score indicates more danger.

Evaluation criteria

CheckRisk pointsHow it works
Honeypot+50Simulates buy/sell constraints through the Honeypot.is engine to detect if tokens can actually be sold after buying
Mintable+20Parses contract bytecode for mint(address,uint256) function selector (0x40c10f19), indicating the owner can inflate supply
Unverified+15Checks Basescan API for verified source code — unverified contracts score higher risk
Liquidity unlocked+10Checks if LP tokens are locked in a locker contract (Unicrypt, Team.finance)
Concentrated holdersup to +20Calculates top 10 wallet concentration: >80% = +20, >50% = +10

Risk score examples

Token profileScoreMeaning
Verified, liquid, distributed0–10Low risk — safe for agents
Unverified, moderate concentration25–35Medium risk — proceed with caution
Honeypot detected50+High risk — avoid
Honeypot + mintable + concentrated90+Critical risk — do not trade

Update frequency

Risk scores are computed by the risk-worker cron job running every 5 minutes. New tokens without a risk score are prioritized — up to 20 unscored tokens are processed per cycle.

Using risk data in queries

graphql
{ newTokens(maxAgeSeconds: 3600, limit: 20) { tokens { symbol risk { score isHoneypot isMintable isVerified liquidityLocked top10HolderPct } } } }

Agent-side filtering

typescript
const safe = tokens.filter(t => t.risk.score < 40 && !t.risk.isHoneypot && !t.risk.isMintable )