CoinMarketCap Crypto Scraper — Ranked Listing avatar

CoinMarketCap Crypto Scraper — Ranked Listing

Pricing

Pay per event

Go to Apify Store
CoinMarketCap Crypto Scraper — Ranked Listing

CoinMarketCap Crypto Scraper — Ranked Listing

Pull CoinMarketCap's ranked cryptocurrency listing — rank, price, market cap, volume, tags, and supply metrics — for the top coins in one run, sorted and filtered your way. We handle retries and proxy routing so the data lands. Keyless, no API key needed.

Pricing

Pay per event

Rating

0.0

(0)

Developer

DevilScrapes

DevilScrapes

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

15 hours ago

Last modified

Categories

Share


🎯 What this scrapes

CoinMarketCap's own frontend calls an internal, keyless JSON endpoint to render its ranked coin table — no account, no API key, no signature. This Actor calls that same endpoint directly and turns the response into typed rows: CMC's own cmcRank, its tags taxonomy, supply metrics, and multi-currency price quotes for however many coins you ask for, sorted and filtered the way CMC's own site lets you sort and filter. We absorb retries and route through Apify Proxy so the run finishes clean even when the endpoint hiccups.

🔥 Features

  • 🔁 Retries with exponential backoff on 408 / 429 / 5xx and network errors — up to 5 attempts, Retry-After honoured.
  • 🌐 Apify Proxy routing on every request — a fresh session if the endpoint ever throttles a shared range.
  • 🧩 Fault isolation per coin — one coin with a malformed field is skipped and logged, the rest of your run still lands.
  • 🧱 Fail-loud on schema drift — if CMC changes this undocumented endpoint's shape, we stop the run and tell you instead of shipping garbage rows.
  • 🧊 Clean, typed dataset rows — Pydantic-validated, ISO-8601 timestamps, currency-keyed quote objects.
  • 💰 One flat rate per coin — no per-currency multiplication, however many currencies you request in convert.

💡 Use cases

  • Crypto dashboards — schedule a run and pipe CMC's own ranked leaderboard into a spreadsheet or BI tool.
  • Market-research pipelines — track top movers by market cap, volume, or percent change over time.
  • Portfolio and screening tools — filter by tag (defi, nft, metaverse) or coin type before you build a watchlist.
  • Paired with our CoinGecko Actor — pull CMC's ranked leaderboard here to build a shortlist, then run coingecko-crypto-scraper for deep per-coin detail (ATH/ATL, sentiment, dev stats) on the coins you picked. Different host, different shape, same category — not a duplicate.

⚙️ How to use it

  1. Click Try for free at the top of the page.
  2. Set limit, sortBy, convert, and any filters — most fields have sensible defaults.
  3. Click Start. Output streams into the run's dataset.
  4. Export from Storage → Dataset as JSON, CSV, or Excel — or fetch via the Apify API.

For no-code workflows: install the Apify node for n8n or the Apify module for Make, connect your Apify token, and point it at DevilScrapes/coinmarketcap-crypto-scraper.

📥 Input

FieldTypeRequiredDefaultNotes
limitintegerno100Number of ranked coins to return. Max 1000 per run — advance start on a later run for more.
startintegerno11-based rank offset for pagination, e.g. 101 starts at the 101st-ranked coin.
sortBystringno"market_cap"Ranking sort key: market_cap, volume_24h, price, percent_change_1h/24h/7d/30d, name, date_added, circulating_supply.
sortTypestringno"desc"Sort direction: asc or desc.
convertarrayno["USD"]Fiat/crypto codes to price each coin in, e.g. USD, EUR. Max 3 — USD is always included.
cryptoTypestringno"all"Restrict to coins, tokens, or all.
tagSlugsarraynoOptional CMC tag slugs to filter by, e.g. defi, nft, metaverse. Leave empty for no filter.
proxyConfigurationobjectno{"useApifyProxy": true}We route every request through Apify Proxy.

Example input

{
"limit": 25,
"sortBy": "volume_24h",
"sortType": "desc",
"convert": ["USD", "EUR"],
"cryptoType": "all",
"proxyConfiguration": {
"useApifyProxy": true
}
}

📤 Output

One flat row per coin — quotes is an object keyed by currency code, not a list, so requesting multiple convert currencies never multiplies the billed rows for one coin.

FieldTypeNotes
cmcRankintegerCoinMarketCap's own ranking position for this coin.
coinIdintegerCMC internal numeric coin ID.
namestringCoin name, e.g. Bitcoin.
symbolstringTicker symbol, e.g. BTC.
slugstringCMC URL slug, e.g. bitcoin.
tagsarrayCMC tag taxonomy for this coin, e.g. mineable, defi, pow.
isActivebooleanWhether CMC lists this coin as active.
dateAddedstringISO-8601 — date CMC added this coin.
lastUpdatedstringISO-8601 — CMC's last update timestamp for this coin.
marketPairCountintegerNumber of trading pairs CMC tracks for this coin.
circulatingSupplynumberCirculating supply.
totalSupplynumber | nullTotal supply, when known.
maxSupplynumber | nullMax supply cap, when known.
quotesobjectPer-currency quote data, keyed by requested currency code (e.g. USD, EUR) — price, volume24h, marketCap, percentChange1h/24h/7d/30d, dominance.
coinmarketcapUrlstringCanonical CMC currency page URL, constructed from slug.
scrapedAtstringISO-8601 UTC timestamp at row creation.

Example output

{
"cmcRank": 1,
"coinId": 1,
"name": "Bitcoin",
"symbol": "BTC",
"slug": "bitcoin",
"tags": ["mineable", "pow", "sha-256", "store-of-value"],
"isActive": true,
"dateAdded": "2010-07-13T00:00:00.000Z",
"lastUpdated": "2026-09-10T08:43:00.000Z",
"marketPairCount": 12736,
"circulatingSupply": 20082250.0,
"totalSupply": 20082250.0,
"maxSupply": 21000000.0,
"quotes": {
"USD": {
"price": 78046.72,
"volume24h": 28960995058.07,
"marketCap": 1567353676607.12,
"percentChange1h": 0.11,
"percentChange24h": -2.02,
"percentChange7d": 0.26,
"percentChange30d": 21.85,
"dominance": 59.02
}
},
"coinmarketcapUrl": "https://coinmarketcap.com/currencies/bitcoin/",
"scrapedAt": "2026-09-10T12:00:00Z"
}

💰 Pricing

Pay-Per-Event — you pay only when these events fire:

EventUSDWhat it is
actor-start$0.20One-off warm-up charge per run
coin-result$0.003Per ranked-coin row written (≈ $3.00 / 1 000)

Example: 1 000 coin rows at the rate above ≈ $3.20 including the one-off start fee. No subscription, no minimum, no card to start — Apify gives every new account $5 of free credit.

🚧 Limitations

  • Ranking/listing snapshot only — no per-coin detail pages, historical OHLCV charts, exchange listings, or news in this version.
  • No auto-pagination across multiple start pages in one run — one run is one HTTP call, by design, for predictable cost.
  • convert currency codes are validated for shape only, not against CMC's actual supported-currency list — an unsupported code simply won't appear in quotes.
  • This is CMC's own undocumented internal endpoint, not the paid pro-api.coinmarketcap.com — if CMC changes its shape, the run fails loud rather than shipping bad data.

❓ FAQ

Do I need a CoinMarketCap account or API key?

No. This Actor calls CMC's own public frontend endpoint — the same one coinmarketcap.com uses to render its ranked table — no account, no key, no signature.

How is this different from your CoinGecko Actor?

This Actor pulls CMC's ranked leaderboard (top N coins by market cap/volume/etc., CMC's own cmcRank and tags). coingecko-crypto-scraper is a per-coin detail lookup for a list you already picked. Use this one to build the list, that one to enrich it.

Can I get more than 1000 coins in one run?

Not in a single run — limit caps at 1000 to keep payload size and cost predictable. Advance start past where the last run left off and run again.

What happens if my tagSlugs filter matches nothing?

The run finishes successfully with zero rows and a status message stating the filters used — you're never charged the result rate for rows that don't exist.

Why is quotes a per-currency object instead of a list?

So one coin stays one billed row no matter how many currencies you request in convert — requesting 3 currencies doesn't triple your bill for the same coin.

💬 Your feedback

Spotted a bug, hit a weird edge case, or need a new field? Open an issue on the Actor's Issues tab in Apify Console — we ship fixes weekly and we read every report.