# LLM Rate Limit & Capacity Planner

> LLM Rate Limit & Capacity Planner is a paid API for AI agents from llm-cost-calc.x402tookit.com, paid per call via x402, $0.02/call, status unknown (last checked 2026-10-29).

Calculates sustainable requests per minute, job duration, and concurrency needed given RPM and TPM provider limits and tokens per request.

## Facts

- Endpoint: GET https://llm-cost-calc.x402tookit.com/rate-limit-plan?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-29
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/llm-rate-limit-capacity-planner-0e1ea880
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_RHEZrX0FjlfwnzdyKLNHF

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability llm-rate-limit-capacity-planner-0e1ea880
```

Example prompt: Given my LLM provider's limits of 500 requests per minute and 100,000 tokens per minute, with an average of 800 tokens per request and about 3 seconds per request, how long will it take to process 5,000 requests and how many concurrent calls do I need?

## When to prefer this

Use this endpoint when you need to plan or validate a batch LLM workload against a provider's rate limits, determine the binding constraint (RPM vs TPM), estimate job completion time, or figure out how many concurrent workers to spin up. Prefer this over manual calculation when both RPM and TPM limits interact and you need to know which one dominates.

## Known failure modes

- Missing required parameters (requestsPerMinuteLimit, tokensPerMinuteLimit, tokensPerRequest) returns validation error
- Zero or negative token/rate values may produce division errors or nonsensical results
- Very high token counts per request exceeding TPM limit entirely may return zero sustainable rate
- Payment failure ($0.02 USDC) prevents the request from being processed

## How this service works

Sustainable requests per minute under RPM and TPM limits, job duration for N requests, and concurrency needed.

## Output

Returns the sustainable requests per minute achievable under both RPM and TPM limits, which limit is the binding constraint, estimated job duration in minutes and hours for N total requests, concurrency needed, utilization percentages for both RPM and TPM, and a plain-English summary and verdict.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "requestsPerMinuteLimit",
      "tokensPerMinuteLimit",
      "tokensPerRequest"
     ],
     "properties": {
      "totalRequests": {
       "type": "integer",
       "description": "Size of the job in requests (default 1000)"
      },
      "tokensPerRequest": {
       "type": "number",
       "description": "Average tokens counted per request"
      },
      "secondsPerRequest": {
       "type": "number",
       "description": "Average latency of one request, to compute concurrency (default 5)"
      },
      "tokensPerMinuteLimit": {
       "type": "number",
       "description": "Provider tokens-per-minute limit (input + output as your provider counts)"
      },
      "requestsPerMinuteLimit": {
       "type": "number",
       "description": "Provider requests-per-minute limit"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "asOf": {
       "type": [
        "null",
        "string"
       ]
      },
      "source": {
       "type": [
        "null",
        "string"
       ]
      },
      "reasons": {
       "type": [
        "array",
        "null"
       ],
       "items": {
        "type": "string"
       }
      },
      "summary": {
       "type": [
        "null",
        "string"
       ]
      },
      "verdict": {
       "type": [
        "null",
        "string"
       ]
      },
      "degraded": {
       "type": [
        "boolean",
        "null"
       ]
      },
      "jobHours": {
       "type": [
        "null",
        "number"
       ]
      },
      "limitedBy": {
       "type": [
        "null",
        "string"
       ]
      },
      "disclaimer": {
       "type": [
        "null",
        "string"
       ]
      },
      "jobMinutes": {
       "type": [
        "null",
        "number"
       ]
      },
      "notChecked": {
       "type": [
        "array",
        "null"
       
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/llm-rate-limit-capacity-planner-0e1ea880/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from llm-cost-calc.x402tookit.com](https://www.zero.xyz/host/llm-cost-calc.x402tookit.com/llms.txt)
