CoinGecko API vs CoinMarketCap API
The metering gap everyone quotes has closed for live prices. What is left is a year of hourly history on one free tier, and a commercial licence on the other.
Prices, market data and onchain DEX data for 18,000+ coins, via REST, websocket or MCP.
Prices, rankings, DEX and derivatives data, metered by rows returned rather than by call.
The difference both cards lead with has mostly gone
Each card warns that the two vendors meter differently. CoinGecko charges a credit per call and CoinMarketCap a credit per batch of data points, so the monthly allowances cannot be laid side by side. For live prices, that warning is now out of date.
On 7 August 2026 CoinMarketCap moved its listings and quotes endpoints to one credit per 250
coins returned. CoinGecko's /coins/markets returns at most 250 coins a page, for one
credit. The top 1,000 coins now cost four credits on either API. Work that out per month and the
two ladders line up closely:
- Every minute that is 172,800 credits a month. Neither $35 plan covers it. The next step up is CoinMarketCap Startup at $95 or CoinGecko Analyst at $129, both billed month to month.
- Every five minutes it is 34,560 credits. Both $35 plans cover it.
- Every fifteen minutes it is 11,520 credits. That fits inside CoinMarketCap's free 15,000 and not inside CoinGecko's free 10,000.
For a board of current prices, then, the gap is one tier's worth of allowance. It is not a different unit. The unit still differs on history, and that is where the pairing splits.
History: a year of hours against a month
CoinMarketCap still charges one credit per 100 points on historical quotes and OHLCV. CoinGecko still charges one per call, however many points the call returns. That difference compounds with the depth each free tier allows:
- CoinGecko Demo reaches back 365 days. Any window of up to 90 days comes back hourly, automatically, so a year of hourly prices for one coin takes four or five requests. For a thousand coins that is about 5,000 of the 10,000 free credits.
- CoinMarketCap Basic reaches back one year for daily data and one month for intraday. Intraday history stays at one month through Builder and Startup. It is three months on Growth, and it reaches twelve only on Professional, at $875 a month.
A year of hourly prices is therefore free on one API and an $875 plan on the other. The daily case is closer. A year of daily points is one credit a coin on CoinGecko and four on CoinMarketCap, and a thousand coins fit inside either free tier.
Neither free tier gives you candles worth the name. CoinGecko's Demo OHLC endpoint returns
4-day bars for any window over 30 days, and the daily and hourly interval settings are for paid
plans only. CoinMarketCap has no coin-level OHLCV below Startup. What both free tiers return is
point-in-time prices. You can build a close series from those, but not a high or a low.
Once you are paying, the order reverses. CoinMarketCap's plan table dates daily OHLCV "from 2010" starting at Startup ($95). CoinGecko's OHLC range endpoint begins at Analyst ($129), and its documentation starts the data on 9 February 2018. If long daily candles are the job, CoinMarketCap is both cheaper and longer.
The licence works the opposite way
This is the fact neither card can state alone, because it only shows up when you put the two free tiers side by side.
CoinMarketCap's free Basic plan includes a commercial licence. It covers one product with up to 100,000 users, forbids reselling the data as a service, and requires that the data stay "an integrated component of a larger product" whose end users use it for personal, non-commercial purposes. A consumer app fits that description. A B2B dashboard sold to funds does not, on any tier below Enterprise.
CoinGecko's free Demo plan does not. On the pricing page every paid plan has "Commercial" in its licence row, while Demo has "Attribution required". The vendor's own FAQ describes Demo as good for testing and exploration. The paid licence also carries a condition: every product built on it has to display "Data provided by CoinGecko" with a link, on every plan.
The more generous free tier, then, is the one you may not ship on. The stingier one is the free tier you may ship.
The one place CoinGecko wins outright
That place is streaming at the $35 tier. CoinGecko's Basic plan includes a websocket with five sockets, including a coin-price channel. CoinMarketCap's websocket starts at Startup, $95, and below that its data refreshes every 60 seconds. If you need prices pushed to you rather than polled and you are spending under $100, only CoinGecko offers it.
Pick the ID you can leave with
The two vendors identify a coin in different ways. CoinGecko uses a string (bitcoin) and
CoinMarketCap an integer (1), which its documentation promises never to change. Both warn that
symbols are ambiguous, and CoinMarketCap resolves a clash by returning the coin with the highest
market cap. A database keyed on either vendor's ID is tied to that vendor.
The key both of them publish is chain plus contract address. It appears in CoinGecko's coin
list with include_platform=true and in CoinMarketCap's /cryptocurrency/map. Store that key
alongside the vendor ID and switching later means a join rather than a migration. Native coins
such as BTC, ETH and SOL have no contract address, so those few rows have to be mapped by hand
whichever vendor you start on.
What neither of them is
Both are aggregators. The price either one gives you is a composite across many venues. Neither offers order books or a trade-by-trade tape from centralized exchanges. If you need the book or the tape, look at Kaiko, Tardis.dev or CoinAPI, or at the exchange's own API. Every other option is in Crypto Market Data APIs.
Which one, and when
Start on CoinGecko while the data is for you: a notebook, a backfill, a model you run yourself. Its free tier gives a year of hourly prices, which CoinMarketCap charges $875 a month for.
Move to CoinMarketCap once the thing you built reaches other people and you are not paying for data. Its free tier is the only one of the two licensed for a product, as long as that product is consumer-facing and under 100,000 users.
Once you pay, let the second requirement decide. If you need a stream under $100, take CoinGecko Basic at $35. If you need daily candles from before 2018, or the whole market refreshed every minute, take CoinMarketCap Startup at $95. Either way, store contract addresses next to the vendor's IDs, so that this choice does not have to be permanent.
FAQ
Which free tier is better?
It depends on which way the data travels. CoinGecko's free Demo plan returns a year of hourly prices, which is more history than CoinMarketCap gives you below 875 dollars a month, but its licence row reads "Attribution required" rather than "Commercial" and the vendor describes it as good for testing and exploration. CoinMarketCap's free Basic plan gives you one month of intraday and one year of daily data, and it does carry a commercial licence. Use CoinGecko's for research and CoinMarketCap's for something you ship.
Does CoinMarketCap still charge one credit per 100 coins?
Not for current prices. On 7 August 2026 the listings and quotes endpoints moved to one credit per 250 coins, which is the same as the 250 coins CoinGecko returns per page for one credit. The rule of one credit per 100 data points still applies to historical quotes and OHLCV, and that is where the two vendors now cost different amounts.
Which is cheaper once I pay?
At 35 dollars a month they are level on credits for most jobs, and CoinGecko's plan adds a websocket. Once your usage outgrows that tier they split. For daily candles back past 2018, or for refreshing the whole market every minute, CoinMarketCap's 95-dollar Startup plan is the cheaper next step. CoinGecko's equivalent is Analyst at 129 dollars. Both figures are month-to-month; CoinMarketCap's pricing page opens on the annual rate.
Can I switch from one to the other later?
Yes, but not by swapping IDs. CoinGecko names a coin with a string such as bitcoin, and CoinMarketCap uses an integer such as 1. The key the two share is a chain plus a contract address, which both ID maps return. Native coins have no contract address, so for those you have to write the mapping yourself.