Crypto Price Tracker — BTC, ETH & 17K+ Altcoins avatar

Crypto Price Tracker — BTC, ETH & 17K+ Altcoins

Pricing

from $3.00 / 1,000 coin trackeds

Go to Apify Store
Crypto Price Tracker — BTC, ETH & 17K+ Altcoins

Crypto Price Tracker — BTC, ETH & 17K+ Altcoins

Fetch real-time prices, market cap, 24h/7d/30d changes, ATH/ATL, supply, dominance, and computed analytics for a watchlist of coins (BTC, ETH, SOL...) or the top N by market cap. Multi-source: CoinGecko primary, Binance fallback. PPE: $0.003/coin. MCP/API-ready.

Pricing

from $3.00 / 1,000 coin trackeds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

a day ago

Last modified

Share

Crypto, DEX & Wallet Tracker — CEX + On-Chain API

This Apify Actor serves analysts, builders, and AI agents that need one unified crypto record per coin, pair, or wallet. It accepts a watchlist, a top-N market sweep, DEX token or pair queries, or wallet-stat requests, and returns one dataset item per requested record with fields such as price, marketCap, liquidityUsd, totalValueUsd, winrate7dPct, priceSource, lastUpdated, and scrapedAt. The result is a single structured dataset that can be filtered by recordType and used through Apify MCP or the Apify API.

Best fit and connected workflows

This Actor fits workflows that benefit from one crypto data tool with a unified schema:

  • CEX monitoring for a fixed watchlist such as BTC, ETH, SOL, XRP, or DOGE.
  • Market sweeps for the top N coins by market cap.
  • DEX lookups from a token address or symbol search across supported chains.
  • Wallet summaries with total value, realized and unrealized PnL, winrate, token counts, tags, and recent activity.

It is available as an Apify Actor through Apify MCP, so an agent can route a single request into the correct mode and then branch on recordType in the returned dataset.

Practical scenario

Maya prepares a daily crypto brief for her team. She starts with BTC, ETH, and SOL in watchlist mode and receives records with price, change24h, marketCap, marketCapRank, ath, atl, and binancePriceUsd when fallback enrichment is enabled. She uses change24h and marketCapRank to sort the brief, then sends the dataset link into her dashboard so the same records can be displayed with refreshed values later.

Input fields

FieldTypeUsed inDescription
modestringallSelects watchlist, market, dex, or wallet.
symbolsarray of stringswatchlistCoin tickers for CEX tracking. Up to 100.
topNintegermarketNumber of top coins to fetch by market cap. Range 10-1000.
vsCurrencystringwatchlist, marketQuote currency for CEX modes.
useBinanceFallbackbooleanwatchlist, marketAdds Binance ticker enrichment for CEX records.
dexQueriesarray of stringsdexToken contract addresses or symbol/name searches. Up to 50.
dexChainstringdexChain context for DEX symbol or EVM-address lookups.
dexMaxPairsPerTokenintegerdexNumber of pairs returned per query, sorted by liquidity.
walletAddressesarray of stringswalletWallet addresses for GMGN wallet stats. Up to 50.
walletChainstringwalletChain context for the wallet lookup.
walletPeriodstringwalletAggregation window for PnL and trading stats.
responseFormatstringalldetailed or concise output shape.

Valid focused JSON example

{
"mode": "watchlist",
"symbols": ["BTC", "ETH", "SOL"],
"vsCurrency": "usd",
"useBinanceFallback": true,
"responseFormat": "detailed"
}

Output fields

The Actor writes a unified dataset. Use recordType to route each record shape.

FieldTypeDescription
recordTypestringcex-coin, dex-pair, or wallet-holding.
symbolstringTicker for coin and pair records, or chain name in wallet records.
namestringDisplay name.
chainstring or nullcex for CEX records, or a blockchain name for on-chain records.
addressstring or nullContract, pair, or wallet address.
coingeckoIdstring or nullCoinGecko slug for CEX records.
quoteCurrencystring or nullQuote currency for CEX records.
pricenumber or nullCurrent price for CEX records.
marketCapnumber or nullMarket cap for CEX or DEX records.
volume24hnumber or null24h volume.
change1hnumber or null1-hour change in percent.
change24hnumber or null24-hour change in percent.
change7dnumber or null7-day change in percent.
change30dnumber or null30-day change in percent.
athnumber or nullAll-time high.
athDatestring or nullISO 8601 timestamp for ATH.
athChangePctnumber or nullDistance from ATH in percent.
atlnumber or nullAll-time low.
atlDatestring or nullISO 8601 timestamp for ATL.
circulatingSupplynumber or nullCoins in circulation.
totalSupplynumber or nullTotal coins minted.
maxSupplynumber or nullHard cap on supply.
marketCapRanknumber or nullGlobal rank for CEX records.
dominancePctnumber or nullShare of total crypto market cap.
binancePriceUsdnumber or nullBinance USDT-pair price for CEX records when fallback is enabled.
binanceVolume24hUsdnumber or nullBinance 24h volume on the USDT pair.
dexIdstring or nullDEX protocol name.
pairAddressstring or nullDEX pool contract address.
priceUsdnumber or nullDEX pair price in USD.
priceNativenumber or nullDEX pair price in the quote token.
liquidityUsdnumber or nullTotal pool liquidity in USD.
fdvUsdnumber or nullFully diluted valuation in USD.
volume1hnumber or null1-hour pair volume in USD.
volume6hnumber or null6-hour pair volume in USD.
buys24hnumber or nullBuy transactions in 24h.
sells24hnumber or nullSell transactions in 24h.
change5mnumber or null5-minute price change in percent.
change6hnumber or null6-hour price change in percent.
pairCreatedAtstring or nullISO 8601 pair creation timestamp.
dexScreenerUrlstring or nullPublic DexScreener pair page.
walletAddressstring or nullWallet identifier.
totalValueUsdnumber or nullTotal wallet value in USD.
unrealizedPnlUsdnumber or nullOpen-position profit or loss in USD.
realizedPnlUsdnumber or nullClosed-position profit or loss in USD.
pnl7dPctnumber or null7-day total PnL in percent.
pnl30dPctnumber or null30-day total PnL in percent.
winrate7dPctnumber or nullWin rate of closed positions in the last 7 days.
winrate30dPctnumber or nullWin rate of closed positions in the last 30 days.
buy7dCountnumber or nullBuy transactions in the last 7 days.
sell7dCountnumber or nullSell transactions in the last 7 days.
tokenCountnumber or nullTotal distinct tokens traded.
profitableTokenCountnumber or nullDistinct tokens with positive PnL.
avgHoldingHoursnumber or nullMean holding time in hours.
walletTagsarray or nullGMGN tags such as smart_degen, kol, sniper, bundler, rat_trader.
lastActiveAtstring or nullISO 8601 timestamp of last on-chain activity.
gmgnUrlstring or nullPublic GMGN wallet page.
priceSourcestringPrimary source: coingecko, binance, dexscreener, or gmgn.
lastUpdatedstring or nullUpstream refresh timestamp.
coingeckoUrlstring or nullPublic CoinGecko page for CEX records.
scrapedAtstringExtraction timestamp in UTC.

Illustrative output record

{
"recordType": "cex-coin",
"symbol": "BTC",
"name": "Bitcoin",
"chain": "cex",
"address": null,
"coingeckoId": "bitcoin",
"quoteCurrency": "usd",
"price": 0,
"marketCap": 0,
"volume24h": 0,
"change1h": 0,
"change24h": 0,
"change7d": 0,
"change30d": 0,
"ath": 0,
"athDate": null,
"athChangePct": 0,
"atl": 0,
"atlDate": null,
"circulatingSupply": 0,
"totalSupply": 0,
"maxSupply": 0,
"marketCapRank": 0,
"dominancePct": 0,
"binancePriceUsd": 0,
"binanceVolume24hUsd": 0,
"priceSource": "coingecko",
"lastUpdated": null,
"coingeckoUrl": null,
"scrapedAt": "2026-01-01T00:00:00.000Z"
}

How it works

The Actor runs in four modes under one unified schema:

  • watchlist resolves tickers and fetches CEX prices and market data.
  • market fetches the top N coins by market cap and includes dominancePct.
  • dex uses DexScreener for token or pair lookup, including address-based and symbol-based queries.
  • wallet uses GMGN wallet lookup to return portfolio and PnL statistics.

For CEX modes, CoinGecko is the primary source and Binance fallback can enrich price data. For DEX mode, pairs are returned in liquidity order. For wallet mode, the chain is set explicitly in the input and returned in the dataset records.

Pricing

This Actor uses Pay per event pricing plus Apify platform usage. The live Pricing tab shows the current event pricing for your run.

Example: three coin records in watchlist mode use three Coin Tracked events. A run with two wallet addresses uses two on-chain record events. If a DEX query returns three pairs, that contributes three on-chain record events.

Apify platform usage, such as compute and proxy usage, is billed separately according to your Apify plan.

Use with AI agents (MCP)

This Actor is available through Apify MCP as an Apify Actor for crypto data retrieval. The exact Actor identity is khadinakbar/crypto-price-tracker.

Tool description: retrieve structured CEX coin data, DEX pair data, or wallet PnL summaries with one unified schema and provenance fields.

Get current BTC, ETH, and SOL prices in USD, include 24h changes and market cap, and return one record per coin in detailed format.

When an agent calls the Actor through MCP:

  • cex-coin records route to price, market cap, change, supply, and ATH/ATL fields.
  • dex-pair records route to pair-level price, liquidity, FDV, and volume fields.
  • wallet-holding records route to wallet value, PnL, winrate, token count, and tags.

For interpretation, check priceSource to see whether the record came from CoinGecko, Binance, DexScreener, or GMGN. scrapedAt shows when this Actor extracted the record, and lastUpdated shows the upstream refresh time when present. Scope is controlled by the selected mode, so each MCP call returns one category of records. Pagination is handled through the Apify dataset items for the run. Cost planning is simplest when you count the requested records before running: one coin, pair, or wallet maps to one charged event in the relevant category.

Apify API example

const { ApifyClient } = require("apify-client");
(async () => {
const client = new ApifyClient({
token: process.env.APIFY_TOKEN,
});
const run = await client.actor("khadinakbar/crypto-price-tracker").call({
mode: "watchlist",
symbols: ["BTC", "ETH", "SOL"],
vsCurrency: "usd",
useBinanceFallback: true,
responseFormat: "detailed",
});
const dataset = client.dataset(run.defaultDatasetId);
const { items } = await dataset.listItems();
for (const item of items) {
console.log({
symbol: item.symbol,
price: item.price,
change24h: item.change24h,
source: item.priceSource,
});
}
})();

Best results and outcome guidance

Use watchlist when you already know the coins you want to track. Use market when you want a ranked sweep of the top N coins by market cap. Use dex when the task starts from a token address or symbol search and you need pair-level liquidity and volume. Use wallet when the starting point is a wallet address and the decision depends on PnL, winrate, holdings breadth, or recent activity.

responseFormat: "concise" is useful when an agent needs compact context. responseFormat: "detailed" is useful when downstream logic depends on historical fields such as ATH, ATL, supply, or longer change windows.

Focused standalone workflow

This Actor is designed as a focused standalone workflow.

Design note

I found that the dataset schema uses recordType as the main discriminator, and the output views are split into All Records Overview, CEX Watchlist, DEX Pairs, and Wallet Stats, which makes the unified schema straightforward to route in downstream code.

FAQ

When should I use watchlist instead of market?
Use watchlist when you have specific tickers. Use market when you want a ranked sweep of the top N coins by market cap.

When should I use dexQueries instead of symbols?
Use symbols for CEX coin tracking. Use dexQueries for DEX token or pair lookup by address or symbol.

How should I choose dexChain?
Set dexChain when the query is a symbol or when you want to scope EVM address lookups. Hex addresses are auto-detected, and Solana addresses follow native parsing.

When should I use walletChain and walletPeriod?
Set walletChain to match the wallet address network. Set walletPeriod to choose the aggregation window for PnL and winrate.

How do I tell which source powered a record?
Check priceSource. CEX records use coingecko or binance, DEX records use dexscreener, and wallet records use gmgn.

How do I read the dataset efficiently in code?
Read defaultDatasetId from the run, then fetch dataset items and filter on recordType before routing each record into your own logic.

Responsible use

Use this Actor for informational, research, automation, and agent workflows. Crypto prices, DEX liquidity, and wallet statistics change over time, so freshness depends on the upstream source and the scrapedAt and lastUpdated timestamps in each record. Review source fields before making decisions, and treat the output as a data input rather than advice.