# Top traders

> Traders of the token ranked by PnL, realized PnL, volume, buys or ROI over a window (1h, 24h, 7d, all), with wallet tags: dev, sniper, whale, smart_account…

Source: https://docs.crius.sh/reference/holders/top-traders/ · Updated 2026-10-28

GET https://api.crius.sh/v1/{chain}/token/{address}/traders

Traders of the token ranked by PnL, realized PnL, volume, buys or ROI over a window (`1h`, `24h`, `7d`, `all`), with wallet tags: `dev`, `sniper`, `whale`, `smart_account` (EIP-7702 wallets), the app for app wallets (`fomo`), `exchange`, `contract`.

-   `tag`: only traders with any of these tags (comma list), e.g. `tag=smart_account` or `tag=fomo`.
-   `exclude`: leave out traders with any of these tags, e.g. `exclude=dev,sniper,exchange` for outside traders only.
-   Program contracts (bots, vaults, routers) are left out by default: top traders are wallets. `include_contracts=true` adds them back (or `tag=contract` for contracts only). Smart accounts are wallets and always included unless excluded.

> Average cost; USD at trade time; unrealized at current price.

## Path parameters

`chain`stringrequired

Chain slug (`robinhood`) or chain id (`4663`).

`address`stringrequired

Contract or wallet address, any case (`0x…`, 20 bytes).

## Query parameters

`sort`string Default `pnl`

Sort order. One of `pnl`, `realized_pnl`, `volume`, `buys`, `roi`.

`window`string Default `all`

Stats window. One of `1h`, `24h`, `7d`, `all`.

`tag`string

Only wallets with this tag (`sniper`, `bot`, `whale`, `fresh`, `dev`, `insider`, `bundler`, `top_trader`). Only these tags, comma list: dev, sniper, whale, smart\_account, fomo, exchange, contract, ….

`exclude`string

Comma list of holder classes to leave out, such as `infra` (pools, lockers, burn) or `bots`. Leave out these tags, comma list, e.g. dev,sniper,exchange.

`include_contracts`boolean Default `false`

Program contracts are excluded by default.

`limit`integer Default `50`

Maximum number of items to return.

`cursor`string

Pagination cursor from the previous response's `meta.next_cursor`.

## Guides that use this endpoint

[**Find holders who held through a run (holder cohorts)**Find wallets that bought a Robinhood Chain token early and held through the run, with hold time, entry market cap, sells and PnL per wallet. Real example.](https://docs.crius.sh/guides/find-diamond-hand-holders/)[**Find a token's top traders and their PnL**Rank the traders of any Robinhood Chain token by PnL, volume, buys or ROI, with wallet tags, gas and hold time. A real example with the PnL math explained.](https://docs.crius.sh/guides/get-top-traders-pnl/)

## Errors

Errors come back as `{ "error": { "code", "message" } }` with the matching HTTP status: `400` bad parameter, `401` missing or invalid key, `403` endpoint above your plan, `404` unknown token or address, `429` rate limit or credits used up (with `Retry-After`). See [Errors](https://docs.crius.sh/errors/).

## More holders & traders endpoints

[GET/token/{address}/holdersLive holdersFree · 2 cr](https://docs.crius.sh/reference/holders/live-holders/)[GET/token/{address}/holders/snapshotHolder snapshotFree · 5 cr](https://docs.crius.sh/reference/holders/holder-snapshot/)[GET/token/{address}/holders/cohortHolder cohortStarter · 10 cr](https://docs.crius.sh/reference/holders/holder-cohort/)[GET/token/{address}/holders/historyHolder count historyStarter · 10 cr](https://docs.crius.sh/reference/holders/holder-count-history/)

Request Needs a Free key

 

**cURL**

```bash
curl "https://api.crius.sh/v1/robinhood/token/0x7b8892cea949bc60d494681d1bc3ea96071ab0b8/traders?sort=pnl&window=all&limit=20" \
  -H "x-api-key: $CRIUS_API_KEY"
```

**JavaScript**

```js
const res = await fetch("https://api.crius.sh/v1/robinhood/token/0x7b8892cea949bc60d494681d1bc3ea96071ab0b8/traders?sort=pnl&window=all&limit=20", {
  headers: { "x-api-key": process.env.CRIUS_API_KEY },
});
const { data, meta } = await res.json();
```

**Python**

```python
import os, requests

r = requests.get(
    "https://api.crius.sh/v1/robinhood/token/0x7b8892cea949bc60d494681d1bc3ea96071ab0b8/traders?sort=pnl&window=all&limit=20",
    headers={"x-api-key": os.environ["CRIUS_API_KEY"]},
)
body = r.json()
print(body["data"])
```

Response 200 · captured Oct 28, 2026

```json
{
  "data": [
    {
      "address": "0x9e38fedc40987c19396cc20ea59eb2b1b7928881",
      "avg_buy_usd": 0.00000842823,
      "avg_sell_usd": 0.0000532304,
      "balance": 0,
      "bought": 29080767.335830362668108408,
      "bought_eth": 0.099,
      "bought_usd": 245.099,
      "buys": 1,
      "cost_basis": "complete",
      "first_trade_ts": 1791983208000,
      "gas_spent_usd": 0.0875722,
      "holding_time_s": 118676,
      "last_trade_ts": 1792101884000,
      "pnl_usd": 1302.88,
      "rank": 1,
      "realized_pnl_usd": 1302.88,
      "roi_pct": 531.573,
      "sells": 7,
      "sold": 29080767.335830362668108408,
      "sold_eth": 0.635695,
      "sold_usd": 1547.98,
      "tags": [],
      "unrealized_pnl_usd": 0
    },
    {
      "address": "0x7c79ad74d36dea424d08a5d326271bf03da81f6a",
      "avg_buy_usd": 0.00000790248,
      "avg_sell_usd": 0.0000343631,
      "balance": 0,
      "bought": 46475393.982901663958413733,
      "bought_eth": 0.1485,
      "bought_usd": 367.271,
      "buys": 2,
      "cost_basis": "complete",
      "first_trade_ts": 1791983183000,
      "gas_spent_usd": 0.0712204,
      "holding_time_s": 125872,
      "last_trade_ts": 1792109055000,
      "pnl_usd": 994.45,
      "rank": 2,
      "realized_pnl_usd": 994.45,
      "roi_pct": 270.767,
      "sells": 4,
      "sold": 37582304.39247174197236032,
      "sold_eth": 0.528147,
      "sold_usd": 1291.44,
      "tags": [],
      "unrealized_pnl_usd": 0
    },
    {
      "address": "0x83055f3e7be4e289733bbc8c7bd42a6443177f07",
      "avg_buy_usd": 0.000023621,
      "avg_sell_usd": 0.0000471805,
      "balance": 0,
      "bought": 35569497.20243776424709037,
      "bought_eth": 0.3465,
      "bought_usd": 840.189,
      "buys": 3,
      "cost_basis": "complete",
      "first_trade_ts": 1791988168000,
      "gas_spent_usd": 0.0631376,
      "holding_time_s": 4039,
      "last_trade_ts": 1791992207000,
      "pnl_usd": 838,
      "rank": 3,
      "realized_pnl_usd": 838,
      "roi_pct": 99.7395,
      "sells": 3,
      "sold": 35569497.20243776424709037,
      "sold_eth": 0.691944,
      "sold_usd": 1678.19,
      "tags": [],
      "unrealized_pnl_usd": 0
    }
  ],
  "meta": {
    "block": 100406823,
    "block_age_ms": 829,
    "block_ts": 1793225080000,
    "chain": "robinhood",
    "finalized_block": 100397649,
    "lag_ms": 64,
    "next_cursor": "3",
    "pnl_method": "average cost; USD at trade time; unrealized at current price",
    "safe_block": 100401329,
    "window": "all"
  }
}
```

[Get a key for this endpoint](https://dashboard.crius.sh/signup?ref=docs-endpoint) [Report an issue](mailto:support@crius.sh?subject=Docs%20issue%3A%20GET%20%2Fv1%2F%7Bchain%7D%2Ftoken%2F%7Baddress%7D%2Ftraders&body=Page%3A%20https%3A%2F%2Fdocs.crius.sh%2Freference%2Fholders%2Ftop-traders%2F%0A%0AWhat's%20wrong%20or%20missing%3F%0A%0A)
