> This page is for version v2025-04-21.
> For other versions, use one of these documentation indexes:
> - v2026-02-09 (default): https://docs.extend.ai/2026-02-09/llms.txt
> - v2025-04-21: https://docs.extend.ai/2025-04-21/llms.txt
> - v2024-12-23: https://docs.extend.ai/2024-12-23/llms.txt

> ## Documentation Index
> Fetch the complete documentation index at: https://docs.extend.ai/llms.txt
> Use this file to discover all available pages before exploring further.
>
> ## API version
> The current API version is `2026-02-09`, served at the site root (no version prefix in URLs).
> If this page URL contains `/2025-04-21/` or `/2024-12-23/`, you are reading an older API version.
> Prefer the current docs at https://docs.extend.ai/llms.txt unless the user explicitly needs that older version.
> Do not treat older-version pages as the source of truth for new integrations.

# Best Practices

> Optimize Parse API usage for performance or accuracy based on your use case.

This guide covers best practices for using the Parse API, including performance optimization and accuracy improvements.

---

## Async vs. sync processing

* Use [`POST /parse`](/2025-04-21/developers/api-reference/parse-endpoints/parse-file) for synchronous parsing when you want results immediately and the file size is small enough for a single request.
* Use [`POST /parse/async`](/2025-04-21/developers/api-reference/parse-endpoints/parse-file-async) for asynchronous parsing, which returns a parser run ID you can poll with [`GET /parser_runs/{id}`](/2025-04-21/developers/api-reference/parse-endpoints/get-parser-run).

> **Warning**
>
> For high-volume production workloads, prefer async parsing.

---

## Performance optimization

**For fastest processing:**

* Set `blockOptions.text.agentic.enabled` to `false` (most significant speedup—avoids AI-based OCR corrections)
* Set `blockOptions.figures.enabled` to `false` (avoids AI-based figure analysis)
* Set `pageRotationEnabled` to `false` if all pages are correctly oriented
* Use `chunkingStrategy: "document"` (fastest) or `"page"` instead of `"section"` (section chunking adds CPU overhead during parsing to generate semantic sections)

**For highest accuracy:**

* Set `target: "markdown"` with `chunkingStrategy: "section"`
* Set `blockOptions.text.agentic.enabled` to `true` for handwritten/degraded documents
* Set `tableHeaderContinuationEnabled` to `true` for multi-page tables
* Set `signatureDetectionEnabled` to `true` for legal documents

---

## Troubleshooting

### Poor quality OCR results

1. Set `blockOptions.text.agentic.enabled` to `true` for handwritten/degraded documents
2. Set `pageRotationEnabled` to `true` for rotated pages
3. Try `target: "spatial"` for very messy or skewed documents

### Chunks are too large or too small

1. Adjust `minCharacters` and `maxCharacters` in `chunkingStrategy.options` if you are using `type: "section"` with `target: "markdown"`.
2. Try different chunking types (`page` vs `section` vs `document`)
3. Consider using `pageRanges` to process fewer pages per request

### Tables not parsing correctly

1. Set `tableHeaderContinuationEnabled` to `true` for multi-page tables
2. Set `targetFormat: "html"` for better table structure
3. Set `blockOptions.tables.agentic.enabled` to `true`