> For the complete documentation index, see [llms.txt](https://docs.coupler.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.coupler.io/sources/category/finance-and-accounting/coingecko-coins/best-practices.md).

# Best Practices

## Recommended setup

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Verify your Coin ID before configuring</strong></td><td>Look up the exact CoinGecko internal ID at the coins list endpoint before entering it in Coupler.io. A wrong ID (e.g. "BTC" instead of "bitcoin") will silently return no data.</td></tr><tr><td><strong>Use Append to consolidate multiple coins</strong></td><td>Set up one source per coin, then use Coupler.io's Append transformation to merge them into a single table. This is cleaner than managing separate destinations for each coin.</td></tr><tr><td><strong>Choose the right entity for your use case</strong></td><td>Use Market charts for trend analysis and time-series dashboards. Use Histories for point-in-time snapshots, audits, or backfilling a dataset.</td></tr></tbody></table>

## Data refresh and scheduling

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Match your refresh frequency to the days parameter</strong></td><td>If you're using a 1-day market chart window (hourly data), a frequent refresh schedule makes sense. For 90-day or 365-day windows (daily data), a daily or weekly refresh is sufficient — running more often won't add new granularity.</td></tr><tr><td><strong>Stagger schedules across multiple coin data flows</strong></td><td>If you're tracking many coins, offset their scheduled run times by a few minutes to avoid hitting CoinGecko rate limits all at once.</td></tr></tbody></table>

## Performance optimization

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>Avoid "max" days unless you need full history</strong></td><td>The max setting pulls all available data for a coin, which can be years of records. Use a specific days value (e.g. 90 or 365) unless you genuinely need full historical backfill — it reduces load and speeds up runs.</td></tr><tr><td><strong>Use Aggregate to pre-summarize in Coupler.io</strong></td><td>If you're loading into a spreadsheet destination, use Coupler.io's Aggregate transformation to compute daily averages or weekly totals before export. This keeps your sheets lean and avoids row-count bloat.</td></tr></tbody></table>

## Common pitfalls

{% hint style="danger" %}
Do not rely solely on Coupler.io field names to interpret CoinGecko data — always cross-reference with the [CoinGecko API docs](https://www.coingecko.com/api/documentations/v3) to understand what each field represents, especially for community and developer metrics that vary by coin.
{% endhint %}

{% columns %}
{% column %}
**Do**

* Use the CoinGecko coins list to confirm the exact coin ID
* Use one source per coin and combine with Append
* Check your API plan's rate limits before adding many data flows
* Use AI destinations (ChatGPT, Claude, Gemini) to generate summaries or alerts from price data
  {% endcolumn %}

{% column %}
**Don't**

* Assume ticker symbols like "ETH" or "BTC" are valid Coin IDs — they're not
* Run all coin data flows simultaneously if you're on a free API plan
* Use the `max` days setting for routine scheduled refreshes
* Expect sub-daily granularity for market chart windows longer than 1 day
  {% endcolumn %}
  {% endcolumns %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.coupler.io/sources/category/finance-and-accounting/coingecko-coins/best-practices.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
