specificationVersion: "0.1" id: serper-rate-limits name: Serper Rate Limits generated: '2026-08-13' method: searched source: >- https://serper.dev (pricing table + FAQ) and Serper's own playground bundles https://serper.dev/_next/static/chunks/pages/playground-7ce8960e9fe2fc99.js and https://serper.dev/_next/static/chunks/2953-0ed5944c92d83408.js — read 2026-08-13 description: >- Serper enforces two independent limits: a queries-per-second concurrency ceiling tied to the credit package you bought, and a credit balance that stops accepting queries at zero. Credits are deducted only for successful responses. Crucially, a query is not always one credit — the cost varies by search type, by result count, and by whether you use mini-batch. Serper publishes NO rate-limit response headers, so an agent cannot read its remaining budget or a retry delay from the wire. url: https://serper.dev limit_count: 4 correction: date: '2026-08-13' detail: >- The previous version of this file listed 50/100/150/200/300 QPS for Free/Starter/Standard/Scale/Ultimate. Serper's published pricing table states 50 (Starter), 100 (Standard), 200 (Scale), 300 (Ultimate) and publishes no QPS figure for the free trial. Corrected below. headers: published: false request_headers: [] response_headers: [] retry_after: false status_on_exhaustion: 429 detail: >- No RateLimit-*, X-RateLimit-* or Retry-After header is documented, and none was observed. The only runtime signal is the HTTP status and the JSON body {"message": ..., "statusCode": ...}. Remaining credit balance is visible only in the Serper dashboard, not in an API response — except on the webpage scrape surface, where Serper states the credits consumed by that call are returned in the response body. rateLimits: - name: Starter QPS Limit description: Concurrency ceiling for the Starter credit package. scope: per-account plan: Starter limit: 50 period: second unit: requests notes: 50,000 credits at $1.00/1k. Credits valid 6 months. - name: Standard QPS Limit description: Concurrency ceiling for the Standard credit package. scope: per-account plan: Standard limit: 100 period: second unit: requests notes: 500,000 credits at $0.75/1k. - name: Scale QPS Limit description: Concurrency ceiling for the Scale credit package. scope: per-account plan: Scale limit: 200 period: second unit: requests notes: 2,500,000 credits at $0.50/1k. - name: Ultimate QPS Limit description: >- Default concurrency ceiling for the Ultimate credit package. Serper's FAQ states this allows roughly 15,000-18,000 searches per minute and that the limit can be raised for a specific use case on request. scope: per-account plan: Ultimate limit: 300 period: second unit: requests raisableOnRequest: true notes: 12,500,000 credits at $0.30/1k. freeTrial: credits: 2500 requestsPerSecond: null note: >- Serper publishes 2,500 free credits with no credit card, but states no QPS ceiling for the trial. Recorded as unknown rather than guessed. creditCosts: description: >- The credit cost of a query, read from the calculator in Serper's own playground. This is the real unit of consumption behind the QPS limits and the balance. source: >- https://serper.dev/_next/static/chunks/pages/playground-7ce8960e9fe2fc99.js default: 1 byType: - type: search credits: 1 - type: images credits: 1 multiplier_note: Doubles to 2 when num > 10. - type: videos credits: 1 - type: news credits: 1 - type: places credits: 1 - type: maps credits: 3 - type: reviews credits: 1 - type: shopping credits: 2 - type: scholar credits: 1 - type: patents credits: 1 - type: autocomplete credits: 1 - type: lens credits: 3 - type: webpage (scrape.serper.dev) credits: "2, 6 or 10" note: >- Serper's playground states verbatim: "Most webpages typically incur 2 credits, but for harder-to-scrape pages that require more advanced scraping techniques, the cost can be 6 or 10 credits depending on the difficulty. The number of credits used is returned in the response." modifiers: - name: Mini-batch effect: multiply by 3 detail: >- Submitting an array of up to 100 queries to one endpoint costs 3x the single-query cost. Not available on the reviews or product-reviews types. - name: Large result set on Images effect: multiply by 2 detail: num > 10 on Google Images doubles the cost of the query. gated_types_note: >- The playground also prices types that are gated behind an @serper.dev account (search-full at 3 or 6 credits, bing-*, product-reviews at 2, scholar-case at 2, duckduckgo search at 2). Those are not part of the public surface and are recorded here only so the pricing table is not misread as incomplete. globalNotes: >- Credits are deducted per successful response; Serper's FAQ states failed queries are not charged. When the credit balance reaches zero, Serper stops accepting new queries. Typical response time is 1-2 seconds, rising to 2-4 seconds when Serper has to retry against Google. Serper does not cache, so every call is a live Google query.