# CoinGecko Crypto — Live Prices & Market Data API (`leorochasantos/coingecko-crypto`) Actor

Real-time cryptocurrency prices and market data from CoinGecko's public API for 15,000+ coins. Get live prices in 60+ currencies, top market listings, detailed coin profiles, and full coin catalogs. Pure HTTP, no API key needed. Flat typed output schema — ready for LLMs, MCP, and data pipelines.

- **URL**: https://apify.com/leorochasantos/coingecko-crypto.md
- **Developed by:** [Leonardo Santos](https://apify.com/leorochasantos) (community)
- **Categories:** Developer tools, Business, Automation
- **Stats:** 3 total users, 2 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.39 / 1,000 result items

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## CoinGecko Crypto — Live Prices & Market Data API

Real-time cryptocurrency prices and market data from CoinGecko"s public API for 15,000+ coins. Get live prices in 60+ currencies, top market listings, detailed coin profiles, and full coin catalogs. Pure HTTP, no API key needed. Flat typed output schema — designed for LLMs, MCP, and data pipelines.

### Why this actor?

- **Typed flat schema** — every field is named, typed, and documented. No raw API nesting. Ready for LLM/MCP consumption.
- **Four modes, one actor** — price (simple/price), markets (coins/markets), coin detail (coins/{id}), coin list (coins/list).
- **Rate-limit management** — built-in exponential backoff handles CoinGecko"s free-tier throttling gracefully.
- **Error items are free** — bad coin IDs, rate limits, and upstream errors produce typed error items without charge.
- **256MB, seconds per run** — lightweight HTTP-only design. No browser overhead.

### Input

```json
{
  "mode": "price",
  "coinIds": ["bitcoin", "ethereum"],
  "vsCurrencies": ["usd", "eur"]
}
```

All modes and parameters documented in the input schema. See the Console UI for guided input.

### Output

One item per result, discriminated by `type`:

```json
{
  "type": "price",
  "coinId": "bitcoin",
  "symbol": "btc",
  "prices": { "usd": 64074, "eur": 56003 },
  "lastUpdated": "2026-07-20T00:00:00.000Z",
  "error": null,
  "scraped_at": "2026-07-20T01:00:00.000Z"
}
```

Error items have `type: "error"` with an `error` message describing what went wrong.

### Pricing

Pay per result: **$0.30 per 1,000 results**. Error items are always free. No monthly fees, no API keys to manage.

### Use cases

- **LLM agents and MCP servers** — typed, predictable JSON output for tool-calling and function integration.
- **Crypto dashboards** — pull live prices and market data into spreadsheets, BI tools, or internal dashboards.
- **Data pipelines** — scheduled market snapshots, coin catalog syncs, and price feeds.
- **Market research** — category-filtered rankings, detailed coin profiles with community sentiment.

### FAQ

**Do I need a CoinGecko API key?** No. The free tier is public, no auth required. The actor handles rate limits automatically.

**What"s the rate limit?** CoinGecko"s free tier allows 10-30 requests per minute. The actor paces requests at 350ms and retries with exponential backoff on 429 responses.

**How many coins are supported?** 15,000+ coins tracked by CoinGecko, in 60+ fiat currencies.

**What happens if a coin ID is invalid?** You get a free error item with the reason — the run continues processing other coins.

***

*This Actor is an independent tool. Not affiliated with CoinGecko.*

# Actor input Schema

## `mode` (type: `string`):

Which endpoint to query. Price returns live prices for specific coins. Markets returns a paginated list of top coins. Coin Detail returns full profile data for one coin. Coin List returns the full catalog of all known coins.

## `coinIds` (type: `array`):

CoinGecko coin IDs to fetch prices for. Required for price mode. Max 50 IDs per request.

## `vsCurrencies` (type: `array`):

Target fiat currencies for price conversion. Defaults to usd. Supports 60+ currencies.

## `includeMarketCap` (type: `boolean`):

Include market cap data in price results.

## `include24hVol` (type: `boolean`):

Include 24-hour trading volume in price results.

## `include24hChange` (type: `boolean`):

Include 24-hour price change percentage in price results.

## `includeLastUpdatedAt` (type: `boolean`):

Include the last\_updated\_at field in price results.

## `precision` (type: `integer`):

Number of decimal places for price values. Omit for full precision.

## `vsCurrency` (type: `string`):

Target fiat currency for market data. Defaults to usd.

## `page` (type: `integer`):

Page number for paginated market results. Starts at 1.

## `perPage` (type: `integer`):

Number of results per page. Max 250.

## `category` (type: `string`):

CoinGecko category ID to filter market results (e.g. decentralized-finance-defi).

## `order` (type: `string`):

Sort order for market results.

## `coinId` (type: `string`):

CoinGecko coin ID for detail lookup. Required for coin-detail mode.

## `includeTickers` (type: `boolean`):

Include exchange ticker data (up to 100 pairs).

## `includeDescription` (type: `boolean`):

Include the coin description and community data.

## `limit` (type: `integer`):

Maximum number of coin list results to return. Defaults to 250. Max 5000.

## `proxyConfiguration` (type: `object`):

Proxy to use for outgoing requests. CoinGecko is datacenter-open.

## Actor input object example

```json
{
  "mode": "price",
  "coinIds": [
    "bitcoin",
    "ethereum",
    "solana"
  ],
  "vsCurrencies": [
    "usd",
    "eur"
  ],
  "includeMarketCap": false,
  "include24hVol": false,
  "include24hChange": false,
  "includeLastUpdatedAt": false,
  "vsCurrency": "usd",
  "page": 1,
  "perPage": 100,
  "order": "market_cap_desc",
  "includeTickers": false,
  "includeDescription": false,
  "limit": 250,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "coinIds": [
        "bitcoin",
        "ethereum",
        "solana"
    ],
    "vsCurrencies": [
        "usd",
        "eur"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("leorochasantos/coingecko-crypto").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "coinIds": [
        "bitcoin",
        "ethereum",
        "solana",
    ],
    "vsCurrencies": [
        "usd",
        "eur",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("leorochasantos/coingecko-crypto").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "coinIds": [
    "bitcoin",
    "ethereum",
    "solana"
  ],
  "vsCurrencies": [
    "usd",
    "eur"
  ]
}' |
apify call leorochasantos/coingecko-crypto --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=leorochasantos/coingecko-crypto",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/RccKDi3zAhOXctuhF/builds/miVEE4fPyLca7Ec2v/openapi.json
