> ## Documentation Index
> Fetch the complete documentation index at: https://docs.anythingmd.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Pricing and limits

> What a conversion costs, and the limits that apply.

API calls use the same credits and prices as the website. Buy credits under **Settings → Billing**.

## Credits per conversion

| What | Credits |
| - | - |
| Converted page (PDF, Word, PowerPoint, images; OCR included) | 15 per page |
| Spreadsheet, plain text, Markdown or CSV | 15 per file |
| Repeat conversion of identical content (`cached: true`) | 1 per page |
| Failed or canceled job | 0 |

When a job starts, credits for its estimated pages are reserved. When it finishes, you are charged for the pages actually converted and the rest is refunded. Every job has a receipt:

```bash theme={null}
curl "https://anythingmd.com/api/v1/receipts?jobId=job_..." \
  -H "Authorization: Bearer $ANYTHINGMD_API_KEY"
```

To see the price before converting, request a quote with `POST /api/v1/quotes`. Quotes for uploaded files use the exact page count; quotes for URLs are a minimum, because the file is not downloaded to quote it.

## Convert what your credits cover

Send `"allowPartial": true` when creating a job. If your credits do not cover the whole document, the job converts as many pages as they do instead of failing, and reports where it stopped:

```json theme={null}
{
  "status": "succeeded",
  "pageRange": { "start": 1, "end": 20 },
  "partial": true,
  "nextStartPage": 21,
  "estimatedTotalPages": 154
}
```

After buying credits, create another job for the same source with `"startPage": 21` to convert the rest. You are charged only for the pages converted.

## Not enough credits

Without `allowPartial`, or when the balance does not cover even one page, the job is refused with `402 Payment Required`, and nothing is reserved:

```json theme={null}
{
  "error": "Insufficient credits for this operation.",
  "code": "insufficient_credits",
  "requiredCredits": 450,
  "availableCredits": 120,
  "topUpPath": "/settings/billing"
}
```

## Limits

| Limit | Value |
| - | - |
| Job, upload and cancel requests | 60 per minute per key |
| Pages per document | 1,000 |

Over the rate limit you get `429` with a `Retry-After` header. Documents over the page limit are refused with `413` before anything is reserved; split them and convert the parts.
