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

ModelHow you payBest for
FreeMonthly free request allowanceTrying the API
Per-request subscriptionMonthly request allowanceRecurring, predictable request volume
Pay As You GoPrepaid request top-upsBursts without a larger subscription
UnlimitedFlat monthly price by concurrent threadsHigh 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

OperationRequest usage
Single-page extraction1 request per successfully extracted page
Async extraction1 request when the page is successfully extracted
Batch extraction1 request for each successfully extracted URL
Crawl1 request for each successfully extracted page
MapDoes not extract page content
Job lookup, statistics, webhooks, health checksDo 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

SituationStart with
Testing or small / occasional jobsFree or per-request
Variable monthly volumePer-request and/or Pay As You Go
High parallel volume, predictable monthly costUnlimited
Large Batch or Crawl workloadsUnlimited (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.

Was this page helpful?

On this page