Skip to main content
Base URL: https://data.solanatracker.io
Auth: Pass your API key in the x-api-key header.
Values: Monetary amounts default to USD. Wallet summary, history, and performance accept ?currency=usd|sol|eur. Timestamps are Unix milliseconds unless noted.

Essentials

What PnL V2 Includes

  • Scale. PnL is tracked for around 300–400 million wallets with billions of token positions, updated close to real time.
  • Token coverage. Every SPL token is supported except stablecoins and SOL.
  • Wallet endpoints. Use wallet endpoints for any wallet, even if it is not on a leaderboard.
  • Identity tags. Wallets can include an identity object with labels such as KOL, bot, exchange, pool, developer, trading platform, or SNS primary .sol domain.

What PnL V2 Excludes

Stablecoins and SOL are intentionally excluded from PnL positions because they are quote assets. A quote asset is the token used to price a trade, not the position being measured. Arbitrage wallets are excluded by default with excludeArbitrage=true. Arbitrage PnL can be noisy because those wallets often trade for tiny differences across pools. Pass excludeArbitrage=false to include them. The top-traders leaderboard covers the top 500k wallets per period. If a wallet is outside that ranked set, query it directly with the wallet endpoints.

Identity Tags

Every wallet can carry a structured identity. Supported today:
  • Bots and MEVpotential_bot (heuristic), bot (curated named bots like Mayhem Bot), and arbitrage (confirmed MEV).
  • Platformsaxiom, bloom, and photon. The API also accepts axiom-flash as an axiom alias.
  • Safety / infrastructure tags — curated hacker, spam_dusting, and exchange labels when known.
  • Pool and developer roles are automatically resolved on token-scoped endpoints.
  • SNS: primary .sol domain via Ridge (identity.sns, sns tag). See SNS Primary Domain.

PnL Modes

Wallet-summary, positions, single-position, top-trader leaderboard, and position batch endpoints accept ?pnlMode=. Endpoints that support pnlMode echo it back in the response. Position rows include both pnl.realized (mode-aware) and pnl.realizedRaw (unfiltered) so your UI can toggle without re-querying. The KOL leaderboards, history, chart, performance, highlights, risk, token-traders, first-buyers, and wallet-summary batch endpoints do not take pnlMode; they return the API’s fixed server-side view for that dataset.

Currency Denomination

Wallet summary, history, and performance accept an optional ?currency= query parameter: Conversion rules:
  • History and performance — each day’s USD values are divided by that day’s historical reference rate.
  • Wallet summary — converted with current spot (getSolanaPrice() for SOL; latest 1m candle for EUR).
  • Counts, percentages, timestamps, and ROI are not converted.
  • Field names stay the same (e.g. activity.volume.costUsd); check the top-level currency field for denomination.
  • Invalid values (e.g. ?currency=btc) return 400: { "error": "Invalid currency. Options: usd, sol, eur" }.

What is PnL V2?

PnL V2 tracks profit and loss for every Solana wallet. Give it a wallet address and it returns:
  • A summary with total PnL, win rate, and token counts
  • Per-token positions with cost basis, current value, and realized/unrealized PnL
  • Daily history and chart data for equity curves
  • Leaderboards for KOLs and top traders
  • Risk analysis with concentration and exposure metrics
  • Batch lookups for hundreds of wallet-token pairs at once

Wallet Analytics

PnL summaries, positions, daily history, performance, and risk for any wallet.

Token Intelligence

Every trader on a token — who’s profitable, who’s underwater, who bought first.

Leaderboards

KOL and top trader rankings with rolling windows and calendar views.

Batch Operations

Positions for hundreds of wallet+token pairs in one request.

Endpoint Groups

Know the endpoint?

Go straight to the API reference for schemas and parameters.

Building a workflow?

Continue with the step-by-step guides below.

Wallet Endpoints

Token Endpoints

Leaderboard Endpoints

Batch Endpoints


Key Concepts

Realized vs Unrealized PnL

Profit or loss from tokens you’ve sold. This is locked in — it doesn’t change.
Paper profit or loss on tokens you still hold. Changes with every price tick.
realized + unrealized. The full picture.

Wallet Coverage

PnL V2 covers all Solana wallets from December 2023 onward. Wallets are not indexed on request.

Pagination

List endpoints use cursor-based pagination. Grab pagination.nextCursor from the response and pass it as the cursor query parameter to get the next page.

Wallet Identity

Every wallet-scoped response includes a structured identity object. It merges multiple sources so a wallet can carry several labels at once (e.g. ["kol", "developer", "axiom"]). Only populated fields are returned: On token-scoped endpoints (/tokens/:token/traders, /first-buyers, /tokens/:token/positions/batch) the pool and developer roles are resolved for the exact token in the path, so you can spot devs, LPs, and snipers inline without extra requests. See the Solana Wallet Tags guide for the full supported tag list.

Enrichment on /tokens/:tokenAddress/holders

The classic holders endpoint accepts an optional ?enrich= parameter:
  • ?enrich=identity — adds pool / developer / platform identity per holder.
  • ?enrich=walletPnl — adds lifetime wallet PnL plus per-token PnL per holder.
  • ?enrich=all — both.
When omitted, the endpoint behaves exactly as before with no extra work.

Real-Time via Datastream

Pair these REST endpoints with the Datastream PnL V2 WebSocket rooms for live updates. Available on Premium, Business, and Enterprise plans: Typical pattern: call GET /v2/pnl/wallets/:wallet once to seed state, then subscribe to pnl:{wallet}:summary to keep it in sync. For the fastest unrealized PnL ticks, combine a PnL room with a price stream — price:aggregated:{token} (cross-pool, recommended) or price-by-token:{token} (primary pool). PnL rooms emit tradeUpdate and balanceUpdate on every fill plus an occasional throttled priceUpdate; the price rooms tick on every market move. Walkthrough in the PnL V2 Datastream guide.