BYTETOOLS

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.

No API key requiredHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-20

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 2026-08-20, 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
curl 'https://api.coinpaprika.com/v1/tickers/btc-bitcoin'
JavaScript (fetch)
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);
Python (requests)
import requests

res = requests.get("https://api.coinpaprika.com/v1/tickers/btc-bitcoin", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200
{
  "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

ParameterTypeRequiredDescription
tickers/<coin-id>pathOptionalTicker for one coin. tickers/btc-bitcoin
tickerspathOptionalAll coins. tickers
quotesstringOptionalComma-separated quote currencies. USD,EUR
coins/<coin-id>pathOptionalFull 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

CoinPaprika is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-20; always check the official documentation before relying on this API in production, as terms and limits can change.