# Rate Limits

Rate limits are applied to all API requests to ensure stability and fair usage. If you exceed the rate limit, the API will return a **429 Too Many Requests** error. To increase your rate limit, please contact your account manager.

#### General Limits

* **Standard Requests:** Defaults to **600 req/min**, or varies based on your specific access tier.
* **Metadata Endpoints:** Separately limited to **1200 req/min**. This bucket is fully isolated and does not impact your standard request quota.
* **Studio:** Requests made via Glassnode Studio from the same account do consume your API rate limit as well. Studio may request multiple metrics (e.g. on a dashboard) as well as call metadata endpoints.

***

#### Response Headers

Every API response includes headers to help you track your usage:

| Header                   | Description                                                      |
| ------------------------ | ---------------------------------------------------------------- |
| `x-rate-limit-limit`     | The total request limit per minute (e.g., `600`).                |
| `x-rate-limit-remaining` | The number of requests left in the current window (e.g., `599`). |
| `x-rate-limit-reset`     | Time in seconds until the limit resets (e.g., `60`).             |

#### Best Practices & Common Pitfalls

**1. High Cardinality Requests (Assets/Exchanges)** Running into limits when requesting many parameter combinations (e.g., iterating through a list of assets) is a common issue.

* **Solution:** Use [**Bulk Endpoints**](https://docs.glassnode.com/~/revisions/16NjoBk2BV1L86OQTWKU/basic-api/bulk-metrics). These allow you to fetch data for multiple parameters (like "all assets" or "all exchanges") in a single request.

**2. Looping Through Metrics** Scripts that loop through numerous metrics often trigger rate limits.

* **Solution:** Pass the `x-rate-limit` headers to your HTTP client library. Many modern libraries can read these headers to automatically pace requests and respect the reset window. Otherwise, you can implement a delay that adheres to the rate limit.


---

# Agent Instructions: 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:

```
GET https://docs.glassnode.com/basic-api/api-credits-1.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
