# fastCRW vs Jina Reader (slim)

> fastCRW scores 64.3 (B) to Jina Reader's 51.9 (D) for scraping. Prices, MCP, x402, uptime and agent notes side by side.

- Full: https://www.anchorterminal.com/compare/crw-vs-jina-reader.md (~5,550 tokens) · this version ~2,980 tokens · JSON https://www.anchorterminal.com/compare/crw-vs-jina-reader.json · canonical https://www.anchorterminal.com/compare/crw-vs-jina-reader
- Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · MCP: https://www.anchorterminal.com/mcp · Updated: 2026-11-07
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)

fastCRW scores 64.3 (B) on agent readiness against Jina Reader's 51.9 (D), and leads in 4 of 7 scored categories. Jina Reader leads on reliability. Both do scraping.

- fastCRW: B 64.3, rank #478 of 1486 · https://www.anchorterminal.com/tools/crw.min.md
- Jina Reader: D 51.9, rank #999 of 1486 · https://www.anchorterminal.com/tools/jina-reader.min.md
- fastCRW, good for Agents that want Firecrawl-style scrape, crawl, map, search and extract at lower per-page cost, or a small self-hosted engine. Ahead on Schema & documentation, 91 against 77; Agent ergonomics, 91 against 80; Security & auth, 40 against 32; Maintenance & community, 93 against 45. Also Runs on your own machine; Free to start without a card; No incidents deducted, where Jina Reader loses 7 points for them.
- Jina Reader, good for Agents that read the web a page at a time and want to bound the tokens. Ahead on Reliability, 70 against 50.

| Category | fastCRW | Jina Reader |
| --- | --- | --- |
| Reliability (16%) | 50 | 70 |
| Performance (10%) | pending | pending |
| Schema & documentation (13%) | 91 | 77 |
| Agent ergonomics (13%) | 91 | 80 |
| Security & auth (14%) | 40 | 32 |
| Payments & pricing (10%) | 35 | 35 |
| Task success (10%) | pending | pending |
| Maintenance & community (7%) | 93 | 45 |
| Transparency & trust (7%) | 60 | 62 |

| Fact (where they differ) | fastCRW | Jina Reader |
| --- | --- | --- |
| Vendor | Nanofy OÜ | Jina AI (Elastic) |
| Hosted endpoint | `https://fastcrw.com/mcp` | `https://r.jina.ai/` |
| Transports | stdio, Streamable HTTP | HTTP, Streamable HTTP |
| Pricing | Freemium | Pay per use |
| Licence | AGPL-3.0 | Apache-2.0 |
| Tools exposed | 11 | none |
| llms.txt | yes | no |
| MCP registry | `io.github.fastcrw/crw` | not listed |
| Last release | 2026-11-04 | 2026-10-23 |
| Terms last updated | 2026-04-04 | 2026-05-04 |
| Privacy policy last updated | no date given | 2026-09-07 |
| Popularity | 1.2k stars, 881 npm/wk | 12k stars |
| Agent reviews | none | 2.5/5 (2) |

Why the edge:
- Maintenance & community, fastCRW +48: fastCRW 93 (v0.41.0 on 4 November 2026, matching the registry and npm (30). 16 dated releases in the 90 days from 8 August, from 0.37.0 to 0.41.0 (20). Five open issues on 6 November, the newest from 1 November with five and two comments; the support page says email is answered within a business day. Reply authors weren't read (18 of 25). In the official MCP registry as io.github.fastcrw/crw, a GitHub-verified namespace, with current Python and TypeScript SDKs (15). CI runs cargo test on the workspace, with Dependabot, CodeQL and release-please (10). 30 + 20 + 18 + 15 + 10 = 93.); Jina Reader 45 (The API reference Jina builds in the jina-ai/meta-prompt repository records dated changes to Reader's published interface since it first appeared on 14 October, with /echo paths added on 21 October and the `webBotAuth` parameter and Web Bot Auth paths on 23 October 2026, the newest dated API change. The MCP server's last version, 1.10.0, is dated 18 September (30). The MCP versions 1.5.0 to 1.10.0 between 11 August and 18 September are untagged bumps in package.json with no changelog, and the 14 and 15 October MCP commits carry no version, so none count as releases. The reference changes carry no version or changelog entry either (0). 22 open Reader issues on 1 October, including the two SSRF reports from June and a token-usage spike from April, with no fix in the repository, not re-read because the issue pages refuse us (5 of 25). No official SDK, the MCP server is the maintained client (5 of 15). Reader has CI workflows, the MCP repository has none (5 of 10).)
- Reliability, Jina Reader +20: fastCRW 50 (Graded on the hosted lines, for the hosted API and MCP server an agent would call; the self-hosted engine would read higher on the local lines. fastcrw.com/status is a first-party page with a live health check and a 99.9% monthly uptime objective, but no components with history (10 of 20). It lists no incidents and keeps no history we could read (5). Concurrency per plan is published, 3 on Free to 150 on Scale, while the request-rate guard above it is deliberately unpublished (12 of 15). The rate-limits page documents Retry-After and X-RateLimit headers, gives exponential backoff code, and separates 429 (retry) from 402 (stop). No idempotency keys for crawl, extract or monitor starts (13 of 15). Pricing mentions an SLA only as 'Premier + SLA' on Enterprise, with no terms, and the terms promise no uptime (0). The hosted service is sold on paid plans with no beta label, though the engine is at 0.41.0 (10). 10 + 5 + 12 + 13 + 0 + 10 = 50.); Jina Reader 70 (Atlassian Statuspage at status.jina.ai with automated incidents per service (per the 1 October check, not re-read on 5 November because Jina's terms bar automated extraction from its website) (20). On 1 October the feed reached back only to 15 September 2026. In that window r.jina.ai had no incidents and s.jina.ai had eight five-minute ones. Minor only, less 5 for the short window. The rest of the 90 days couldn't be read, so the recorded award is carried (15 of 30). Rate limits published, Reader 20 a minute without a key, 500 with a key and 5,000 premium, Search 100 and 1,000, and the API reference repeats the keyed figures (15). Jina's merged OpenAPI file (docs.jina.ai/openapi.json), published on 14 October 2026 and linked from the API reference, read from the jina-ai/meta-prompt repository that builds the docs, types the 429 answer for Reader as `RateLimitTriggeredError` with `retryAfter` seconds and a `retryAfterDate`. No backoff guidance, and Reader takes no writes (10). No SLA found (0). GA (10).)
- Schema & documentation, fastCRW +14: fastCRW 91 (OpenAPI 3.1 for 11 paths at version 0.41.0 in docs/openapi.json, checked against the server in CI, and typed JSON Schema inputs on every MCP tool (25). llms.txt (86 lines), llms-full.txt and Markdown sources for every docs page (10). Tool descriptions state purpose and how to chain them (crawl returns a job id to poll, map returns URLs only, extract needs an LLM), and the docs have a choose-an-endpoint page, but few descriptions say when not to use a tool (14 of 20). Inputs are typed with required fields and a renderer enum, though crawl and extract take a free-form JSON Schema object (12 of 15). Examples on every page and an errors page with each HTTP status, errorCode and next step (15). Semver releases with a dated CHANGELOG that flags breaking changes (15). 25 + 10 + 14 + 12 + 15 + 15 = 91.); Jina Reader 77 (Jina's merged OpenAPI file (docs.jina.ai/openapi.json), published on 14 October 2026 and linked from the API reference, read from the jina-ai/meta-prompt repository that builds the docs, covers the Reader paths (GET and POST on r.jina.ai) with 98 typed parameters each and a typed response for every status. The Markdown reference at docs.jina.ai/api.md, read on that host on 2 November 2026 for the Jina Embeddings listing before Jina's terms paused it, names the file in its text, which the repository's history shows it has carried since 14 October (25). The reference is also published as Markdown at docs.jina.ai/api.md, and docs.jina.ai answers curl with a plain-text guide written for coding agents, per the same repository. The Reader README is a full Markdown reference of every header (10). The README says when to use each option and gives a troubleshooting order (key, no cache, browser engine, proxy) (14 of 20). Options are headers or query parameters with documented values, such as `engine` browser, direct or cf-browser-rendering, though many spec parameters carry no description, and the MCP tools have typed schemas (11 of 15). curl examples and a cookbook, and the spec names an error body for each status, among them `BudgetExceededError` and `RateLimitTriggeredError` with a code and a readable message, but no recovery prose (11 of 15). No API changelog. The README carries a dated updates list, last April 2026, and the spec version is 2026.10.13.1624 (6 of 15).)
- Agent ergonomics, fastCRW +11: fastCRW 91 (11 compact MCP tools, two of them the data-source tools added in 0.41.0. Content is capped near 15,000 characters with `truncated: true` and a resume offset, and map returns at most 100 URLs by default (20 of 25). Formats, main-content filtering, include and exclude selectors, maxLength, startIndex, limit and crawl depth and page caps (20). Errors carry `errorCode` values such as anti_bot, insufficient_credits and llm_not_available with a retry table, though an anti-bot wall answers HTTP 200 with `success: false` (19 of 20). Every tool sets readOnlyHint, destructiveHint and idempotentHint, cancel is idempotent and failed pages are refunded, but job starts take no idempotency key (17 of 20). Only `url` is required, with official Python and TypeScript SDKs (15). 20 + 20 + 19 + 17 + 15 = 91.); Jina Reader 80 (`x-max-tokens` truncates and `x-token-budget` rejects oversized pages, `x-target-selector` returns one element, and images, links and media can be dropped or reduced to text (25). Semantic chunking, link and image summaries and presets for agent, research and index use (20). The OpenAPI file gives each status a typed error body with an application status code and a readable message, and the 429 body carries `retryAfter`. No per-error recovery guidance (12 of 20). Reads are GETs and safe to retry, with a cache and `x-no-cache` to bypass it. The MCP tools carry no readOnly or destructive hints (13 of 20). No required options beyond the URL, but no official SDK, only HTTP and the MCP server (10 of 15).)
- Security & auth, fastCRW +8: fastCRW 40 (The hosted MCP server publishes RFC 9728 metadata naming its own authorisation server, with PKCE S256, dynamic client registration and one scope, `mcp:tools`, and the API takes revocable Bearer keys from the dashboard. No key scopes or second scope found (22). The authentication page documents fastcrw.com/mcp/<API_KEY> as a way in, a key in the URL path, so less 10 (12 of 30). Tools mostly read, and data-source calls check approvals, but there is no read-only key or confirmation step for monitors (8 of 20). Managed LLM extraction, summaries and answers wrap scraped text in a nonce fence (crates/crw-extract/src/untrusted.rs), and the hardening guide treats pages as untrusted, but the MCP docs give agents no guidance on scraped content (7 of 15). Each response reports `creditsUsed`; no per-call log in the docs (5 of 15). SECURITY.md names security@fastcrw.com and GitHub private reporting with a 48-hour acknowledgement, and CI runs CodeQL and OpenSSF Scorecard. security.txt answers 404, and no bounty or certification found (8 of 20). 12 + 8 + 7 + 5 + 8 = 40.); Jina Reader 32 (One Bearer key per account, revocable, no scopes, shared with Search, Embeddings and Reranker, and Reader also runs with no key at all (20). No write actions on Reader, and the MCP server filters tools with `include_tags` and `exclude_tools` (12 of 20). Every response is third-party page content and we found no prompt-injection guidance. `x-detach-invisibles` drops hidden elements, but it isn't described as a defence (0 of 15). No per-request log found (0 of 15). No security.txt, the privacy statement is Elastic's, and two SSRF reports (#1252 and #1253, 12 June 2026) sat open as public issues on 1 October with no reply we could see. The Reader repository still has no commit after 22 May 2026, and the issue pages couldn't be re-read (0 of 20).)
