Crypto Price Tracker — BTC, ETH & 17K+ Altcoins
Pricing
from $3.00 / 1,000 coin trackeds
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
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
a day ago
Last modified
Categories
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
| Field | Type | Used in | Description |
|---|---|---|---|
mode | string | all | Selects watchlist, market, dex, or wallet. |
symbols | array of strings | watchlist | Coin tickers for CEX tracking. Up to 100. |
topN | integer | market | Number of top coins to fetch by market cap. Range 10-1000. |
vsCurrency | string | watchlist, market | Quote currency for CEX modes. |
useBinanceFallback | boolean | watchlist, market | Adds Binance ticker enrichment for CEX records. |
dexQueries | array of strings | dex | Token contract addresses or symbol/name searches. Up to 50. |
dexChain | string | dex | Chain context for DEX symbol or EVM-address lookups. |
dexMaxPairsPerToken | integer | dex | Number of pairs returned per query, sorted by liquidity. |
walletAddresses | array of strings | wallet | Wallet addresses for GMGN wallet stats. Up to 50. |
walletChain | string | wallet | Chain context for the wallet lookup. |
walletPeriod | string | wallet | Aggregation window for PnL and trading stats. |
responseFormat | string | all | detailed 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.
| Field | Type | Description |
|---|---|---|
recordType | string | cex-coin, dex-pair, or wallet-holding. |
symbol | string | Ticker for coin and pair records, or chain name in wallet records. |
name | string | Display name. |
chain | string or null | cex for CEX records, or a blockchain name for on-chain records. |
address | string or null | Contract, pair, or wallet address. |
coingeckoId | string or null | CoinGecko slug for CEX records. |
quoteCurrency | string or null | Quote currency for CEX records. |
price | number or null | Current price for CEX records. |
marketCap | number or null | Market cap for CEX or DEX records. |
volume24h | number or null | 24h volume. |
change1h | number or null | 1-hour change in percent. |
change24h | number or null | 24-hour change in percent. |
change7d | number or null | 7-day change in percent. |
change30d | number or null | 30-day change in percent. |
ath | number or null | All-time high. |
athDate | string or null | ISO 8601 timestamp for ATH. |
athChangePct | number or null | Distance from ATH in percent. |
atl | number or null | All-time low. |
atlDate | string or null | ISO 8601 timestamp for ATL. |
circulatingSupply | number or null | Coins in circulation. |
totalSupply | number or null | Total coins minted. |
maxSupply | number or null | Hard cap on supply. |
marketCapRank | number or null | Global rank for CEX records. |
dominancePct | number or null | Share of total crypto market cap. |
binancePriceUsd | number or null | Binance USDT-pair price for CEX records when fallback is enabled. |
binanceVolume24hUsd | number or null | Binance 24h volume on the USDT pair. |
dexId | string or null | DEX protocol name. |
pairAddress | string or null | DEX pool contract address. |
priceUsd | number or null | DEX pair price in USD. |
priceNative | number or null | DEX pair price in the quote token. |
liquidityUsd | number or null | Total pool liquidity in USD. |
fdvUsd | number or null | Fully diluted valuation in USD. |
volume1h | number or null | 1-hour pair volume in USD. |
volume6h | number or null | 6-hour pair volume in USD. |
buys24h | number or null | Buy transactions in 24h. |
sells24h | number or null | Sell transactions in 24h. |
change5m | number or null | 5-minute price change in percent. |
change6h | number or null | 6-hour price change in percent. |
pairCreatedAt | string or null | ISO 8601 pair creation timestamp. |
dexScreenerUrl | string or null | Public DexScreener pair page. |
walletAddress | string or null | Wallet identifier. |
totalValueUsd | number or null | Total wallet value in USD. |
unrealizedPnlUsd | number or null | Open-position profit or loss in USD. |
realizedPnlUsd | number or null | Closed-position profit or loss in USD. |
pnl7dPct | number or null | 7-day total PnL in percent. |
pnl30dPct | number or null | 30-day total PnL in percent. |
winrate7dPct | number or null | Win rate of closed positions in the last 7 days. |
winrate30dPct | number or null | Win rate of closed positions in the last 30 days. |
buy7dCount | number or null | Buy transactions in the last 7 days. |
sell7dCount | number or null | Sell transactions in the last 7 days. |
tokenCount | number or null | Total distinct tokens traded. |
profitableTokenCount | number or null | Distinct tokens with positive PnL. |
avgHoldingHours | number or null | Mean holding time in hours. |
walletTags | array or null | GMGN tags such as smart_degen, kol, sniper, bundler, rat_trader. |
lastActiveAt | string or null | ISO 8601 timestamp of last on-chain activity. |
gmgnUrl | string or null | Public GMGN wallet page. |
priceSource | string | Primary source: coingecko, binance, dexscreener, or gmgn. |
lastUpdated | string or null | Upstream refresh timestamp. |
coingeckoUrl | string or null | Public CoinGecko page for CEX records. |
scrapedAt | string | Extraction 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:
watchlistresolves tickers and fetches CEX prices and market data.marketfetches the top N coins by market cap and includesdominancePct.dexuses DexScreener for token or pair lookup, including address-based and symbol-based queries.walletuses 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-coinrecords route to price, market cap, change, supply, and ATH/ATL fields.dex-pairrecords route to pair-level price, liquidity, FDV, and volume fields.wallet-holdingrecords 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.