Crypto data API quota calculator
Price one crypto data job in each API's own unit, weight, credits or requests, and see whether it fits the free tier or how many times over it runs.
Enter how many symbols you track, the candle interval, how often you refresh, how much history you backfill and how often you poll prices. The calculator converts that job into Binance request weight, OKX requests, CoinGecko and CoinMarketCap credits, CoinAPI credits and Glassnode credits, using each provider's published cost per request, and sets the result against that provider's own quota and per-minute limit. Providers whose meter has no published formula are named and left out.
Pairs or coins the job covers. Each is one request per refresh unless a card documents a batch rule.
365 candles per symbol at this interval. 0 for no backfill.
Optional. Each poll asks for the latest price of every symbol. 0 for none.
The job
20 requests a day once it is running (one per symbol per refresh and per poll), plus a backfill of 7,300 candles in all.
What it costs on each provider, in that provider’s unit
| Provider and tier | Backfill, once | Running, against the quota | Busiest minute | Verdict |
|---|---|---|---|---|
| BinancePublic, no keyQuota: 6,000 weight a minute | 40 weight | Per-minute budget; see busiest minute | 40 of 6,000weight a minute | Fits the free tier |
| OKXPublic, no keyQuota: none (rate limits only) | 40 requests | No budget; rate limits only | 20 of 1,200candle requests a minute | Fits the free tier |
| CoinGeckoDemoQuota: 10,000 credits a month | 20 credits0.2% of one month’s quota | 600 of 10,000 creditsa month | 20 of 100requests a minute | Fits the free tier |
| CoinMarketCapBasicQuota: 15,000 credits a month | — | — | — | Candles not on this tier: coin-level OHLCV, latest and historical, starts at Startup ($95 a month) |
| CoinAPIStartup ($79 a month; there is no free plan)Quota: 1,000 credits a day | 80 credits8% of one day’s quota | 20 of 1,000 creditsa day | No per-minute limit stated | Fits the Startup plan's quota |
| GlassnodeProfessional, Base access (annual, from $7,000 a year)Quota: 50 credits a month | 39 credits78% of one month’s quotaabout 4 min paced at the limit | 1,170 of 50 creditsa month | 20 of 5requests a minute | Needs 24× the Professional plan's quota |
Not modelled: Dune — charges credits for compute it prices only after a query runs, and its two billing pages disagree on what reading a result costs; the free plan is a 14-day trial; CryptoQuant — the deduction scales with the rows returned and the data type, and no rate card is published; Nansen — its OHLCV sits in a backtesting endpoint group whose credit cost neither the card nor the guide states; Amberdata — the price is a subscription per exchange and market, not a meter; a call outside the subscribed venue is rejected rather than charged; Kaiko — the price is a contract quoted per instrument, data type and granularity; the 6,000 requests a minute is a ceiling, not what you pay for.
Assumptions: a month is 30 days; a refresh fires every symbol in the same minute; where a card states no page size, a candle request returns 1,000. Rate limits: Binance (the quota is per minute); OKX per endpoint, per 2 seconds: candles 40, history-candles 20, tickers 20; CoinGecko 100 requests a minute; CoinMarketCap 50 requests a minute; CoinAPI not stated; Glassnode 5 requests a minute. Quotas and per-request costs as of Binance 2026-09-19, OKX 2026-09-19, CoinGecko 2026-10-04, CoinMarketCap 2026-09-26, CoinAPI 2026-09-19, Glassnode 2026-09-19.
What it computes
One job, priced six ways. The job is what you would write down before opening any pricing page: how many symbols, which candle interval, how often you fetch the new candles, how many days of history you load once at the start, and whether you also poll a latest price several times a minute. The calculator turns that into requests, then into each provider's own unit, and then sets it against two different limits, because every provider here has one or both of them.
The budget. A quantity that runs out: Binance request weight per minute, CoinAPI credits per day, CoinGecko, CoinMarketCap and Glassnode credits per month. The running job is converted into the budget's own period, so a per-day load is compared with a per-day quota and multiplied out to a month for a monthly one. Where it does not fit, the verdict says by how many times, rounded up.
The rate. A ceiling on how fast you may ask, whatever the budget says: calls per minute on CoinGecko, CoinMarketCap and Glassnode, and per-endpoint counters in requests per two seconds on OKX, which has no budget at all. The busiest minute is taken to be the one in which a refresh fires every symbol at once, plus that minute's ticker polls. A job that exceeds the ceiling can usually be paced out; the verdict flags it so that you plan the pacing rather than meet a 429.
The backfill is shown separately, because it happens once: its cost in the provider's unit, the share of one period's quota it uses, and how long it takes when paced at the rate limit.
Where the numbers come from
Two places, both already on this site and both dated. What one request costs in each unit comes
from why API quotas don't compare, which reads it from each
provider's own documentation and cites the page: Binance's weight per endpoint, CoinGecko's credit
per successful call, CoinMarketCap's credit per 250 items on latest quotes, CoinAPI's credit per
100 points returned when a call uses limit, and Glassnode's credit per asset per request. The
quota, the per-minute limit, the page size and the history each tier reaches come from the
provider's card, each verified on the date the rate table prints beside it.
The default scenario is the guide's own worked job, a year of daily candles for 20 assets, refreshed once a day. Its backfill column should match the guide's table line for line; where it does not, one of the two pages is wrong, and the error report at the foot of this page is the way to say so.
The figures live in one table that both this form and the page's Markdown twin read, so the twin prints every number the form multiplies, with its document and date.
What it leaves out
Providers whose meter is not a formula. Dune charges for compute it prices only after a query runs, and its two billing pages disagree on what reading a result costs. CryptoQuant deducts by rows returned and data type and publishes no rate card. Nansen serves OHLCV from a backtesting endpoint group whose credit cost is not stated. Amberdata and Kaiko sell access per venue, market or instrument; the meter exists but is not what you pay for. The rest of the market data APIs are not in the guide's conversion and are not modelled yet.
Quota changes. Free tiers in this market are re-cut, often without notice: CoinMarketCap changed what a credit buys on 7 August 2026, and its own pages still disagree about the free allowance. The table carries the date each figure was read. Check the provider's page before relying on a verdict near the line.
Enterprise tiers and overage. Each provider is modelled at the cheapest tier that has an API: free for Binance, OKX, CoinGecko and CoinMarketCap, Startup for CoinAPI, which has no free plan, and Professional with its included credits for Glassnode. Higher tiers, purchased credit packs and CoinAPI's metered overage are not priced; "needs 4× the quota" is the question to take to the pricing page, not its answer.
Websocket streams. A stream is metered differently, by connection, by subscription or by bytes, and a job that streams candles instead of polling them does not spend REST weight or credits in the way modelled here. CoinAPI bills websocket data by the gigabyte and CoinGecko charges a fraction of a credit per websocket response; neither is in the table.
The page size. Where a card states how many candles one request returns, that figure is used: 1,000 on Binance and 300 on OKX, applied to OKX's history endpoint too because the card states no separate figure for it. Where a card states none, as for CoinAPI, the calculator assumes 1,000 and says so. A smaller real page means more requests, which matters for the rate limit; on CoinAPI's per-100-points meter it barely changes the credits.
Batching, per-IP sharing and failed calls. Each symbol is one request, except on CoinMarketCap where the card documents the batch rule for latest quotes. An endpoint that prices many symbols in one call would cost less than shown. Binance and OKX count per IP, so every process behind one address shares the budget. Retries are not counted, and on CoinGecko a failed call spends rate but not credits.
CoinGecko's candles are price points. On the Demo plan the historical chart endpoint returns prices at a granularity chosen from the range, not OHLC candles; it is what the guide prices and what is modelled here. Its OHLC endpoint returns 4-day candles beyond 30 days on Demo.
Tools this bears on
Cards in the catalogue where the number above changes the decision.
Binance Market Data API
One venue's own tape — prices, books, trades and funding, free and unkeyed.
FreeFree tier
OKX Market Data API
Public v5 endpoints for spot, swaps, futures and options — open, and tightly licensed.
FreeFree tier
CoinGecko API
Prices, market data and onchain DEX data for 18,000+ coins, via REST, websocket or MCP.
$35/moFree tier
CoinMarketCap API
Prices, rankings, DEX and derivatives data, metered by rows returned rather than by call.
$35/moFree tier
CoinAPI Market Data API
One symbol scheme over 400+ venues, metered in REST credits and WebSocket gigabytes.
$79/mo
Glassnode
A curated metric set in a charting studio, with the API on a separate annual plan.
$99/moFree tier
FAQ
Why does the same job fit one free tier and need twenty times another?
Because the units are different. Binance meters request weight that refills every minute, so a modest job barely registers. Glassnode charges credits per asset per request out of a small monthly allowance, so refreshing twenty assets every day spends that allowance in under two days. Neither number means anything until it is multiplied out to the same job.
Does a free tier that fits mean the job is free?
It means the meter will not stop you. It says nothing about the licence. The Binance and OKX market data is free to read but not free to redistribute, CoinGecko's Demo plan requires attribution, and CoinMarketCap's free licence covers products for personal, non-commercial end users. Read the terms on each card before shipping anything other people see.
Why is CoinMarketCap marked as unable to do a candle job on the free plan?
Coin-level OHLCV, latest and historical, starts at the Startup plan on CoinMarketCap. The free Basic plan can still price the ticker part of a job, at one credit per 250 symbols on the latest-quotes endpoint, but not the candles.
Why are Dune, CryptoQuant and Kaiko not in the table?
Their meters cannot be written as a formula from their own documentation. Dune prices compute after a query runs, CryptoQuant's deduction scales with rows and data type without a rate card, and Kaiko and Amberdata sell an entitlement per venue or instrument rather than per request. The calculator names them rather than guessing.
Sources
- Market data endpoints, Spot REST API (request weights per endpoint) — Binance, read
- API v5 reference, Market Data and Public Data rate-limit rules — OKX, read
- Authentication, Usage Credits — CoinGecko, read
- Coin Historical Chart Data by ID, auto-granularity — CoinGecko, read
- API reference, Cryptocurrency endpoints (credit use per endpoint) — CoinMarketCap, read
- Market Data API FAQ, credit consumption and the limit parameter — CoinAPI, read
- Market Data API pricing, REST credits — CoinAPI, read
- Data Credits — Glassnode, read
The catalogue next door
This page multiplies published limits; it lists nothing. The products the number bears on are in Crypto Market Data APIs, each filled in against the same schema.
Last updated . The figures are re-read from the providers’ documentation on that date; corrected in place.