Runs onSearch API

SERP API

Get Google search results as JSON, including organic results, ads, AI Overviews, Maps, News, People Also Ask, and related searches for any country or city.

Get a free API key
4.9average across
G2 — 4.8 out of 5Google — 4.9 out of 5Product Hunt — 5.0 out of 5
  • 500 free credits every month
  • No card to start
  • Failed requests cost nothing

Try it on your own search

Try:
Trusted by teams at
PfizerNBCUniversalTCSHostingerKissflowLookoutPlivoClearSaleSparkianCBSplitOmreon
PfizerNBCUniversalTCSHostingerKissflowLookoutPlivoClearSaleSparkianCBSplitOmreon

Scraping Google yourself

  • CAPTCHAs and blocked IPs after a few hundred queries
  • Residential proxies per country to see local results
  • HTML that changes and breaks your parser without warning
  • Rank positions you have to count and clean yourself

One parameter

2 credits a search
  • serp: true returns Google's first page as structured JSON
  • A rank on every result, ready to store and compare
  • location, city and device for local and mobile results, no proxies to buy
  • The same fields on every query, no parser to maintain

Send your query to the Search API with serp: true, and add location or city when you need local results. To check a single keyword without code, use the free SERP Checker.

Google's results page, already parsed.

Every section Google shows for the query comes back as its own field, with the order and ranks intact.

Ranked organic results

Rank, title, link, displayed URL, source name and snippet for every organic result on the page.

organic[].rank

People Also Ask

The questions Google shows for the query, in order, for content briefs and FAQ research.

people_also_ask

Related searches

Google's suggested variations of the query, a free source of long-tail keyword ideas.

related

Country, city and device

Set a country code or a city, on desktop or mobile, to see the results searchers there see, without running proxies yourself.

location: "gb"

Web, news or images

Choose the results source and a time filter, for news monitoring or image research.

source: "news"

Domain filters

Include or exclude domains to focus on the sites you track, or drop the ones you don't care about.

includeDomains

See the results searchers see, wherever they are.

Rankings change from one country to the next, and from one city to the next. Set a location and get the page Google shows there, for local SEO, market research and international rank tracking.

  • location takes an ISO country code such as "gb" or "au"
  • city narrows it to one of 65,000+ supported cities, written as "City,Region,Country"
  • device returns desktop or mobile results: about a quarter of keywords have a different #1 on mobile
  • Included in every search at no extra cost
0
Countries
65,000+
Cities
No proxies
To buy or rotate
POST/search{ "query": "business insurance", "serp": true, "location": "us" }from United States

What teams build on SERP data.

Track where you rank, every day

Run your keywords daily for each country or city you care about, find your domain in the ranked results and store its position. Movements for you and your competitors show up as a diff you can chart.

  • A rank on every result
  • Country, city and device per check
  • 100 keywords a day fits the $19 plan
Typical request
POST /search
{
  "query": "business insurance",
  "serp": true,
  "location": "us"
}
Example output · business insurance (US)
organic[0].sourceThe Hartford
rank 1
organic[1].sourceProgressive Commercial Insurance
rank 2
organic[4].sourceChubb
rank 5

Your first SERP request, in a few lines.

quickstart.pyplain REST
# pip install requests
import requests

response = requests.post(
    "https://api.geekflare.com/search",
    headers={"x-api-key": "<api-key>"},
    json={"query":"business insurance","serp":True},
)
print(response.json())

One API. Every stack.

One account works from an agent, a workflow builder, an SDK or your own service.

MCP server

Sign in once and Claude, ChatGPT, Cursor or Codex can use Geekflare's tools directly, with no glue code to write.

ClaudeChatGPTCursorCodexAny MCP client
Set up the MCP server

LLM & agent pipelines

LLM-ready Markdown straight into a retrieval pipeline, with the boilerplate stripped so you spend context on content, not navigation.

RAGAgentsClean MarkdownGrounded search
See the solutions

Workflow builders

Run any endpoint as a step in a visual scenario. Useful when the person who needs the data does not write code.

ZapierMaken8n
Browse integrations

SDKs & REST

First-party typed SDKs for Python and Node. Everything else talks plain REST, from any language.

PythonNode.jsPostman
Open the API reference

How many searches each plan covers.

Every search costs the same, wherever it runs from. Failed requests cost nothing.

2 months free
  • Free
    $0/mo
    No card
    Credits a month
    500
    Searches2 credits
    250
    Requests per second
    1
  • Starter
    $19/mo
    Credits a month
    20,000
    Searches2 credits
    10,000
    Requests per second
    5
  • GrowthMost popular
    $69/mo
    Credits a month
    100,000
    Searches2 credits
    50,000
    Requests per second
    10
  • Business 500K
    $299/mo
    Credits a month
    500,000
    Searches2 credits
    250,000
    Requests per second
    25
  • Business 1M
    $499/mo
    Credits a month
    1,000,000
    Searches2 credits
    500,000
    Requests per second
    25
Start freeCompare plans and credit packsEvery account starts free. Upgrade when you need more, or buy a credit pack from $10.

What customers say.

Read all reviews
“Found Geekflare API to get markdown from URL for my AI agents. It is fast and cheaper and works on almost every website.”
Ram DasiArchitect, PA Consulting
“After trying many scraping services, I selected Geekflare to scrape public directories. Mainly for two reasons - it is cheaper and fast.”
Vishu SharmaCTO
“Documentation was easy to follow. We were scraping dynamic pages within hours. Very reliable service.”
Marco SilvaAnalytics Engineer

Before you integrate SERP data.

General questions about the endpoint are answered on the Search API page.

Open the Search API page

Google. The API returns the same results Google shows for the query.

organic results with rank, title, link and snippet, people_also_ask, related searches, pagination and Google's navigation tabs. Which sections appear depends on what Google shows for the query.

Yes. Set location to a country code, such as "gb", or set city to a name from the list of supported cities, written exactly as listed, for example "London,England,United Kingdom". city takes priority when both are set.

Up to 100 per request with limit. SERP mode returns the first results page only.

Run each keyword with serp: true on a schedule, usually once a day, and find your domain in organic by matching each result's link. Its rank is your position; store it with the date to chart movements. Tracking 100 keywords daily takes about 3,000 searches a month (6,000 credits), which the Starter plan covers. For a walkthrough, see how to track keyword rankings, or check one keyword with the free SERP Checker.

Yes. Set source to "news" or "images", one source per request, and combine it with the time filter.

No. Set location to a country code or city to a supported city, and the results come back as searchers there see them. There are no proxies to buy, rotate or maintain.

Yes. Set device to "mobile" to get the results page Google shows on phones, or leave it at "desktop". Mobile rankings often differ: in our study of 100 keywords, about a quarter had a different #1 result on mobile. It's included in every search at no extra cost.

2 credits per search. Failed requests cost nothing, and credits are shared with every other Geekflare API.

250 searches a month, free.

The free tier renews every month and needs no card. Get your first results page as JSON in a single call.