Scraper API Pricing
Scraper API has one billing surface for Scraper, Map, Crawl, and Search. There are no credits or endpoint multipliers — successful page extractions on request-based plans use requests, and Unlimited plans bill by concurrency instead.
Current prices and plan limits
Dollar amounts, request volumes, thread counts, and plan limits change over time. For the latest numbers and to subscribe, open the
Geonode Scraper API pricing page
.
Pricing models
| Model | How you pay | Best for |
|---|---|---|
| Free | Monthly free request allowance | Trying the API |
| Per-request subscription | Monthly request allowance | Recurring, predictable request volume |
| Pay As You Go | Prepaid request top-ups | Bursts without a larger subscription |
| Unlimited | Flat monthly price by concurrent threads | High volume and parallel extractions |
All four models are available on the pricing page. Use this docs page to understand how each model works.
Request-based models (Free, subscription, Pay As You Go)
Request-based plans charge (or consume balance) for successful page extractions.
How requests are counted
| Operation | Request usage |
|---|---|
| Single-page extraction | 1 request per successfully extracted page |
| Async extraction | 1 request when the page is successfully extracted |
| Batch extraction | 1 request for each successfully extracted URL |
| Crawl | 1 request for each successfully extracted page |
| Map | Does not extract page content |
| Job lookup, statistics, webhooks, health checks | Do not extract page content |
These options do not add extra request charges on a successful extraction:
- JavaScript rendering
- Geo-targeting
- Markdown and/or HTML output
Failed extractions are not charged. Authentication errors, validation errors, and requests rejected before extraction are not charged either.
Some dashboard or API fields still use older token names (tokens_charged, estimated_tokens, tokens_reserved). Treat those as request counts for billing.
Free
- Monthly free request allowance (amount on the pricing page)
- No credit card required to start
- Free requests renew each billing month and do not roll over
Per-request subscription
- Monthly request allowance by tier
- Unused subscription requests typically roll over while the subscription stays active
- Can be combined with Pay As You Go if both balances exist
Pay As You Go
- Prepaid request top-ups (no monthly request commitment)
- Useful for bursts or irregular load
- Top-ups do not expire; minimum order and rates are on the pricing page
When you run out of requests
The API returns HTTP 402 when the account has no available request balance:
{
"code": "PAYMENT_REQUIRED",
"message": "Insufficient request balance.",
"correlation_id": "req_...",
"retryable": false
}Add requests from the dashboard, buy Pay As You Go, or move to Unlimited.
Unlimited model
Unlimited plans use a flat monthly price. There is no monthly request balance.
What matters instead:
- Concurrent threads — how many extractions can run at once
- Per-job size limits — max URLs per batch job and pages per crawl job (plan-dependent)
When all threads are busy, new work waits in a queue; it is not rejected for concurrency.
JS rendering, geo-targeting, and output format do not change Unlimited pricing. Current thread tiers, trial options, and job limits are on the pricing page. For higher concurrency than listed plans, contact sales.
Which model to choose
| Situation | Start with |
|---|---|
| Testing or small / occasional jobs | Free or per-request |
| Variable monthly volume | Per-request and/or Pay As You Go |
| High parallel volume, predictable monthly cost | Unlimited |
| Large Batch or Crawl workloads | Unlimited (split across jobs if needed) |
You can change plans as usage grows. Prefer the model that matches how you actually run extractions, not only the highest limits.
Checking usage
In the Geonode dashboard you can review remaining free/subscription/Pay As You Go balances or Unlimited concurrency usage, depending on your plan.
Related
Was this page helpful?