The CoinGecko API Alternative
That Keeps Your IDs
Keep the CoinGecko slugs you already store: one call resolves each to a Coinranking coin, and coinGeckoId comes back on every response after that. 2.3M+ coins, price history to 2010, one API call per request.
30 days free, then $199 a month. Card required, cancel any time.
$199/month · 30-day free trial · https://api.coinranking.com/v2/mappings/coingecko/coin/:id
# The CoinGecko id you already store, e.g. 'bitcoin', 'ethereum', 'tether'
curl 'https://api.coinranking.com/v2/mappings/coingecko/coin/bitcoin' \
-H 'x-access-token: YOUR_KEY'
# Returns the same response as /coin/:uuid, with the UUID to store
# and coinGeckoId echoed back on every later responseKeep Your CoinGecko IDs. Change One Base URL.
Migrations fail on identifiers, not on data. This removes that step.
Takes CoinGecko's slug (bitcoin, ethereum, tether) and returns the same response as /coin/:uuid. Accepts referenceCurrencyUuid and timePeriod.
- GET/coins
The list and details endpoints carry coinGeckoId on every coin, on every plan, so lookups back to your old keys never cost a call.
- Start a 30-day Professional trial; one key per environment.
- For each row keyed by CoinGecko slug, call the mapping endpoint once and store the
uuid. - Swap each CoinGecko call for its Coinranking counterpart from the table below, starting with
/coins/markets. - Replace polling with the SSE or WebSocket stream where a minute-old price was the pain.
From /coins/markets to /coins, Endpoint by Endpoint
The eight CoinGecko calls most integrations are built on, and the Coinranking call that replaces each.
| CoinGecko | Coinranking | What changes |
|---|---|---|
/coins/markets | /coins | Ranked list with price, market cap, 24h volume, change, sparkline. Up to 5,000 per request on paid plans, one API call. |
/simple/price | /coins?uuids[]=… | Prices for a set of coins in one request. Pass the UUIDs; any of 180+ reference currencies. |
/coins/{id} | /coin/:uuid | Details, supply, links, and the same market figures as the list. |
/coins/{id}/market_chart | /coin/:uuid/history?timePeriod= | Price history. Since 2010 on paid plans; one year on Free. timePeriod from 1h to 5y. |
/coins/{id}/ohlc | /coin/:uuid/ohlc | Candles for charting. Professional. |
/coins/list | /mappings/coingecko/coin/:id | Your id map, the other way round: one slug in, one coin out. coinGeckoId is also on every /coins row. |
/exchanges | /exchanges | Exchange list with volume and markets. Professional. |
/global | /stats | Total market cap, 24h volume, Bitcoin dominance. |
CoinGecko paths from docs.coingecko.com/reference, Coinranking paths from coinranking.com/api/documentation, both verified 16 September 2026.
Coinranking and CoinGecko, Side by Side
The terms that differ, so the port is predictable.
| Coinranking | CoinGecko | |
|---|---|---|
| Coin identifier | UUID, e.g. Qwsogvtv82FCd; CoinGecko slug accepted by the mapping endpoint | Slug, e.g. bitcoin |
| What one request costs | 1 API call, however many rows or data points | Call credits, deducted from the monthly plan |
| Paid plans | Startup $49 for 1,000,000 calls; Professional $199 for 5,000,000 | Basic $35 for 100k credits; Analyst $129 for 500k; Lite $499 for 2m |
| Price history | Since 2010 on paid plans; 1 year on Free | Capped on Basic; daily from 2013 from Analyst ($129) |
| Rows per list request | Up to 5,000 on paid plans | Up to 250 (per_page) |
| WebSocket billing | Per connection: 1 API call per socket | 0.1 credit per message received (self-serve) |
| WebSocket status | Live; SLA available as an add-on | Beta; excluded from the SLA |
| Price streaming over SSE | Included in Professional; recommended for front ends | None documented; its /sse endpoint is the MCP transport for AI clients, not a price feed |
CoinGecko plans and history from coingecko.com/en/api/pricing and docs.coingecko.com/reference/coins-id-market-chart; per_page from docs.coingecko.com/reference/coins-markets; WebSocket figures from docs.coingecko.com/websocket; SSE row from docs.coingecko.com/docs/mcp-server. All verified 16 September 2026.
Why Teams Switch from CoinGecko
Three differences, each with the figure behind it.
One Request, One Call
A /coins request returning 5,000 rows is one API call, the same as one returning 10. Nothing to budget per row, per data point or per currency.
History to 2010 on Every Paid Plan
Every paid plan returns price history since 2010. On CoinGecko, history is capped on Basic and daily data from 2013 starts at Analyst, $129 a month.
Slugs In, UUIDs Out
The mapping endpoint takes the slug you store; every response carries coinGeckoId. No spreadsheet of id pairs, and both providers run side by side during the trial.
Mapping by Plan
The mapping endpoint needs the Professional plan. The coinGeckoId field on every coin is on every plan, including Free.
| Free · $0 | Startup · $49/mo | Professional · $199/mo | |
|---|---|---|---|
| Price | $0 | $49 | $199 |
| /mappings/coingecko/coin/:id | — | — | Included |
| coinGeckoId on every coin | Included | Included | Included |
| Price history | 1 year | Since 2010 | Since 2010 |
| WebSockets and SSE | — | — | Included |
| Free trial | — | 30 days | 30 days |
30-day free trial on Professional. Compare every plan.
CoinGecko Switching Questions
GET /coins on Coinranking API. It returns the ranked market with price, market cap, 24h volume, change and a sparkline per coin, the same fields a /coins/markets call gives you, plus coinGeckoId on every row. One request returns up to 5,000 coins on paid plans and counts as one API call, whichever page size you ask for. See the coins endpoint docs.
Yes. GET /mappings/coingecko/coin/:id takes the CoinGecko slug exactly as CoinGecko publishes it, bitcoin, ethereum, tether, and returns the Coinranking coin with its UUID, which every other endpoint takes. Store the UUID next to the slug once; later responses carry coinGeckoId, so the two systems stay linked without another lookup. See the coin mapping docs.
Coinranking API counts one API call per request, however many coins or data points it returns, and one call per WebSocket or SSE connection, however many messages arrive. CoinGecko bills call credits: Basic is $35 a month for 100k credits, Analyst $129 for 500k, Lite $499 for 2m, and its WebSocket charges 0.1 credit per message. Coinranking Startup is $49 for 1,000,000 calls and Professional $199 for 5,000,000, per coingecko.com/en/api/pricing and the Coinranking pricing page, September 2026.
Coinranking API returns price history since 2010 on Startup and Professional, and one year on Free, through GET /coin/:uuid/history. CoinGecko caps history on its Basic plan and offers daily data from 2013 from the Analyst plan at $129 a month, per its pricing page and the market_chart reference, September 2026. Every Coinranking paid plan includes the full history.
Coinranking coin mapping endpoint is Professional, at $199 a month with a 30-day free trial, long enough to migrate a database and run CoinGecko and Coinranking side by side before the first invoice. The coinGeckoId field on ordinary coin responses is on every plan, including Free.
Coinranking identifies coins by UUID rather than slug, authenticates with an x-access-token header or Authorization: Bearer, prices in US dollars by default with referenceCurrencyUuid for 180+ other currencies, and selects a history range with timePeriod rather than days. A few response fields start with a digit, such as 24hVolume, and need bracket notation in JavaScript. Everything else is documented per endpoint.
More of Coinranking API
Same key, same base URL.
Switch from CoinGecko
Map your CoinGecko slugs and run both providers side by side. Professional is free for 30 days.
30 days free, then $199 a month. Card required, cancel any time.