CoinGecko Crypto Data avatar

CoinGecko Crypto Data

Pricing

from $2.00 / 1,000 coin fetcheds

Go to Apify Store
CoinGecko Crypto Data

CoinGecko Crypto Data

Extract live cryptocurrency prices, market cap rankings, trending coins, historical price charts, and global market stats from the CoinGecko API. Covers 15,000+ coins in 60+ currencies. Export as JSON/CSV.

Pricing

from $2.00 / 1,000 coin fetcheds

Rating

0.0

(0)

Developer

ryan clinton

ryan clinton

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

2

Monthly active users

4 hours ago

Last modified

Categories

Share

Pull real-time and historical cryptocurrency data from the CoinGecko API with six flexible modes of operation. This Apify actor covers market rankings, direct price lookups, trending coin discovery, global market statistics, coin search, and historical price charts across 15,000+ cryptocurrencies and 60+ fiat currencies. All you need is a free CoinGecko Demo API key, and you get clean, structured JSON output ready for spreadsheets, databases, or downstream automation.


Why use CoinGecko Crypto Data?

CoinGecko is one of the most comprehensive cryptocurrency data aggregators, tracking over 15,000 coins across 500+ exchanges. Accessing this data programmatically normally requires writing custom API integration code, handling pagination, rate limiting, and response parsing. This actor eliminates that work entirely. You configure your desired mode, provide a free API key, and get structured results in seconds -- no code required. The six modes cover every common crypto data need, from broad market scans to targeted price monitoring to backtesting-ready historical time series. Running on Apify means you can schedule it, trigger it via API, and pipe results into any downstream system through webhooks, Zapier, Make, or Google Sheets.


Key features

  • Six data modes -- Market rankings, price lookups, trending coins, global stats, coin search, and historical charts in a single actor.
  • 15,000+ cryptocurrencies -- Access data for every coin listed on CoinGecko, from Bitcoin and Ethereum to the smallest altcoins and meme tokens.
  • 60+ currencies -- Get prices in USD, EUR, GBP, JPY, AUD, CAD, CHF, CNY, INR, KRW, BTC, ETH, and dozens more.
  • Historical time series -- Download price, market cap, and volume history with granularity from 5-minute intervals (1-day range) to daily data points (90+ day range).
  • Supply and ATH/ATL metrics -- Market mode includes circulating supply, total supply, max supply, all-time high and low prices with dates.
  • Market dominance tracking -- Global mode returns BTC/ETH dominance, total market cap, active cryptocurrencies, and 24-hour market cap change.
  • Trending coin discovery -- Spot coins gaining traction in the last 24 hours before they break out.
  • Dry-run mode -- Runs without an API key and returns instructions for obtaining one, so new users can explore the actor before signing up.
  • Clean structured output -- Consistent JSON field names across all modes, ready for CSV export, database ingestion, or API consumption.

How to use CoinGecko Crypto Data

  1. Get a free CoinGecko API key. Sign up at coingecko.com/en/api for a free Demo account. Copy your API key from the dashboard.
  2. Open the actor on Apify. Navigate to CoinGecko Crypto Data on the Apify platform and click "Try for free".
  3. Enter your API key. Paste the CoinGecko Demo API key into the "CoinGecko API Key" field.
  4. Select a data mode. Choose one of six modes: Market Rankings, Price Lookup, Trending Coins, Global Market Stats, Search Coins, or Historical Price Chart.
  5. Configure mode-specific options. For price lookups and historical data, enter coin IDs (e.g., bitcoin, ethereum). For search, enter a search term. For history, set the number of days.
  6. Run the actor. Click "Start" or trigger a run via the Apify API. Most modes complete in under 30 seconds.
  7. Download or integrate results. Export the dataset as JSON, CSV, or Excel. Use the Apify API, webhooks, or integrations to automate data collection on a schedule.

Input parameters

ParameterTypeRequiredDefaultDescription
apiKeyStringNo--Free CoinGecko Demo API key from coingecko.com/en/api. Without a key, the actor runs in dry-run mode.
modeStringNomarketData mode: market (top coins by market cap), price (specific coin prices), trending (24h trending), global (market-wide stats), search (find coins), history (historical charts).
coinIdsString[]No--CoinGecko coin IDs for price and history modes (e.g., bitcoin, ethereum, solana).
searchQueryStringNo--Search term for search mode (e.g., "bitcoin", "defi", "layer 2").
vsCurrencyStringNousdPrice currency. Supports 60+ fiat currencies (usd, eur, gbp, jpy) and crypto pairs (btc, eth).
daysStringNo30Number of days for history mode. Accepted: 1, 7, 14, 30, 90, 180, 365, max.
maxResultsIntegerNo100Maximum coins to return in market and search modes (1-250).

Input example

{
"apiKey": "CG-xxxxxxxxxxxxxxxxxxxx",
"mode": "market",
"vsCurrency": "usd",
"maxResults": 50
}

Tips for best results

  • Use "search" mode first to find coin IDs. CoinGecko uses unique lowercase IDs (e.g., bitcoin, binancecoin, matic-network). If you are unsure of the exact ID, run a search first.
  • Start with 30-day history and expand. The default 30-day range returns daily data points and is fast to retrieve. Only request 365 or max when you specifically need long-term data.
  • Choose currencies wisely. If you report in EUR or GBP, set vsCurrency accordingly instead of converting USD values manually.
  • Combine market and trending modes. Run market for fundamentals, then trending for momentum. Cross-reference to find coins with both strong market position and rising interest.

Output

Output example

Market mode (default):

{
"coinId": "bitcoin",
"name": "Bitcoin",
"symbol": "BTC",
"currentPrice": 97432.18,
"marketCap": 1932845672310,
"marketCapRank": 1,
"volume24h": 28456789012,
"priceChange24h": 2.34,
"priceChange7d": -1.87,
"priceChange30d": 12.56,
"circulatingSupply": 19832456,
"totalSupply": 21000000,
"maxSupply": 21000000,
"allTimeHigh": 108135.82,
"allTimeHighDate": "2025-01-20T09:15:42.123Z",
"allTimeLow": 67.81,
"allTimeLowDate": "2013-07-06T00:00:00.000Z",
"imageUrl": "https://assets.coingecko.com/coins/images/1/large/bitcoin.png",
"currency": "usd",
"extractedAt": "2025-05-12T10:30:00.000Z"
}

Global mode:

{
"activeCryptocurrencies": 15832,
"markets": 1143,
"totalMarketCap": 3245678901234,
"totalVolume24h": 98765432100,
"btcDominance": 58.42,
"ethDominance": 11.23,
"marketCapChangePercentage24h": 1.87,
"extractedAt": "2025-05-12T10:30:00.000Z"
}

History mode:

{
"coinId": "ethereum",
"date": "2025-05-01T00:00:00.000Z",
"price": 3245.67,
"marketCap": 390123456789,
"volume": 12345678901,
"currency": "usd"
}

Output fields

Market / Price / Trending / Search modes (CoinOutput):

FieldTypeDescription
coinIdStringCoinGecko unique identifier (e.g., bitcoin)
nameStringFull coin name (e.g., Bitcoin)
symbolStringTicker symbol in uppercase (e.g., BTC)
currentPriceNumberCurrent price in the selected currency
marketCapNumberTotal market capitalization
marketCapRankNumberRank by market cap (1 = largest)
volume24hNumber24-hour trading volume
priceChange24hNumber24-hour price change percentage
priceChange7dNumber7-day price change percentage (market mode only)
priceChange30dNumber30-day price change percentage (market mode only)
circulatingSupplyNumberCoins currently in circulation
totalSupplyNumberTotal coins that exist (including locked)
maxSupplyNumberMaximum coins that will ever exist
allTimeHighNumberAll-time high price
allTimeHighDateStringISO date of all-time high
allTimeLowNumberAll-time low price
allTimeLowDateStringISO date of all-time low
imageUrlStringURL to the coin logo image
currencyStringCurrency code used for prices
extractedAtStringISO timestamp of data extraction

Global mode (GlobalData):

FieldTypeDescription
activeCryptocurrenciesNumberTotal active cryptocurrencies tracked
marketsNumberNumber of exchanges tracked
totalMarketCapNumberTotal crypto market capitalization
totalVolume24hNumber24-hour total trading volume
btcDominanceNumberBitcoin market cap dominance percentage
ethDominanceNumberEthereum market cap dominance percentage
marketCapChangePercentage24hNumber24-hour market cap change percentage
extractedAtStringISO timestamp of data extraction

History mode (HistoryPoint):

FieldTypeDescription
coinIdStringCoinGecko identifier for the coin
dateStringISO timestamp of the data point
priceNumberPrice at the given timestamp
marketCapNumberMarket cap at the given timestamp
volumeNumberTrading volume at the given timestamp
currencyStringCurrency code used for values

Use cases

  • Portfolio tracking and alerting -- Schedule hourly runs in price mode for your watchlist coins. Pipe results to Google Sheets or trigger Slack alerts when prices cross thresholds.
  • Market research and reporting -- Pull top 100 coins by market cap with 7-day and 30-day change data for weekly crypto market reports, newsletters, or client briefings.
  • Trading strategy backtesting -- Download historical price and volume series in history mode to backtest quantitative strategies or train machine learning models on crypto market data.
  • Trend detection -- Monitor trending mode daily to spot coins gaining traction before mainstream attention. Cross-reference with market mode to filter by fundamentals.
  • Market dashboard data feeds -- Use global mode to power overview dashboards showing total market cap, BTC/ETH dominance, and 24-hour volume without pulling individual coin data.
  • DeFi and Web3 application price feeds -- Integrate real-time price lookups into decentralized applications, portfolio trackers, or custom trading dashboards via the Apify API.

API & Integration

Python:

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("OHTDT0XcSziuWLin7").call(run_input={
"apiKey": "CG-xxxxxxxxxxxxxxxxxxxx",
"mode": "market",
"vsCurrency": "usd",
"maxResults": 50,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"{item['name']} ({item['symbol']}): ${item['currentPrice']}")

JavaScript:

import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "YOUR_APIFY_TOKEN" });
const run = await client.actor("OHTDT0XcSziuWLin7").call({
apiKey: "CG-xxxxxxxxxxxxxxxxxxxx",
mode: "price",
coinIds: ["bitcoin", "ethereum", "solana"],
vsCurrency: "usd",
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => console.log(`${item.coinId}: $${item.currentPrice}`));

cURL:

curl "https://api.apify.com/v2/acts/OHTDT0XcSziuWLin7/runs" \
-X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_APIFY_TOKEN" \
-d '{
"apiKey": "CG-xxxxxxxxxxxxxxxxxxxx",
"mode": "global"
}'

Integrations

  • Zapier -- Build price alert workflows that run the actor on a schedule, check thresholds, and send notifications to Slack, email, or SMS.
  • Make (Integromat) -- Create multi-step workflows that filter results by price change or volume and push data to Google Sheets, Airtable, or Notion.
  • Google Sheets -- Export market data directly to a spreadsheet for collaborative portfolio tracking and charting using the Apify Google Sheets integration.
  • Webhooks -- Configure Apify webhooks to POST the full dataset to any HTTP endpoint when a run completes for real-time database ingestion.

How it works

+------------------+
| Actor Input |
| (mode, apiKey, |
| coinIds, etc.) |
+--------+---------+
|
+-----------+-----------+
| Mode Selection |
+-----------+-----------+
|
+----------+-----------+-----------+-----------+----------+
| | | | | |
market price trending global search history
| | | | | |
/coins/ /simple/ /search/ /global /search /coins/
markets price trending {id}/
market_
chart
| | | | | |
+----------+-----------+-----------+-----------+----------+
|
+-----------+-----------+
| Normalize Response |
| to Typed Objects |
+-----------+-----------+
|
+-----------+-----------+
| Push to Apify |
| Dataset (JSON/CSV) |
+---------------------- +
  1. The actor reads input parameters and validates the selected mode.
  2. If no API key is provided, it enters dry-run mode and outputs setup instructions.
  3. Based on the mode, it calls the appropriate CoinGecko API v3 endpoint with the x_cg_demo_api_key parameter.
  4. Raw API responses are normalized into typed output objects with consistent field names.
  5. For history mode, the actor iterates through each coin ID and fetches chart data sequentially.
  6. All results are pushed to the Apify dataset for download or API access.

Performance & cost

ScenarioAPI callsCompute unitsEst. duration
Market rankings (top 100 coins)1~0.01 CU3-5 seconds
Price lookup (5-10 coins)1~0.01 CU2-4 seconds
Trending coins1~0.01 CU2-4 seconds
Global market stats1~0.01 CU2-3 seconds
Coin search1~0.01 CU2-4 seconds
History (1 coin, 30 days)1~0.02 CU3-5 seconds
History (5 coins, 365 days)5~0.05 CU10-15 seconds

The actor uses 256 MB of memory. On the Apify Free plan (~$5/month of compute), you can run roughly 500 market or price lookups per month. The CoinGecko Demo API key is free and allows 10,000 calls/month with approximately 30 calls/minute rate limiting. Each actor run uses 1-6 API calls depending on the mode and number of coins.


Limitations

  • CoinGecko API key required. The actor requires a free Demo API key from CoinGecko. Without it, the actor only outputs setup instructions.
  • Rate limits on free tier. The CoinGecko Demo key allows approximately 10,000 API calls per month and 30 calls per minute. High-frequency runs may hit these limits.
  • 250 coins maximum per market run. The CoinGecko API returns a maximum of 250 coins per page in market mode. For the full 15,000+ coin list, use search mode.
  • History mode is sequential. When requesting historical data for multiple coins, each coin requires a separate API call, which increases both run time and API usage.
  • Price mode returns fewer fields. The simple price endpoint provides only current price, market cap, volume, and 24-hour change. For full metrics including supply and ATH/ATL, use market mode.
  • Data granularity depends on range. History ranges of 1-2 days return 5-minute intervals. Ranges of 3-90 days return hourly data. Ranges over 90 days return daily data. This is controlled by CoinGecko, not the actor.

Responsible use

This actor accesses the CoinGecko API, which has published rate limits and terms of service. Please respect the following guidelines:

  • Stay within your CoinGecko API key rate limits (30 calls/minute, 10,000 calls/month on the free tier).
  • Do not use this actor to redistribute CoinGecko data in ways that violate their terms of service.
  • Space out scheduled runs appropriately. Hourly runs for price monitoring are reasonable; running every minute is excessive and may trigger rate limiting.
  • If your usage requires higher throughput, consider upgrading to a paid CoinGecko API plan.

FAQ

Do I need a CoinGecko API key? Yes. The actor requires a free CoinGecko Demo API key to fetch live data. Sign up at coingecko.com/en/api -- it takes about 30 seconds. Without a key, the actor runs in dry-run mode and outputs instructions.

How many coins can I retrieve per run? In market mode, up to 250 coins per run ranked by market cap. In price mode, you can look up any number of specific coins by ID. In search mode, up to 250 results. CoinGecko tracks over 15,000 cryptocurrencies total.

How fresh is the data? CoinGecko updates prices approximately every 1-2 minutes for actively traded coins. Historical data uses daily closing prices for ranges over 90 days, hourly prices for 3-90 day ranges, and 5-minute intervals for 1-2 day ranges.

What is the difference between market mode and price mode? Market mode returns the top coins ranked by market cap with comprehensive data including supply metrics, ATH/ATL, and 7d/30d price changes. Price mode is a lightweight lookup for specific coins by ID, returning only current price, market cap, volume, and 24-hour change. Use market mode for broad analysis and price mode for targeted monitoring.

Can I get historical data for multiple coins at once? Yes. In history mode, provide multiple coin IDs in the coinIds field. The actor fetches chart data for each coin sequentially and combines all data points into a single dataset. Each coin uses one API call.

Does the actor support stablecoins and meme coins? Yes. CoinGecko tracks all types of cryptocurrencies including stablecoins (USDT, USDC, DAI), meme coins (DOGE, SHIB, PEPE), DeFi tokens, Layer 2 tokens, and NFT-related tokens. If a coin is listed on CoinGecko, this actor can retrieve its data.

What happens if I run the actor without an API key? The actor enters dry-run mode and outputs a single record with step-by-step instructions for obtaining a free CoinGecko Demo API key. No API calls are made and no cryptocurrency data is returned. This lets you test the actor setup before creating an account.


ActorDescription
Finnhub Stock Market DataStock prices, company profiles, and financial data from traditional markets for cross-asset analysis.
FRED Economic Data SearchFederal Reserve economic indicators like interest rates and inflation that influence crypto markets.
Currency Exchange Rate TrackerReal-time fiat exchange rates to understand how currency strength affects crypto pricing.
Historical Exchange Rate DataHistorical fiat rates to normalize crypto prices across currencies for multi-region analysis.
Hacker News SearchMonitor crypto discussions and sentiment signals on Hacker News that often precede price movements.
Website Change MonitorTrack changes on crypto project websites or regulatory pages to catch important updates early.