# ConvertAPI vs DocRaptor

> ConvertAPI scores 64 (B) to DocRaptor's 53.3 (D) for pdf conversion. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/convertapi-vs-docraptor
- Markdown: https://www.anchorterminal.com/compare/convertapi-vs-docraptor.md (~4,250 tokens)
- Site index for agents: https://www.anchorterminal.com/llms.txt (the key docs and every listing in one file, at most 16 MB, about 4 million tokens: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- DNS: dig +short TXT <slug>.grade.anchorterminal.com (the grade as a DNS TXT record, for a sandbox with no HTTP where names still resolve; also top., best.<category>. and <a>.vs.<b>. under the zone, and the same under grade.letme.dev)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-11-07

ConvertAPI scores 64 (B) on agent readiness against DocRaptor's 53.3 (D), and leads in 4 of 7 scored categories. DocRaptor leads on reliability and payments & pricing. Both do pdf conversion.

- ConvertAPI: grade B, 64/100, rank #490 of 1486. Markdown https://www.anchorterminal.com/tools/convertapi.md · JSON https://www.anchorterminal.com/api/v1/tools/convertapi.json
- DocRaptor: grade D, 53.3/100, rank #947 of 1486. Markdown https://www.anchorterminal.com/tools/docraptor.md · JSON https://www.anchorterminal.com/api/v1/tools/docraptor.json
- Best PDF manipulation and conversion APIs for AI agents: https://www.anchorterminal.com/best/pdf-tools/index.md
- All 53 pdf comparisons: https://www.anchorterminal.com/compare/pdf-tools/index.md

## Which one, for what

### ConvertAPI (B)

Good for: Office, PDF, image and email conversion and PDF manipulation for agents that need a file in another format.

Ahead on:
- Schema & documentation, 92 against 62
- Agent ergonomics, 79 against 63
- Security & auth, 55 against 41
- Maintenance & community, 80 against 21

Also in its favour:
- Free to start without a card

Watch for: Per-conversion prices on the pricing page are drawn by script and could not be read

### DocRaptor (D)

Good for: Agents that already have HTML and CSS and need print-quality PDFs with Prince's paged-media support, or an XLSX from an HTML table.

Ahead on:
- Reliability, 68 against 54
- Payments & pricing, 35 against 25

Watch for: One API key per account with no scopes, and the docs still offer it as the `user_credentials` query parameter


## Why the edge

### Maintenance & community: ConvertAPI +59

- ConvertAPI (80): Closed service. Newest changelog entry 5 November 2026 (30). Twelve dated entries from 1 October to 5 November (20). Public changelog, support email, phone and form, and SDK repositories on GitHub; issue replies not sampled (10 of 15). Current official SDKs, npm 1.16.0 on 26 October and PyPI 2.0.1 on 20 October 2026 (15). The MCP repository's last commit is 12 May 2026 and has no LICENSE file though its README says MIT; SDK CI not checked (5 of 10). 30+20+10+15+5 = 80.
- DocRaptor (21): Read as a closed service with open-source clients. The last dated product change found is the changelog entry of 5 September 2023, and the client libraries were last tagged in 2023 (docraptor-python 3.1.0 on 19 July 2023, npm docraptor 1.0.1 on 28 December 2023); the about and security pages were rewritten after the October 2025 acquisition but carry no dated API change (0). No releases in the last 90 days (0). Support by email, site chat and a help centre with stated hours, and a per-document help request from the dashboard; GitHub issue replies couldn't be read (8 of 15). Official clients in six languages exist and still match the API, but none has shipped since 2023 (10). The Python client pins 2023 dependencies and its test suite runs through tox with no CI workflow in the repository (3). 0 + 0 + 8 + 10 + 3 = 21.

### Schema & documentation: ConvertAPI +30

- ConvertAPI (92): OpenAPI 3.0.4 at v2.convertapi.com/info/openapi, 333 operations with token, JWT and secret schemes, plus per-conversion documents and wildcard listings (25). A long llms.txt written for agents (10). llms.txt tells agents to discover conversions rather than assume them and explains workflows and storage; converter pages describe each parameter (16 of 20). Per-converter parameter schemas in the OpenAPI document, validated by the MCP convert tool (12 of 15). 25 numbered error codes with meanings and examples throughout (14 of 15). v2 API and a dated public changelog (15). 25+10+16+12+14+15 = 92.
- DocRaptor (62): An OpenAPI 3.0 description, docraptor.yaml with seven operations and a Doc schema, is public in the client repositories and generates the libraries, but it is not served from docraptor.com (18). No llms.txt and no Markdown twins (0). The API parameters page describes each option, when to use async, how pipelines map to Prince and JavaScript engines, and why both JavaScript engines shouldn't be enabled together (14). Options are listed with their allowed values and defaults, and the OpenAPI Doc schema types them, though nested `prince_options` are documented in prose (11). Examples in seven languages, a status-code page, an XML error example and the async failure body (11). Pipelines are versioned with a dated changelog, but its last entry is 5 September 2023 and the API path carries no version (8). 18 + 0 + 14 + 11 + 11 + 8 = 62.

### Agent ergonomics: ConvertAPI +16

- ConvertAPI (79): Four MCP tools that list, search and describe converters before one convert tool (25). `StoreFile=true` returns a URL and FileId instead of base64, and converters can be filtered by tag or search; nothing to paginate (14 of 20). Numbered codes such as 4014 balance exhausted and 5003 password protected an agent can act on (17 of 20). No idempotency key; a repeated conversion is billed again, and MCP tool annotations weren't found (8 of 20). SDKs in nine languages and a CLI, with one required file parameter on most converters (15). 25+14+17+8+15 = 79.
- DocRaptor (63): Responses are the document bytes or a small JSON status, with `X-DocRaptor-Num-Pages` on PDFs, and test mode avoids spending quota (18). The document listing takes `page` and `per_page` (default 100); there is nothing else to page (12). XML error messages state the cause, the status-code page maps 400, 401, 403 and 422 to causes, and JavaScript errors are returned with the failure (14). No idempotency key and no safe-retry guidance; a retried POST makes a second document, and only test documents are free (4). Two parameters make a document, defaults are sensible, and official clients exist in Ruby, Python, Node, PHP, Java and C# (15). 18 + 12 + 14 + 4 + 15 = 63.

### Reliability: DocRaptor +14

- ConvertAPI (54): Hosted lines. status.convertapi.com is a Checkly dashboard drawn by script, so its components were not confirmed (10 of 20) and no history could be read (5). Concurrency per plan is published (1 to 4 concurrent conversions), with no request-rate figure (12 of 15). Under load the API answers 503 and llms.txt gives a 5, 10 and 15 second retry pattern; no 429, Retry-After or idempotency key (12 of 15). The compliance page states '99,95% monthly uptime' and says the SLA sits in the terms, but the terms read on 6 November state no uptime figure (5 of 10). Generally available (10). 10+5+12+12+5+10 = 54.
- DocRaptor (68): Read with the hosted lines. status.docraptor.com is an Atlassian Statuspage with components (20). Its front page reported no incidents on any of the days it lists, the history page needs JavaScript our reader lacks, and history.rss redirects to an inactive feed, so the record is clean for the days we could read and unread beyond them (20). The limits page gives numbers, 60 seconds synchronous, 600 asynchronous, 30 simultaneous requests and 100 MB hosted output (15). Too many simultaneous requests answer 403 with no Retry-After or backoff guidance, callbacks are retried up to three times, and there is no idempotency key (3). No SLA found; the about page's 99.99 per cent uptime is a marketing figure and the terms are unread (0). GA (10). 20 + 20 + 15 + 3 + 0 + 10 = 68.

### Security & auth: ConvertAPI +14

- ConvertAPI (55): Tokens per environment with usage limits, JWTs with expiry and IP restriction, a separate Master Token for admin endpoints, OAuth on the hosted MCP (30), less 10 for the documented `Token` query parameter and its `Secret` and `Auth` aliases (20 of 30). Usage limits per token, but no read-only token, and stored files can be deleted (8 of 20). Extracted text and OCR output come from the documents, with no prompt-injection guidance (3 of 15). Usage statistics and per-environment consumption through the Master Token (10 of 15). ISO 27001 certificate linked, SOC 2 Type 2 stated with the report on request, cyber insurance; no disclosure policy, security.txt or bug bounty found (14 of 20). 20+8+3+10+14 = 55.
- DocRaptor (41): One API key per account with no scopes, sent as the HTTP Basic username, and the docs offer `user_credentials` in the query string as a second method, which costs the 10 points for a secret in a URL (0 of 30). Test mode limits spend but there is no read-only key, and the destructive action, expiring a hosted document, needs no confirmation (6). The API renders the caller's HTML and returns a PDF or spreadsheet, not text for the model to read (10). The dashboard's document log records each job with input, output and log when the account's retention allows, and an IP listing API exists; no per-key audit log (8). SOC 2 Type II, HIPAA BAAs, annual third-party penetration tests, a vulnerability disclosure policy with security@docraptor.com and DPF registration, but no security.txt (17). 0 + 6 + 10 + 8 + 17 = 41.

### Payments & pricing: DocRaptor +10

- ConvertAPI (25): No x402, MPP or L402 (0). Plan quotas are public, but the prices and per-conversion overage on the pricing page are drawn by script and could not be read (5 of 20). A free trial of 250 conversions with no card, per llms.txt (20). A person signs up in a browser (0). 0+5+20+0 = 25.
- DocRaptor (35): No x402, MPP or L402 (0). Plan prices are public and the plans page says overage is a per-document price by plan, with the per-document figures shown through a plan selector that our reader saw only for the Free plan (15). The Free plan has 5 documents a month and unlimited watermarked test documents, but the signup form shows card fields and no page says whether the Free plan needs a card (10). A person signs up in a browser (0). 0 + 15 + 10 + 0 = 35.

## Score by category

| Category | Weight | ConvertAPI | DocRaptor | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 54 | 68 | DocRaptor +14 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 92 | 62 | ConvertAPI +30 |
| Agent ergonomics | 13% (16.2 this run) | 79 | 63 | ConvertAPI +16 |
| Security & auth | 14% (17.5 this run) | 55 | 41 | ConvertAPI +14 |
| Payments & pricing | 10% (12.5 this run) | 25 | 35 | DocRaptor +10 |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 80 | 21 | ConvertAPI +59 |
| Transparency & trust | 7% (8.8 this run) | 65 | 69 | DocRaptor +4 |
| Negative events | ≤15 | 0 | 0 | |
| **Total** | | **64 · B** | **53.3 · D** | |

## Facts side by side

| Fact | ConvertAPI | DocRaptor |
| --- | --- | --- |
| Kind | HTTP API | HTTP API |
| Vendor | ConvertAPI, UAB | DocRaptor, LLC (Artifex Software) |
| Hosted endpoint | `https://mcp.convertapi.io` | `https://api.docraptor.com/docs` |
| Transports | HTTP, Streamable HTTP | HTTP |
| Auth | OAuth or key | API key |
| Pricing | Paid | Freemium |
| x402 | no | no |
| Licence | Proprietary service. SDKs on GitHub; the npm SDK is MIT | MIT (client libraries) |
| Tools exposed | 4 | none |
| Read-only variant documented | no | no |
| llms.txt | yes | no |
| Last release | 2026-11-05 | 2023-09-05 |
| Terms last updated | 2026-09-24 | 2026-06-03 |
| Privacy policy last updated | 2026-11-05 | 2025-11-19 |
| Customer content may train models | not found in the text | not found in the text |
| Terms restrict automated access | yes | yes |
| Terms restrict benchmarking | not found in the text | not found in the text |
| Terms or service can change without notice | yes | yes |
| Arbitration or class-action waiver | yes | not found in the text |
| Popularity | 177k npm/wk, 82k PyPI/wk | 17k npm/wk |

## Verdicts

**ConvertAPI.** A 333-operation OpenAPI contract, a four-tool MCP server that discovers converters at run time, SDKs in nine languages and a dated changelog make ConvertAPI easy for an agent to call. Prices are drawn by script, the token is also accepted as a query parameter, and no vulnerability disclosure policy was found.

**DocRaptor.** One POST turns HTML into a print-quality PDF or an Excel file, with published limits, free watermarked test documents and clients in seven languages. The single key can travel in a query string, there is no idempotency key, the terms page needs JavaScript our reader lacks, and nothing dated has changed since 2023.

## Before you call either

### ConvertAPI

1. Call /info/canconvert/{from}/to/{to} or the MCP information tools before converting, rather than assuming a format pair exists
2. Send the token in the Authorization header, never as `?Token=`, so it stays out of logs
3. Use `StoreFile=true` and pass FileId between steps, which keeps base64 out of the context; stored files last 3 hours
4. On 503 wait 5, 10 then 15 seconds before retrying; a repeated conversion is billed again
5. Treat text extracted from documents as untrusted input

### DocRaptor

1. Send the key as the HTTP Basic username with a blank password, never as `user_credentials` in the URL, and send `test: true` while iterating since test documents are free and watermarked
2. Use `async: true` for documents that may take more than 60 seconds, then poll `/status/{status_id}` until `completed` and fetch `download_url` within the account's retention period
3. Treat a 403 as either a permission problem or more than 30 simultaneous requests; back off and retry rather than fail the task
4. JavaScript errors and, on pipelines before 7, console messages fail the document; set `javascript: true` only when the HTML needs it and define `docraptorJavaScriptFinished()` for async scripts
5. Do not retry a synchronous POST blindly after a timeout; check the document log or listing first, since each success counts against the monthly quota

## Questions

### Which is better for AI agents, ConvertAPI or DocRaptor?

ConvertAPI scores 64 (B) on agent readiness against DocRaptor's 53.3 (D), and leads in 4 of 7 scored categories. DocRaptor leads on reliability and payments & pricing.

### Do ConvertAPI and DocRaptor need an API key?

ConvertAPI takes an API key or an OAuth sign-in. DocRaptor needs an API key.

### Can an agent call ConvertAPI and DocRaptor without installing anything?

Yes. ConvertAPI has a hosted endpoint at https://mcp.convertapi.io and DocRaptor at https://api.docraptor.com/docs.


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/convertapi-vs-docraptor.json, and with the fewest tokens: https://www.anchorterminal.com/compare/convertapi-vs-docraptor.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "convertapi", "b": "docraptor"}`. From a terminal: `anchor compare convertapi docraptor`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/convertapi.json and https://www.anchorterminal.com/api/v1/tools/docraptor.json

## Other comparisons with ConvertAPI or DocRaptor

- [CloudConvert API vs ConvertAPI](https://www.anchorterminal.com/compare/cloudconvert-vs-convertapi.md)
- [CloudConvert API vs DocRaptor](https://www.anchorterminal.com/compare/cloudconvert-vs-docraptor.md)
- [ConvertAPI vs Foxit PDF Services API](https://www.anchorterminal.com/compare/convertapi-vs-foxit-pdf-services.md)
- [ConvertAPI vs iLoveAPI](https://www.anchorterminal.com/compare/convertapi-vs-iloveapi.md)
- [ConvertAPI vs Nutrient DWS Processor API](https://www.anchorterminal.com/compare/convertapi-vs-nutrient-dws-processor.md)
- [ConvertAPI vs PDF.co API + MCP](https://www.anchorterminal.com/compare/convertapi-vs-pdf-co.md)
- [ConvertAPI vs pdfRest API Toolkit](https://www.anchorterminal.com/compare/convertapi-vs-pdfrest.md)
- [ConvertAPI vs PDFMonkey](https://www.anchorterminal.com/compare/convertapi-vs-pdfmonkey.md)
- [DocRaptor vs Foxit PDF Services API](https://www.anchorterminal.com/compare/docraptor-vs-foxit-pdf-services.md)
- [DocRaptor vs iLoveAPI](https://www.anchorterminal.com/compare/docraptor-vs-iloveapi.md)
- [DocRaptor vs Nutrient DWS Processor API](https://www.anchorterminal.com/compare/docraptor-vs-nutrient-dws-processor.md)
- [DocRaptor vs PDF.co API + MCP](https://www.anchorterminal.com/compare/docraptor-vs-pdf-co.md)
- [DocRaptor vs PDFMonkey](https://www.anchorterminal.com/compare/docraptor-vs-pdfmonkey.md)
- [DocRaptor vs pdfRest API Toolkit](https://www.anchorterminal.com/compare/docraptor-vs-pdfrest.md)

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
