Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.solanatracker.io/llms.txt

Use this file to discover all available pages before exploring further.

Wallet tags are labels that explain what a wallet may be or how it behaves. The PnL V2 wallet tags API labels Solana wallets with useful identity and behavior signals: KOLs, bots, arbitrage wallets, exploit wallets, exchanges, token developers, pool accounts, and trading-platform usage. Use these tags to clean up trader leaderboards, identify wallet types, filter noisy activity, and show better labels in wallet analytics products.
Wallet tags are returned through the identity object. A wallet can have multiple tags at once, so always read identity.tags as an array instead of assuming one label.

Quick Start

Wallet identity appears across PnL V2 wallet, token, leaderboard, and batch responses when a label is known. Wallet profile showing identity tags next to a wallet name
{
  "identity": {
    "name": "Mayhem Bot",
    "avatar": "https://kol-avatar.solanatracker.io/...",
    "bot": {
      "name": "Mayhem Bot",
      "avatar": "https://kol-avatar.solanatracker.io/..."
    },
    "type": "bot",
    "tags": ["bot"]
  }
}
If a wallet has no known tags, identity can be null. identity.type is the primary tag for single-badge UIs. identity.tags is the complete tag list and should be used when you need every label. In the example above, the wallet is labeled as a known bot. A UI could show one badge from identity.type, while a filtering system should read every value in identity.tags.

Raw Wallet Signals

Some wallet endpoints also return a raw tags object with lower-level arbitrage and platform signals:
{
  "tags": {
    "isArbitrage": false,
    "platforms": ["axiom", "bloom"]
  }
}
Use identity.tags for UI labels and filtering logic. Use the raw tags object when you specifically need the underlying arbitrage/platform signals.

Supported Wallet Tags

TagMeaningExtra fields
kolTracked KOL wallet.name, twitter, avatar
botCurated named bot wallet, such as Mayhem Bot or other known automated traders.bot.name, bot.avatar
potential_botHeuristic bot / arbitrage-like signal from wallet activity. Softer signal than bot or arbitrage.none
arbitrageConfirmed MEV / arbitrage wallet from the curated arbitrage list.none
hackerCurated exploit, scam, or attacker wallet label.hacker.label, often promoted to name
spam_dustingCurated spam-dusting wallet label.spamDusting.label, often promoted to name
exchangeKnown centralized exchange hot wallet.exchange.name, often promoted to name
developerToken creator, pool deployer, mint authority, or wallet linked to token creation.developer.token, developer.via, developer.pools, developer.creationTx, developer.createdAt, or developer.tokens
poolAMM pool, vault, authority, LP mint, bonding curve, or related pool account.pool.program, pool.poolAddress, pool.tokenA, pool.tokenB
axiomWallet activity associated with Axiom.platforms includes axiom
bloomWallet activity associated with Bloom.platforms includes bloom
photonWallet activity associated with Photon.platforms includes photon
axiom-flash is accepted as a platform query value, but identity responses normalize it to the axiom tag.

Tag Categories

People and Bots

Use kol, bot, potential_bot, and arbitrage to separate human traders from automated or MEV-style behavior. potential_bot is a softer heuristic signal. bot and arbitrage are stronger curated labels.

Safety and Infrastructure

Use hacker, spam_dusting, and exchange for safety warnings and infrastructure labels. These tags are curated and may also promote a readable label into identity.name, for example an exchange name or spam-dusting label.

Token Context

Use developer and pool on token-scoped endpoints to find token creators, pool deployers, mint authorities, LP accounts, pool vaults, and bonding curve accounts. Token-scoped endpoints resolve these roles for the token in the URL, which is useful for detecting insiders and non-trader wallets in token holder or first-buyer lists.

Platform Filters

The endpoints below accept platform=axiom, platform=bloom, platform=photon, or comma-separated combinations. Axiom leaderboard filtered to wallets trading through Axiom
  • GET /v2/pnl/leaderboard/top
  • GET /v2/pnl/tokens/:token/traders
  • GET /v2/pnl/tokens/:token/first-buyers
curl "https://data.solanatracker.io/v2/pnl/tokens/{token}/traders?platform=axiom,bloom" \
  -H "x-api-key: YOUR_API_KEY"
platform=axiom-flash is also accepted and is treated as axiom.

Where Tags Appear

Wallet identity is returned on PnL V2 wallet, token, leaderboard, and batch responses when the API can resolve a label.
  • Wallet summary and wallet positions return top-level identity.
  • Token trader endpoints return identity per trader.
  • Token-scoped endpoints resolve developer and pool for the token in the URL.
  • Position batch endpoints return identity per wallet or position.
  • POST /v2/pnl/wallets/batch returns both identity and raw tags per wallet.

Common Use Cases

GoalTags to check
Hide noisy walletsbot, potential_bot, arbitrage, spam_dusting
Show known peoplekol
Flag token insidersdeveloper, pool
Surface safety warningshacker, spam_dusting
Identify exchange flowsexchange
Filter by trading frontendaxiom, bloom, photon

FAQ

Yes. For example, a wallet can be both kol and axiom, or developer and pool depending on the token context. Always read identity.tags as an array.
bot is a curated named bot label. potential_bot is a softer heuristic signal from wallet behavior. arbitrage is a confirmed MEV or arbitrage wallet label.
axiom-flash is accepted for platform filtering, but identity responses normalize platform aliases so clients only need to handle the canonical axiom tag.
Use identity.tags for labels, badges, and filtering in most apps. Use the raw tags object when you specifically need isArbitrage or the original platform array.