What the $19 unmetered Pool plan is for
Every other paid plan sells you a number of requests. The unmetered Pool plan does not: for $19 a month there is no request count at all, only a rate limit of 10 requests per second. That makes it the cheapest way to run a lot of simple requests, and the wrong plan for a few specific jobs. This post lays out both, so you can tell which side your project is on.
What the Pool plan includes
- No request count. Requests are not metered, so there is no monthly allowance to run out of and no overage. The limit is the rate, not the total.
- 10 requests per second, sustained, across your whole account.
- CSS and XPath extraction with
POST /v1/extract: send a URL and a field map, get JSON back. - Markdown and the other page formats from
POST /v1/fetch(html,text,markdown,raw). - Raw tunneling: point your own HTTP client, scraper or test suite at the gateway and every request leaves from a rotating exit IP.
- Lead generation tools in the dashboard, including the local businesses search.
- Rotation, country targeting and sticky sessions, which every plan has.
The largest single response it will return is 2 MB, the same as Free and Starter. Real pages are far below that. Paid yearly, it is $190 instead of $228.
What it leaves out
- AI extraction. A
prompt, aschemaor anextract_typepreset needs the Scale plan or above. - Browser rendering.
renderand everything built on it (wait_for,actions,screenshot,device) is on every plan except Pool. - Priority exits. Pool runs on non-priority exits. On the metered paid plans a request is offered the premium ISP and datacenter exits first, then a deeper bench of health-checked addresses, then a last-resort attempt. Pool requests do not get that first offer.
None of this is hidden in a footnote: it is the trade that makes an unmetered plan possible at $19.
Who it fits
Pool fits work where the page arrives as plain HTML and the volume is high enough that counting requests would get in the way.
- Prototyping past the free tier. Free gives you 1,000 requests to see the shape of the JSON. Pool lets you keep building and testing without watching a counter.
- Bulk plain fetches. Archiving pages, feeding Markdown into a search index or an LLM pipeline, checking that a list of URLs still resolves.
- CSS extraction on sites you know. If you have written the selectors for a catalog or a directory, Pool runs them as often as the rate allows.
- Lead lists. The dashboard's lead tools and the local businesses search are included.
- Raw tunneling for an existing scraper that already parses pages itself and only needs rotating exits.
Here is the kind of request Pool is built for: a CSS extraction with a group field, on a page that needs no JavaScript.
curl https://scrape.land/v1/extract \
-H "X-Api-Key: YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://quotes.toscrape.com/",
"fields": {
"quotes": {
"css": ".quote",
"fields": {
"text": ".text",
"author": ".author",
"tags": {"css": ".tag", "all": true}
}
}
}}'The response from a real run, with the list cut to two of its ten quotes:
{
"data": {
"quotes": [
{"author": "Albert Einstein", "tags": ["change", "deep-thoughts", "thinking", "world"],
"text": "“The world as we have created it is a process of our thinking. It cannot be changed without changing our thinking.”"},
{"author": "J.K. Rowling", "tags": ["abilities", "choices"],
"text": "“It is our choices, Harry, that show what we truly are, far more than our abilities.”"}
]
},
"status": 200,
"url": "https://quotes.toscrape.com/"
}Who should pick a metered plan instead
- You need AI extraction. Describing fields in plain English, or pulling a normalized product or article with
extract_type, starts at Scale. - Your targets build their content with JavaScript. If a plain fetch comes back without the data, you need
render, which Starter and every plan above it include. Our guide to JavaScript-heavy pages shows how to tell. - You want priority exits. For production traffic against demanding targets, or work where response time matters, the metered plans route to the premium exits first.
- You need more than 10 requests per second. Starter allows 50, Growth 100, Scale 200 and Business 1,000.
How the 10 requests per second limit works
The limit is on sustained requests per second, and it is enforced per account across every key you own. Minting a second key does not give you a second 10 per second. Short bursts above it are tolerated. When you go over, the API answers 429 with a Retry-After header: wait that long and send the same request again. Nothing is lost and a refused request is not billed.
At the full rate, 10 per second is 36,000 requests an hour and 864,000 a day. You will rarely hold that for a whole day, because each request takes as long as the target site takes to answer, but it shows where the ceiling sits: well above what the request count on Starter covers.
The practical point is to pace your client instead of relying on the 429. Keep enough requests in flight to cover response time, and hand out no more than 10 starts per second. Our guide to crawling at 10 requests per second has a complete Python crawler that does exactly that, with retries and resume.
What it costs
Pool is $19 a month or $190 a year, with no request count and no overage. Metered plans start at $99 a month for 600,000 requests (Starter), and AI extraction starts at Scale, $499 a month. The full comparison is on pricing.
Next steps
The field map syntax and every request option are in the docs. If you already have a scraper, rotating IPs with tunneling shows how to route it through the gateway. Create a free account to try the API first; Pool is on the pricing page when you are ready.