CoinPaprika API
Free cryptocurrency API with no key: prices, market cap, volume, supply and developer activity for 2,500+ coins with generous limits. Tested example.
Endpoint tested and returned HTTP 200 on 20 Aug 2026
What is the CoinPaprika API?
CoinPaprika is a free cryptocurrency market data API requiring no API key, covering more than 2,500 coins with prices, market capitalisation, volume, supply figures, ATH data and even developer activity metrics.
CoinPaprika sits between CoinGecko's rich data and CoinLore's permissiveness: no key required, a genuinely usable free limit, and more fundamental data than most free crypto APIs offer.
The all-time-high fields are a differentiator worth knowing about — `ath_price` and `percent_from_price_ath` let you show how far a coin has fallen from its peak, which most free APIs omit entirely.
Quick facts
- Base URL
https://api.coinpaprika.com/v1- Authentication
- No API key required on the free tier.
- Rate limit
- Around 20,000 requests per month on the free keyless tier.
- Pricing
- Free tier; paid plans for higher volume and more history.
- CORS
- Not enabled — call it from your server
- Official docs
- Read the docs
How to use the CoinPaprika API
Every request below was executed against the live API on 20 Aug 2026, and the response shown is the real body it returned — not an illustration.
1. Fetch a cryptocurrency ticker
GET https://api.coinpaprika.com/v1/tickers/btc-bitcoin
curl 'https://api.coinpaprika.com/v1/tickers/btc-bitcoin'const res = await fetch("https://api.coinpaprika.com/v1/tickers/btc-bitcoin");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://api.coinpaprika.com/v1/tickers/btc-bitcoin", timeout=20)
res.raise_for_status()
print(res.json()){
"id": "btc-bitcoin",
"name": "Bitcoin",
"symbol": "BTC",
"rank": 1,
"total_supply": 20072578,
"max_supply": 21000000,
"beta_value": 1.00392,
"first_data_at": "2010-07-17T00:00:00Z",
"last_updated": "2026-08-19T21:55:15Z",
"quotes": {
"USD": {
"price": 69717.90860905955,
"volume_24h": 32741485961.920124,
"volume_24h_change_24h": 120.63999938964844,
"market_cap": 1399418158552,
"market_cap_change_24h": 7.980000019073486,
"percent_change_15m": 0.28999999165534973,
"percent_change_30m": 0.23999999463558197,
"percent_change_1h": 0.8600000143051147,
"percent_change_6h": 1.5299999713897705,
"percent_change_12h": 8.350000381469727,
"percent_change_24h": 7.980000019073486,
"percent_change_7d": 10.0600004196167,
"percent_change_30d": 0,
"percent_change_1y": 0,
"ath_price": 126173.1777846797,
"ath_date": "2025-10-06T19:00:40Z",
"percent_from_price_ath": -44.74
}
}
}Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
tickers/<coin-id> | path | Optional | Ticker for one coin. tickers/btc-bitcoin |
tickers | path | Optional | All coins. tickers |
quotes | string | Optional | Comma-separated quote currencies. USD,EUR |
coins/<coin-id> | path | Optional | Full coin profile including team and links. coins/btc-bitcoin |
Response fields
id / name / symbolstring- Coin identifiers — ids are slug-style like btc-bitcoin.
rankinteger- Market cap rank.
total_supply / max_supplyinteger- Supply figures.
quotes.USD.pricenumber- Current price — a real number, not a string.
quotes.USD.market_capnumber- Market capitalisation.
quotes.USD.percent_change_24hnumber- 24-hour change.
quotes.USD.ath_pricenumber- All-time high price.
quotes.USD.percent_from_price_athnumber- How far below the all-time high it currently sits.
What you can build with the CoinPaprika API
- Show crypto prices with all-time-high context
- Build a portfolio tracker with supply and market cap data
- Compare coins by distance from their peak
- Provide a fallback when CoinGecko rate limits are hit
Common errors and how to fix them
404
Coin ids are slug-style, not tickers.
Fix: Use btc-bitcoin rather than BTC. Fetch /coins once to build a symbol-to-id map.
Quotes missing for a currency
Only requested quote currencies are returned.
Fix: Pass quotes=USD,EUR explicitly if you need more than the default.
Monthly quota exhausted
The free tier is metered monthly, not per minute.
Fix: Cache aggressively; a burst is fine but sustained polling will exhaust the month.
CoinPaprika API — frequently asked questions
Does CoinPaprika need an API key?
No, the free tier works with no key at around 20,000 requests per month.
What coin id format does it use?
Slug-style ids combining symbol and name, such as btc-bitcoin or eth-ethereum — not bare ticker symbols.
What does percent_from_price_ath tell me?
How far the current price sits below its all-time high. Most free crypto APIs omit ATH data entirely, so this is a genuine differentiator.
How does it compare with CoinGecko?
CoinGecko has broader coverage and better documentation; CoinPaprika has a more predictable keyless limit and includes ATH and developer activity data. Both are worth having as fallbacks for each other.
Tools that pair with this API
JSON Formatter
Format, beautify and minify JSON online with 2-space, 4-space or tab indentation. Sort keys alphabetically and catch syntax errors instantly — free and private.
Percentage Calculator
Calculate what X% of a number is, what percent one number is of another, and percentage increase or decrease between two values — instantly and free.
Alternatives to CoinPaprika API
If CoinPaprika does not fit, these finance & crypto apis cover similar ground. Every one was called before publishing, and each links to its own reference page with a working curl command and the response it returned.
| API | What it does | Auth | CORS | Last verified |
|---|---|---|---|---|
| CoinGecko | Free cryptocurrency price API covering 10,000+ coins. Live prices, market cap and volume in any currency, no API key on the public tier. Tested curl example. | No key | Yes | 19 Aug 2026 |
| Binance Public API | Binance public market data API needs no API key: live ticker prices, order books, klines and 24h stats for every trading pair. Tested curl example and response. | No key | Yes | 19 Aug 2026 |
| Coinbase Exchange Rates | Coinbase public exchange rates API with no key: convert any cryptocurrency to 100+ fiat currencies in a single request. Tested curl example and live JSON. | No key | Yes | 19 Aug 2026 |
| Frankfurter | Free currency exchange rate API with no key, built on European Central Bank data. Latest and historical rates, time series and conversion. Tested curl example. | No key | Yes | 19 Aug 2026 |
| Colombia TRM (datos.gov.co) | Free API for Colombia's official TRM exchange rate on datos.gov.co: the representative market rate with its validity window, queryable by date. No key, tested example. | No key | Yes | 21 Aug 2026 |
| Croatian National Bank | Free Croatian National Bank API with no key: official EUR buying, middle and selling rates for every quoted currency, current or for any past date. Tested example included. | No key | No | 21 Aug 2026 |
CoinPaprika is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 20 Aug 2026; always check the official documentation before relying on this API in production, as terms and limits can change.