---
title: Are there any limits to the Langfuse API?
tags: [platform]
---

# What are the limits to the Langfuse API?

While the [Langfuse API](/docs/api) is extremely open and flexible, there are some limits to ensure the stability and performance of the platform.

## Langfuse Cloud

  If you run into unexpected limits or need to increase your limits, please
  reach out to us via the chat widget.

### Payloads

5MB per request and 5MB per response

### Request Constraints

- **Trace Deletion**: We advise strongly against trying to send more than 30-50 trace ids in a single DELETE request. Consider using [data retention](/docs/administration/data-retention) to automatically delete old traces instead of manual deletion.

### Rate Limits

Langfuse Cloud groups API requests into per-organization resource buckets shared by all projects and API keys in the organization. Resources with dedicated buckets are listed separately from the General API bucket. Closely related buckets with identical limits may be combined in one row.

| Resource bucket                                                            | Applies to                                                                                                                                            | Hobby              | Core               | Pro/Team/Enterprise |
| -------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------ | ------------------ | ------------------- |
| **Tracing**                                                                | Batched `/ingestion` and `/otel` endpoints used by SDKs and integrations to ingest traces.                                                            | 1,000&nbsp;req/min | 4,000&nbsp;req/min | 20,000&nbsp;req/min |
| **Deprecated tracing**                                                     | Deprecated ingestion endpoints.                                                                                                                       | 100&nbsp;req/min   | 400&nbsp;req/min   | 400&nbsp;req/min    |
| **Trace data deletion**                                                    | Public API endpoints used to delete trace data, including traces, observations, and scores.                                                           | 50&nbsp;req/day    | 200&nbsp;req/day   | 1,000&nbsp;req/day  |
| **Prompts**                                                                | GET APIs used to fetch prompts for use in applications.                                                                                               | No limit           | No limit           | No limit            |
| **[Metrics API v2](/docs/metrics/features/metrics-api#v2)**                | `GET /api/public/v2/metrics` for aggregate analytics data.                                                                                            | 100&nbsp;req/day   | 100&nbsp;req/hour  | 500&nbsp;req/hour   |
| **[Deprecated Metrics API](/faq/all/deprecated-api-migration#metrics-v1)** | Deprecated `GET /api/public/metrics` endpoint.                                                                                                        | 100&nbsp;req/day   | 2,000&nbsp;req/day | 2,000&nbsp;req/day  |
| **Datasets**                                                               | APIs used to work with [datasets and experiments](/docs/datasets).                                                                                    | 100&nbsp;req/min   | 200&nbsp;req/min   | 1,000&nbsp;req/min  |
| **Deprecated read APIs**                                                   | Older trace, observation, and session read endpoints, listed below.                                                                                   | 15&nbsp;req/min    | 30&nbsp;req/min    | 100&nbsp;req/min    |
| **General API**                                                            | All other public APIs, including [Observations API v2](/docs/api-and-data-platform/features/observations-api#v2) (`GET /api/public/v2/observations`). | 30&nbsp;req/min    | 100&nbsp;req/min   | 1,000&nbsp;req/min  |

The deprecated read APIs are `GET /api/public/traces`, `GET /api/public/traces/{traceId}`, `GET /api/public/observations`, `GET /api/public/observations/{observationId}`, `GET /api/public/sessions`, and `GET /api/public/sessions/{sessionId}`.

### How rate limits are calculated

- Limits apply to an organization and resource bucket. All projects and API keys in the organization share the same bucket. For example, Metrics API v2, Prompts, Datasets, and the General API use separate buckets.
- Each API request consumes one request from its matching bucket.
- Rate-limit windows are fixed: the first request to a bucket starts its window, and later requests do not extend it. An hourly limit therefore applies to the 60 minutes after the first request in that bucket; a daily limit applies to the following 24 hours. Windows are neither rolling nor aligned to UTC calendar hours or days.
- When a bucket is exhausted, the API returns a `429` response. Use the `Retry-After` header as the authoritative number of seconds to wait before sending another request to that bucket.

**MCP shares the General API resource bucket.** Authenticated requests to the [Langfuse MCP server](/docs/api-and-data-platform/features/mcp-server) at `/api/public/mcp` count toward the General API limit shown above.

On the Enterprise plan, you can request custom rate limits by contacting [support](/support).

**Rate limit response**

- HTTP status code 429
- `Retry-After` response header with the number of seconds to wait before retrying

## Self-hosted instances

No hard limits, depends on your infrastructure capacity and load-balancer configuration.

<!-- agent-instructions -->

---

## Agent Instructions

This page is part of the [Langfuse](https://langfuse.com) documentation, published as plain Markdown for AI agents. Every page is available as Markdown by appending `.md` to its URL, or by sending an `Accept: text/markdown` header. This page: `https://langfuse.com/faq/all/api-limits.md`.

### Querying these docs

If the answer is not on this page, query the documentation instead of guessing:

- **Semantic search** across all Langfuse docs, returning an answer with the relevant pages and excerpts. Ask a specific, self-contained question:

  ```bash
  curl -sG "https://langfuse.com/api/search-docs" --data-urlencode "query=How do I trace a LangGraph agent?"
  ```

- **Index of every page**: <https://langfuse.com/llms.txt>, with per-section indexes [llms-docs.txt](https://langfuse.com/llms-docs.txt), [llms-integrations.txt](https://langfuse.com/llms-integrations.txt), and [llms-self-hosting.txt](https://langfuse.com/llms-self-hosting.txt).

### Before writing Langfuse code

- **Install the [Langfuse Agent Skill](https://langfuse.com/docs/api-and-data-platform/features/agent-skill).** It encodes Langfuse's own best practices for instrumentation, prompt management, and evaluation, and materially improves results.
- **Read [What does a good trace look like?](https://langfuse.com/docs/observability/best-practices.md)** before instrumenting an application.
- **Verify endpoints, parameters, and response fields** against the [API reference](https://api.reference.langfuse.com) instead of inferring them from code examples.
- **Use the [Langfuse CLI](https://langfuse.com/docs/api-and-data-platform/features/cli)** (`npx langfuse-cli api <resource> <action>`) to read or write traces, prompts, datasets, and scores from the terminal.

Found an error in these docs? Please open an issue at <https://github.com/langfuse/langfuse-docs/issues>.
