BYTETOOLS

Coinbase Exchange Rates API

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 API key requiredCORS enabledHTTPSFree tier

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

What is the Coinbase Exchange Rates API?

The Coinbase exchange rates API is a free public endpoint that returns conversion rates from one cryptocurrency or fiat currency into more than 100 others in a single request, with no API key required.

This endpoint is unusually convenient: one request returns rates from your chosen base currency into every currency Coinbase knows about, crypto and fiat alike. Where most APIs make you specify target currencies, Coinbase just gives you the whole table.

That makes it ideal for a currency selector where the user can pick any target — you fetch once, cache the map, and convert locally without another network call per selection.

Quick facts

Base URL
https://api.coinbase.com/v2
Authentication
This public rates endpoint requires no key. Other Coinbase APIs require OAuth or API key authentication.
Rate limit
Roughly 10,000 requests per hour per IP on public endpoints.
Pricing
Free.
CORS
Enabled — callable directly from browser JavaScript
Official docs
Read the docs

How to use the Coinbase Exchange Rates API

Every request below was executed against the live API on 2026-08-19, and the response shown is the real body it returned — not an illustration.

1. Bitcoin exchange rates against all currencies

GET https://api.coinbase.com/v2/exchange-rates?currency=BTC

curl
curl 'https://api.coinbase.com/v2/exchange-rates?currency=BTC'
JavaScript (fetch)
const res = await fetch("https://api.coinbase.com/v2/exchange-rates?currency=BTC");
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.coinbase.com/v2/exchange-rates?currency=BTC", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200 (truncated)
{
  "data": {
    "currency": "BTC",
    "rates": {
      "00": "4691633.33333333333427166",
      "1INCH": "776503.300876055349354954",
      "2Z": "1362469.276094276096150852",
      "A8": "16374441.072331815883046742",
      "AAVE": "722.6477814713108831",
      "ABT": "367657.80806360022804443",
      "ACH": "15430061.963775023835455304",
      "ACS": "509527605.816898926498227602",
      "ACX": "1644277.036079037992685625",
      "ADA": "369003.6900369003690037",
      "AED": "237767.6433275",
      "AERGO": "9603165.232868584989859324",
      "AERO": "160258.762376237620685408",
      "AFN": "4273054.597114875",
      "AGLD": "422338.812785388125391646",
      "AI": "3243714.428857715430446528",
      "AIOZ": "1354204.978038067352876252",
      "AKT": "134436.337209302327818416",
      "ALCX": "32372.27",
      "ALEO": "4195253.19033012556832741",
      "ALEPH": "6887717.021276595743441062",
      "ALGO": "826446.2809917355371901",
      "ALICE": "489228.804594226989551308",
      "ALL": "5164657.03857675",
      "ALLO": "220069.816451393610277814",
      "ALT": "10987569.653068218993947542",
      "AMD": "23561689.0719847",
      "AMP": "178802927.36813035073107318",
      "ANG": "115893.9796",
      "ANKR": "19442804.804804804804785362",
      "ANT": "700622.9885934657054677",
      "AOA": "59235170.244",
      "APE": "535123.068022150590482206",
      "API3": "334434.805608356543917232",
      "APR": "332534.925526450952810115",
      "APT": "121677.39146776921748691",
      "ARB": "837574.902975420441335644",
      "ARKM": "744190.114942528736227536",
      "ARPA"

Parameters

ParameterTypeRequiredDescription
currencystringOptionalBase currency code, crypto or fiat. Defaults to USD. BTC

Response fields

data.currencystring
The base currency the rates are quoted from.
data.ratesobject
Map of currency code to rate as a string — how much of that currency one unit of the base buys.

What you can build with the Coinbase Exchange Rates API

  • Build a crypto to fiat converter with a full currency dropdown from one request
  • Display an asset's value in the visitor's local currency
  • Cache a complete rate table and convert client-side without repeated calls
  • Cross-check rates from another provider for sanity

Common errors and how to fix them

400

Unrecognised currency code.

Fix: Use standard codes — `BTC`, `ETH`, `USD`, `PKR`. Case matters.

429

Hourly rate limit exceeded.

Fix: Cache the rate table; a single response covers every currency you might need.

Coinbase Exchange Rates API — frequently asked questions

Does the Coinbase exchange rates API require an API key?

No. The public /v2/exchange-rates endpoint works with no key or authentication. Only account and trading APIs require credentials.

What currencies does it support?

Over 100 fiat currencies plus the cryptocurrencies Coinbase lists. One request returns rates into all of them from your chosen base.

Are the rates returned as numbers?

No, they are strings to preserve precision. Convert them explicitly, and prefer decimal arithmetic for any monetary calculation.

How often do the rates update?

Continuously, tracking market movement. For display purposes caching for 30-60 seconds is normally acceptable and avoids the rate limit entirely.

Tools that pair with this API

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