Skip to main content

CoinGecko

CoinGecko is the world's leading independent cryptocurrency data aggregator, tracking over 18,000 coins across 1,700+ exchanges and 250+ blockchain networks. It provides comprehensive real-time and historical market data including prices, market capitalization, trading volume, OHLCV candlestick data, exchange information, and on-chain token metrics. Trusted by industry leaders such as MetaMask, Coinbase, and Etherscan, CoinGecko's API is the most widely used crypto data API among developers, offering up to 12 years of historical data with granularity down to every five minutes. Organizations use CoinGecko to power trading applications, portfolio trackers, financial analytics dashboards, DeFi platforms, and quantitative research workflows.

CoinGecko icon

Power end-to-end data operations for your CoinGecko API with Nexla. Our bi-directional CoinGecko connector is purpose-built for CoinGecko, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to CoinGecko or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your CoinGecko workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

To connect Nexla to the CoinGecko API, you need a CoinGecko API key. CoinGecko offers two categories of API plans: a free Demo plan suitable for development and light usage, and paid Pro plans (Analyst, Lite, Pro, and Pro+) for production workloads requiring higher rate limits and access to the full suite of endpoints.

Obtain a CoinGecko API Key

  1. Sign in to your CoinGecko account at www.coingecko.com. If you do not yet have an account, click Sign Up and complete the registration process.

  2. Navigate to the CoinGecko Developer Dashboard by clicking your account menu in the top-right corner and selecting Developer Dashboard, or by going directly to https://www.coingecko.com/en/developers/dashboard.

  3. Click the + Add New Key button to generate a new API key.

  4. Provide a descriptive label for the key (for example, "Nexla Integration") to help identify its purpose later.

  5. Click Generate Key. Your new API key will be displayed on the screen.

Important

Copy and store your API key in a secure location immediately. For security reasons, the key will not be fully visible again after you navigate away from the page. Treat the API key as a secret — do not commit it to source control or share it publicly.

  1. Note which plan tier your account is subscribed to, as this determines which header name your API key requires:

    • Demo (free) plan keys: Use the request header x-cg-demo-api-key.
    • Pro paid plan keys: Use the request header x-cg-pro-api-key.

    Nexla uses the API key as a Bearer token in the Authorization header automatically, but if you need to pass additional custom headers for plan-specific requirements, you can add them in the data source configuration.

For complete information about CoinGecko API plans and rate limits, see the CoinGecko API Pricing page. The Demo plan supports up to 100 calls per minute; paid plans offer higher limits starting at 300 calls per minute.

Authenticate

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

  2. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  3. Enter your CoinGecko API key in the API Key field. This key authenticates Nexla with the CoinGecko API and should be kept secure. Nexla will include this key in API requests to CoinGecko on your behalf.

    Nexla supports both Demo and Pro CoinGecko API keys. Ensure the key you enter corresponds to the plan you are subscribed to. Demo keys provide access to the core set of market data endpoints; Pro keys unlock additional endpoints and higher rate limits. For a full list of endpoints available per plan, see the CoinGecko Endpoint Overview.

  4. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the CoinGecko connector tile, then select the credential that will be used to connect to the CoinGecko API, and click Next; or, create a new CoinGecko credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common CoinGecko endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

Get Market Chart Data

This endpoint returns historical market chart data for a cryptocurrency — including prices, market capitalizations, and trading volumes — over a specified time period. Use it to build price history datasets, perform technical analysis, or feed quantitative trading models.

  • Sends a GET request to https://pro-api.coingecko.com/api/v3/coins/market_chart. Required query parameters include id (the coin ID, e.g., bitcoin), vs_currency (e.g., usd), and days (number of days of data to retrieve).
  • Response data is extracted from $.prices[*]. Each record is a two-element array containing a Unix timestamp (milliseconds) and a price value. The response also contains market_caps and total_volumes arrays at the same path level.

The Pro API endpoint (pro-api.coingecko.com) requires a paid CoinGecko API key. For Demo plan keys, use api.coingecko.com as the base domain. Data granularity is automatic: 5-minute intervals for 1 day, hourly for 2–90 days, and daily beyond 90 days.

Get Coin Historical Data

This endpoint returns historical snapshot data for a cryptocurrency on a specific date — including price in multiple currencies, market cap, and 24-hour trading volume. Use it to retrieve point-in-time market data for backtesting, historical analysis, or audit records.

  • Sends a GET request to https://pro-api.coingecko.com/api/v3/coins/history. Required query parameters include id (the coin ID) and date (in dd-MM-yyyy format, e.g., 30-12-2023).
  • Response data is extracted from $ (root object). The entire response is treated as a single record containing the coin's market data snapshot for the requested date.

Historical data is only available for dates after a coin's listing on CoinGecko. The date parameter uses dd-MM-yyyy format — note this differs from ISO 8601. Use a date/time macro with an appropriate date format setting to dynamically set the date parameter.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

CoinGecko sources can also be manually configured to ingest data from any valid CoinGecko API endpoint, including endpoints not covered by the pre-built templates, date/time macros for specific time ranges, lookup-based macros for dynamically constructed endpoint URLs, or a JSON path to extract only the relevant portion of the response. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

CoinGecko is a read-only REST API — GET is the appropriate method for all endpoints. Common base URLs are https://pro-api.coingecko.com/api/v3/ for Pro plan keys and https://api.coingecko.com/api/v3/ for Demo plan keys; using the wrong base URL for your plan results in authentication errors. Responses are JSON: list endpoints such as /coins/markets return a top-level array (path to data $[*]), endpoints such as /coins/{id}/market_chart return an object with prices, market_caps, and total_volumes arrays (path to data $.prices[*] to extract price points), and single-object endpoints such as /coins/history use the response root ($) as the record.

If your credential does not already supply the plan-specific header, add it in the Request Headers field: x-cg-demo-api-key:{your_api_key} for Demo plan keys, or x-cg-pro-api-key:{your_api_key} for Pro plan keys. CoinGecko enforces rate limits based on your plan — up to 100 calls per minute on the Demo plan and 300 or more on paid plans — so a 429 Too Many Requests response during testing means you should wait before retrying. For full endpoint and rate limit details, see the CoinGecko API Endpoint Overview and Common Errors & Rate Limit documentation.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new CoinGecko data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.