CoinGecko Scraper - Crypto Prices & Market Rankings
Pricing
$2.00 / 1,000 coin returneds
CoinGecko Scraper - Crypto Prices & Market Rankings
On CoinGecko a coin's key is a slug, not its ticker: BNB is binancecoin, XRP is ripple. Top coins by market cap or your own id list, with price, market cap and rank, 24h volume, 24h and 7d change, supply, ATH and ATL. Name search returns ids only. No key. $2.00 per 1,000 coins.
Pricing
$2.00 / 1,000 coin returneds
Rating
5.0
(2)
Developer
Dami's Studio
Maintained by CommunityActor stats
0
Bookmarked
4
Total users
0
Monthly active users
3 days ago
Last modified
Categories
Share
CoinGecko Scraper
On CoinGecko a coin's key is a slug, not its ticker. BNB is binancecoin; XRP is ripple. Get the id right and the rest of the public API is straightforward: top coins by market cap, a name or symbol lookup, or a specific list of coins, one row each, no API key.
Three modes
mode | What it does |
|---|---|
markets | Top coins ranked by market cap. Pages 250 at a time up to your maxItems. This is the default. |
coins | Exactly the coins you name in coinIds. Same full row shape as markets. |
search | Name or symbol lookup. Lighter rows — see the warning below. |
What you get per coin
In markets and coins mode:
{"ok": true,"id": "bitcoin","symbol": "BTC","name": "Bitcoin","price": 76971,"marketCap": 1544943714252,"marketCapRank": 1,"volume24h": 67826956480,"change24hPct": 7.2,"change7dPct": 23.4,"circulatingSupply": 20071518,"ath": 126080,"athDate": "2025-10-06T10:57:42.000Z","atl": 67.81,"image": "https://coin-images.coingecko.com/coins/images/1/large/bitcoin.png","url": "https://www.coingecko.com/en/coins/bitcoin"}
search mode returns only id, name, symbol, marketCapRank, image and url. No price, no market cap, no volume, no change. It costs the same per row, so use it to find a coin's id and then run coins mode with that id if you want the numbers.
Input
{ "mode": "markets", "vsCurrency": "usd", "maxItems": 250 }
{ "mode": "coins", "vsCurrency": "eur", "coinIds": ["bitcoin", "ethereum", "solana"] }
{ "mode": "search", "query": "solana" }
| Field | Default | Notes |
|---|---|---|
mode | markets | markets, search or coins. |
vsCurrency | usd | What prices, market cap and volume are quoted in. Any currency CoinGecko supports: usd, eur, gbp, jpy, btc, eth and the rest of its list. Used by markets and coins. |
query | — | Search term. search mode only. |
coinIds | — | CoinGecko ids — the slug from a coin's page URL. coins mode only. |
maxItems | 100 | markets mode only, up to 5,000. |
proxyConfiguration | off | Optional. The public API needs no proxy; it only helps if you're repeatedly hitting 429s on bulk runs, and it spends metered credit. |
notionConnector / notionParentId | — | Optional delivery into Notion via an Apify MCP connector. |
Limits worth knowing
- The free public API is rate-limited, roughly 10 to 30 requests a minute. On a 429 the actor honours
Retry-Afterand backs off up to about a minute rather than failing. That costs run time on big sweeps, so space large runs out. - This is a snapshot, not a feed. One row per coin at the moment of the run. There's no historical series and no candles.
change7dPctis only requested inmarketsandcoinsmode, and CoinGecko doesn't report every metric for every coin. Any numeric field can benull.atlhas no date field.athhasathDate; the all-time low doesn't get one from this endpoint.- Rows are deduplicated by
id.
Billing
$2.00 per 1,000 coins ($0.002 each), with no run-start fee. Flat on every plan.
One charge per coin row, and that's the only line on the bill. Diagnostic rows (NO_RESULTS, BAD_INPUT, RATE_LIMITED) are never charged, so a throttled run costs $0.00 even though the back-off burns wall clock.
One thing to watch: a search row costs the same $0.002 as a full market row and carries six fields instead of fifteen. If you're after prices, use markets or coins.
When something comes back empty
Read the errorCode on the diagnostic row. BAD_INPUT means a mode, query or id was missing or wrong. RATE_LIMITED means CoinGecko throttled the run — wait a bit and try again, or turn the proxy on.