CoinMarketCap API: pricing tiers and builder quickstart
CMC Pro API plan matrix (Basic free through Enterprise), credits, WebSocket, keyless trial, and a thin quotes/listings PoC for Solana builders.
devrels.xyz/a/254short linkCoinMarketCap API: pricing tiers and builder quickstart. CoinMarketCap sells the industry-default market data feed — listings, quotes, OHLCV, exchange metadata, global metrics, and a growing DEX surface — over REST (and WebSocket on higher tiers). This page captures the public pricing matrix and how Solana app builders should use it next to on-chain oracles.
What you get
| Family | Examples |
|---|---|
| Market data | Prices, mcap, volume, rankings, quotes, OHLCV history |
| Exchanges | Metadata, pairs, volumes, related exchange intel |
| DEX | On-chain tokens/pairs/liquidity/OHLCV (expanding suite) |
| Market intelligence | Global metrics, Fear & Greed, content/community signals |
CMC is an off-chain market data vendor. For settlement, liquidations, or program-side pricing on Solana, prefer Pyth / Switchboard-class oracles. Use CMC for UI tickers, portfolio display, research, screening, and agent tools that need broad catalog coverage.
Pricing (list — re-check live)
Source: coinmarketcap.com/api/pricing. Marketing also shows yearly discounts and occasional coupon codes; numbers below are the monthly list tiers scraped from the pricing page (verify before purchase).
| Plan | Price | Credits / mo | Notes (from pricing page) |
|---|---|---|---|
| Basic | Free | ~15K | Entry endpoints; signup for free key |
| Builder | $29 | 150K | 60+ endpoints; ~3y history; commercial use |
| Startup | $79 | 450K | 70+ endpoints; all-time history; WebSocket |
| Growth | $299 | 2M | All endpoints; WS; typical production |
| Professional | $699 | 5M | Scale; higher RPM / conversions |
| Enterprise | Custom | Custom (page shows large credit bands) | Custom license, SLA, Slack support |
| Plan | Rate limit (approx.) | WebSocket | Update frequency |
|---|---|---|---|
| Basic | 50 req/min | — | ~60s |
| Builder | 300 req/min | — | ~60s |
| Startup | 600 req/min | Yes (limited connections) | Real-time tiering |
| Growth | 750 req/min | Yes | Real-time tiering |
| Professional | 1200 req/min | Yes | Real-time tiering |
| Enterprise | 1600+ req/min | Custom | Real-time tiering |
Keyless public/trial: CMC also exposes paths that need no key for evaluation (docs advertise /public-api and trial-style hosts). Limits are tight — fine for smoke tests, not production.
Auth and base URL
# Production REST
export CMC_API_KEY="your_key"
curl -sG "https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest" \
-H "X-CMC_PRO_API_KEY: $CMC_API_KEY" \
-H "Accept: application/json" \
--data-urlencode "symbol=SOL,BTC" \
--data-urlencode "convert=USD"
# Keyless-style evaluate (path may evolve — check docs)
curl -sG "https://pro-api.coinmarketcap.com/public-api/v1/simple/price" \
--data-urlencode "ids=1,5426" \
--data-urlencode "convert=USD"Docs index (incl. llms.txt for agents): pro.coinmarketcap.com API documentation · llms.txt. CMC also markets MCP / agent hub / x402 surfaces on the API product pages — treat those as optional distribution channels on top of the same data core.
Thin PoC — listings + quotes
// Server-side only — never ship the Pro key to browsers
const BASE = "https://pro-api.coinmarketcap.com"
async function cmc<T>(path: string, query: Record<string, string>, key: string): Promise<T> {
const url = new URL(path, BASE)
for (const [k, v] of Object.entries(query)) url.searchParams.set(k, v)
const res = await fetch(url, {
headers: {
"X-CMC_PRO_API_KEY": key,
Accept: "application/json",
},
})
if (!res.ok) throw new Error(`CMC ${res.status} ${await res.text()}`)
return res.json() as Promise<T>
}
export async function topByMcap(key: string, limit = 50) {
return cmc("/v1/cryptocurrency/listings/latest", {
start: "1",
limit: String(limit),
convert: "USD",
}, key)
}
export async function quoteSymbols(key: string, symbols: string[]) {
return cmc("/v1/cryptocurrency/quotes/latest", {
symbol: symbols.join(","),
convert: "USD",
}, key)
}
// Solana app pattern:
// 1) CMC for display mcap / USD labels in UI or bots
// 2) Pyth/Hermes (or pool TWAP) for any on-chain risk decision
// 3) Cache aggressively — credits are the billWhen Solana builders pick CMC vs not
| Need | Prefer |
|---|---|
| USD labels, rankings, wide asset catalog | CMC (or similar market APIs) |
| Program CPI price / liquidations | Pyth / on-chain oracle |
| Same-chain swap execution | Jupiter |
| DEX pair discovery across many chains | CMC DEX APIs and/or chain-native indexers |
| Agent market tools with credits | CMC key + cache; watch credit burn on fan-out |
Builder checklist
- Open pricing and match credits to QPS × fan-out.
- Create a free key; smoke-test quotes + listings.
- Put the key only on a backend or edge worker.
- Cache by symbol with TTL aligned to your tier's refresh.
- Separate display prices (CMC) from risk prices (oracle).
- Re-read license line items before shipping commercial products.
People and links
| Surface | Link |
|---|---|
| Pricing | coinmarketcap.com/api/pricing |
| API home | coinmarketcap.com/api |
| Docs | API documentation |
| X | @CoinMarketCap |
| Org | /organisations/coinmarketcap |
Resources
Keep reading
Single integration for same-chain swaps, cross-chain bridges, intents, and DeFi deposits — li.quest API with SVM among supported chain types.
Define an intent; Relay solvers fill across 69+ chains — integrate via Quote, Execute, and Status.
Tokenize real DNS domains via registrar-backed bridge: GraphQL off-chain + marketplace pay on Doma chain.
Get new articles in your inbox
Technical deep-dives on Solana tooling, infrastructure, and ecosystem. No noise.
