<!-- twin of https://specstream.ai/compare/spider-vs-jina-reader -->
# Spider vs Jina Reader in 2026: one key answers both calls

Compared on Nov 12, 2026. The page: https://specstream.ai/compare/spider-vs-jina-reader

On Nov 12, 2026, Spider bills $1 per GB of content plus $0.0001 per minute of CPU, and crawls whole sites. Jina Reader reads one URL a call and bills tokens by page length, and its Reader page prints no dollar rate.

SpecStream answers both calls on one key. Spider code calls `https://api.specstream.ai/spider` in place of `https://api.spider.cloud`, and Jina code calls `https://api.specstream.ai/jina` in place of `https://r.jina.ai/`. The bodies and the parsers stay.

Every page costs $0.80 per 1,000, whatever its size, and you know the price before the call. The Extract API behind both routes scores 0.908 F1 on WCXB. New accounts get $10 of credit, no card.

[Get an API key](https://specstream.ai/signup?src=alternatives-spider-vs-jina-reader&utm_source=alternatives-md&utm_campaign=spider-vs-jina-reader&returnTo=%2Fworkspace%2Fagents%3Ftab%3Dkeys) New accounts get $10 of credit, no card. It covers 12,500 pages.

## SpecStream, Spider and Jina Reader side by side

| | SpecStream | Spider | Jina Reader |
|---|---|---|---|
| Your code today | Runs as it is on both. Spider's `POST /scrape` and `/search` answer at `https://api.specstream.ai/spider`, and Jina's `POST` with `url` answers at `https://api.specstream.ai/jina`, with a SpecStream key as the Bearer token | `POST https://api.spider.cloud/scrape`, `/crawl` and `/search`, with a Spider key as the Bearer token | `POST https://r.jina.ai/` with `url` in the body, or the page address after `https://r.jina.ai/`, with a Jina key as the Bearer token |
| Price of a page read | $0.80 per 1,000 pages, $0.0008 a page, whatever its size. PDF, Word and Excel files are read at the same rate | $1 per GB of content plus $0.0001 per minute of CPU, so each page costs by its size and its render time | Tokens, charged by content length. Reader bills the output tokens, and its Reader page prints no dollar rate |
| How you pay | From a balance, with no monthly plan. Credit you buy never expires, and a key's `spend_cap_cents` is the most it can spend | A balance that never expires, or Unlimited requests from $40 a month | Tokens topped up as you go. Auto top up recharges your saved payment method below your threshold, and purchased credits are not refundable |
| Crawl a whole site | Firecrawl's `/v2/map` and `/v2/crawl` and a Crawl4AI server's `/crawl` answer on the same key, each in its own JSON. A map is one page read, and each crawled page with text is one page read | `/crawl` recursively crawls a website and collects every page | One URL a call. Reader converts the URL you send to text, and your code finds the next page |
| A page with no text | Not charged. A busy call gets a `429` with `Retry-After` and charges nothing | Failed requests cost $0 | Tokens are not deducted for failed requests |
| Search | $1 per 1,000 searches of up to 10 results on `/spider/search`, and from $1 per 1,000 on `GET /v1/web-search`, which returns up to 100 results for one search | `/search` searches the web and crawls the results | `s.jina.ai` returns the top five results with their URLs and contents, for a fixed number of tokens a request, from 10,000 |
| Rate limits | No monthly cap. Calls spend from your balance inside the limit you set on the key | 10,000 requests a minute by default | 20 requests a minute with no key, 500 on a free or paid key, 5,000 on premium, and 10,000 requests per 60 seconds per IP |
| Free to start | $10 of credit, no card: 12,500 pages or 10,000 searches | The crawler is MIT licensed on GitHub to run on your own servers. The hosted API is pay as you go from $1 per GB | 10M free tokens on every new API key, and basic use with no key |
| Published accuracy | 97.9 F-score on all 1,000 official SimpleQA Verified questions (978 correct). 64.0 item F1 and 43.4 row F1 on all 200 official WideSearch tasks. Extract API 0.908 F1 on WCXB. Method at [specstream.ai/benchmarks](https://specstream.ai/benchmarks?utm_source=alternatives&utm_campaign=spider-vs-jina-reader) | No accuracy score on its pricing page | No accuracy score on its Reader page |
| Every match as structured rows | Deep Search: a request in plain words returns every match on the live web as rows at 5¢, 15¢ or $1 a row, with a source URL on every value. The most a run can cost is quoted before it starts | Pages, billed by size and compute. Your code joins the facts into records | The content of the URL you send. Your code joins the facts into records |

## Why teams read pages with SpecStream

### Both calls on one key

A team that runs Spider for crawls and Jina Reader in notebooks keeps both. Each call keeps its path, its body and its parser; the address and the key change.

```
# Spider, before and after
curl -X POST https://api.spider.cloud/scrape \
  -H "Authorization: Bearer $SPIDER_API_KEY" -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/pricing", "return_format": "markdown"}'
curl -X POST https://api.specstream.ai/spider/scrape \
  -H "Authorization: Bearer $SPECSTREAM_API_KEY" -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/pricing", "return_format": "markdown"}'

# Jina Reader, before and after
curl -X POST https://r.jina.ai/ -H "Authorization: Bearer $JINA_API_KEY" -d "url=$URL"
curl -X POST https://api.specstream.ai/jina -H "Authorization: Bearer $SPECSTREAM_API_KEY" -d "url=$URL"
```

The address form works too: `https://r.jina.ai/<url>` becomes `https://api.specstream.ai/jina/<url>`. Each page read on either route is one Extract API page at $0.0008.

### What stays the same

On `/spider`, a scrape takes `url`, several by commas, `return_format` as `markdown`, `text`, `raw`, `empty` or a list, `return_page_links` and `metadata`, and answers a list with one object a page: `url`, `content`, `status`, `error`, `costs`, `links` and `metadata`. A search answers `content[]` with `title`, `description` and `url`. Every parameter is in the [Spider migration guide](https://specstream.ai/migrate/spider?utm_source=alternatives&utm_campaign=spider-vs-jina-reader).

On `/jina`, the reply starts with `Title:` and `URL Source:`, then `Markdown Content:`, as Jina's does. With `Accept: application/json` it carries `code`, `status` and `data` with `title`, `url`, `content` and `publishedTime`; `links`, `images` and `usage.tokens` are not returned. Every parameter is in the [Jina Reader migration guide](https://specstream.ai/migrate/jina?utm_source=alternatives&utm_campaign=spider-vs-jina-reader).

### One price a page, known before the call

Spider meters each page by the gigabytes it transfers and the CPU minutes it takes, so a heavy page that needs a browser costs more than a light one. Jina meters tokens by the length of each page. On SpecStream every page costs $0.0008, whatever its size or how it was read, from a balance that never expires. A page with no text is not charged, and the reply's `specstream` field carries the call's `price_usd`.

### A whole site on the same key

For a site in place of a page, send Firecrawl's `/v2/map` and `/v2/crawl` to `https://api.specstream.ai/firecrawl`, or a Crawl4AI server's `/crawl` to `https://api.specstream.ai/crawl4ai`, with no server to run. `/crawl/stream` returns one JSON result per line as pages land. A map is one page read, and each crawled page with text is one page read at $0.0008. The parameters are in the [Firecrawl migration guide](https://specstream.ai/migrate/firecrawl?utm_source=alternatives&utm_campaign=spider-vs-jina-reader).

### Scored on the official benchmarks

The Extract API that answers both routes scores 0.908 F1 on WCXB. The Search API on the same key scores a 97.9 F-score on all 1,000 official SimpleQA Verified questions, 978 of them correct, and 64.0 item F1 and 43.4 row F1 on all 200 official WideSearch tasks. Every score and its method is on the [benchmarks](https://specstream.ai/benchmarks?utm_source=alternatives&utm_campaign=spider-vs-jina-reader) page.

### You decide what is kept, on each key

Create a key with `zero_retention` and a call made with it keeps no request text and no answer after the reply. `spend_cap_cents` is the most the key can spend.

```
curl -X POST https://api.specstream.ai/v1/account/keys \
  -H "Authorization: Bearer $SPECSTREAM_API_KEY" -H "Content-Type: application/json" \
  -d '{"name": "production", "scopes": ["account:read", "finds:spend"], "spend_cap_cents": 500000, "zero_retention": true}'
```

### Search, pages and rows on one key

The same key reads up to 20 pages or documents a call with the [Extract API](https://specstream.ai/extract-api?utm_source=alternatives&utm_campaign=spider-vs-jina-reader) at $0.80 per 1,000 pages, searches the live web at $5 per 1,000 searches, and runs [Deep Search](https://specstream.ai/deep-search?utm_source=alternatives&utm_campaign=spider-vs-jina-reader), which returns every match for a request in plain words as structured rows at 5¢, 15¢ or $1 a row. Save a request and it reruns hourly to yearly, with each row labeled changed, unchanged or no longer matching.

## Other ways to read pages and whole sites for an LLM

### SpecStream

The live web data engine for teams and agents. Pages at $0.80 per 1,000 through the Extract API or the Spider, Jina, Firecrawl and Crawl4AI routes, search at $5 per 1,000, and every match as structured rows at 5¢, 15¢ or $1 a row.

### Firecrawl

Monthly credit plans from $19 a month for 5,000 credits, at 1 credit a page for Scrape and Crawl. SpecStream answers Firecrawl's `/v2/scrape`, `/v2/map` and `/v2/crawl` at `https://api.specstream.ai/firecrawl`, each page at $0.0008. [Firecrawl vs Jina Reader](https://specstream.ai/compare/firecrawl-vs-jina-reader?utm_source=alternatives&utm_campaign=spider-vs-jina-reader).

### Crawl4AI

A crawler you can host yourself, with a hosted API from $10 a month at 120 calls a minute. SpecStream answers a Crawl4AI server's `/crawl` and `/md` at `https://api.specstream.ai/crawl4ai`, with no server to run. [Firecrawl vs Crawl4AI](https://specstream.ai/compare/firecrawl-vs-crawl4ai?utm_source=alternatives&utm_campaign=spider-vs-jina-reader).

### Parallel Extract

$1 per 1,000 URLs, with 600 calls a minute by default. SpecStream reads the same pages at $0.80 per 1,000 with the Extract API, up to 20 a call, and answers Parallel's search at `https://api.specstream.ai/parallel`. [Parallel Search API compatible](https://specstream.ai/migrate/parallel?utm_source=alternatives&utm_campaign=spider-vs-jina-reader).

## How to move Spider and Jina Reader calls to SpecStream

1. Create a key under Agents & API in the workspace, with a spending limit. A new account gets $10 of credit, no card, which covers 12,500 pages.

2. Point the Spider calls at `https://api.specstream.ai/spider` and send the SpecStream key as the Bearer token.

```
import os, requests

BASE = "https://api.specstream.ai/spider"  # was https://api.spider.cloud
KEY = os.environ["SPECSTREAM_API_KEY"]

reply = requests.post(
    f"{BASE}/scrape",
    headers={"Authorization": f"Bearer {KEY}"},
    json={"url": "https://example.com/pricing", "return_format": "markdown", "metadata": True},
    timeout=60,
)
reply.raise_for_status()
for page in reply.json():
    print(page["url"], page["status"], page["metadata"]["title"], len(page["content"] or ""))
```

3. Point the Jina Reader calls at `https://api.specstream.ai/jina`. Ask for JSON with `Accept: application/json`, or leave the header out for Jina's text form.

```
const reply = await fetch("https://api.specstream.ai/jina", { // was https://r.jina.ai/
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.SPECSTREAM_API_KEY}`,
    Accept: "application/json",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ url: "https://example.com/pricing" }),
}).then((r) => r.json());

console.log(reply.data.title, reply.data.content.slice(0, 200));
```

4. Send whole site crawls to Firecrawl's `/v2/crawl` at `https://api.specstream.ai/firecrawl`. Each page with text is billed at $0.0008, and a `429` is a call to send again after `Retry-After`, with no charge.

## Frequently asked questions

### Is Spider better than Jina Reader?

Spider crawls whole sites and bills $1 per GB plus CPU minutes; Jina Reader reads one URL a call and bills tokens by page length. SpecStream answers both calls on one key at $0.80 per 1,000 pages, so the choice no longer changes your code.

### Spider vs Jina Reader pricing: what does each cost?

Spider costs $1 per GB of content plus $0.0001 per minute of CPU, or Unlimited from $40 a month. Jina Reader charges tokens by content length, with 10M free tokens on a new key and no dollar rate on its Reader page. SpecStream costs $0.0008 a page, whatever its size.

### Can I use both Spider and Jina Reader?

Yes, on one SpecStream key. Spider calls go to `https://api.specstream.ai/spider` and Jina Reader calls to `https://api.specstream.ai/jina`, each in its own JSON, from one balance.

### Which one crawls a whole site?

Spider has a `/crawl` endpoint, and Jina Reader reads one URL a call. On SpecStream a site is crawled through Firecrawl's `/v2/crawl` or a Crawl4AI server's `/crawl` on the same key, at $0.0008 for each page with text.

### What are the rate limits?

Jina Reader allows 20 requests a minute with no key, 500 on a free or paid key and 5,000 on premium; Spider gives 10,000 a minute by default. SpecStream has no monthly cap: calls spend from your balance inside the limit you set on the key.

### What happens to a page that returns no text?

On SpecStream it costs $0. Spider charges $0 for failed requests, and Jina does not deduct tokens for failed requests.

### Is there a free tier?

New SpecStream accounts get $10 of credit, no card, which covers 12,500 pages. Credit you buy never expires.

## Sources

SpecStream wrote this page. Each figure for Spider, Jina Reader and the other tools comes from that company's own page.

- [SpecStream pricing](https://specstream.ai/pricing), read Nov 12, 2026
- [SpecStream for agents](https://specstream.ai/agents.md), read Nov 12, 2026
- [SpecStream benchmarks](https://specstream.ai/benchmarks), read Nov 12, 2026
- [Spider pricing](https://spider.cloud/pricing), read Nov 12, 2026
- [Spider API docs](https://spider.cloud/docs/api), read Nov 12, 2026
- [Spider: Jina Reader vs Spider](https://spider.cloud/blog/spider-vs-jina-reader/), read Nov 12, 2026
- [Jina Reader](https://jina.ai/reader), read Nov 12, 2026
- [Jina legal](https://jina.ai/legal/), read Nov 12, 2026
- [Firecrawl pricing](https://www.firecrawl.dev/pricing), read Nov 12, 2026
- [Crawl4AI docs](https://docs.crawl4ai.com/), read Nov 12, 2026
- [Parallel pricing](https://docs.parallel.ai/getting-started/pricing.md), read Nov 12, 2026
- [Parallel rate limits](https://docs.parallel.ai/getting-started/rate-limits.md), read Nov 12, 2026
