Skip to content

How SerpApi’s scores are calculated

The full audit trail, recomputed from the verdict data at build time through the same code that produced the leaderboard: verdict × quality × story weight per cell, cells sum to dimension scores, dimensions blend into the PA Score. Every number on the product page is reproducible from this page alone; for why the formula looks like this, see the methodology.

verdict factors: full ×1.0 · partial ×0.6 · disputed ×0.3 · none ×0.0 · n/a excluded from both sides · cell points = weight × quality × factor · cell max = weight × 10

PA Score22/100

Agent-ready 51.7 × 0.30 = 15.51

API quality 8.6 × 0.20 = 1.72

Openness 16.3 × 0.20 = 3.26

Built-in AI 10.0 × 0.15 = 1.50

Automation 0.0 × 0.15 = 0.00

(15.51 + 1.72 + 3.26 + 1.50 + 0.00) ÷ (0.30 + 0.20 + 0.20 + 0.15 + 0.15) = 21.99 ÷ 1.00 = 22.0

Scores are stored to 1 decimal; the product page’s pills round to whole numbers for display. Each dimension below shows the stories, verdicts, and cited evidence behind its number.

Agent-ready51.7/100×0.30 of the PA blend

Outside-in: can YOUR agent reach and drive this product — API, MCP, CLI, headless runs, agent docs.

Point an agent at llms.txt or agent-oriented docsweight 2

2 (weight) × 9 (quality) × 1.0 (full) = 18.0 of 20 max

  • [probe] https://serpapi.com/llms.txtPROBE llms.txt: HTTP 200 at https://serpapi.com/llms.txt # SerpApi > SerpApi provides a real-time JSON API for accessing structured search engine results from Google, Bing, Bai
  • [probe] https://serpapi.com/search-api.mdPROBE docs-md: HTTP 200 at https://serpapi.com/search-api.md --- title: "Google Search Engine Results API" description: "Scrape Google search results in JSON format automatically us
  • [claimed-docs] https://serpapi.com/markdown-output.mdServe any SerpApi search result as clean markdown. Same data as JSON, zero configuration, roughly half the tokens. Works with every API.
  • [claimed-docs] https://serpapi.com/integrations.mdInstall the library for your language and use your API key to start searching
  • [claimed-docs] https://serpapi.com/integrations.mdThe MCP integration allows any MCP-compatible AI agent (Claude, ChatGPT, Cursor, etc.) to use SerpApi as a web search tool.
  • [probe] https://github.com/serpapi/serpapi-mcpofficial MCP server documented at https://github.com/serpapi/serpapi-mcp

Run the product headlessly / in CI for automationweight 2

2 (weight) × 8 (quality) × 1.0 (full) = 16.0 of 20 max

  • [github] https://github.com/serpapi/google-search-results-pythonsearch = GoogleSearch({"q": "coffee", "location": "Austin,Texas", "api_key": "<your secret api key>"}) result = search.get_dict()
  • [claimed-docs] https://serpapi.com/google-news-apiParameter defines the way you want to submit your search to SerpApi. It can be set to `false` (default) to open an HTTP connection and keep it open until you got your search results, or `true` to just submit your search to SerpApi and retrieve them later.
  • [github] https://github.com/serpapi/google-search-results-pythonSerpApi provides a script builder to get you started quickly.
  • [claimed-docs] https://serpapi.com/integrations.mdInstall the library for your language and use your API key to start searching
  • [probe] https://serpapi.com/search-api.mdPROBE docs-md: HTTP 200 at https://serpapi.com/search-api.md --- title: "Google Search Engine Results API" description: "Scrape Google search results in JSON format automatically us

Plug MCP servers into this product so it can use their toolsweight 3

n/a — not applicable to this product: excluded from numerator and denominator

  • [claimed-docs] https://serpapi.com/integrations.mdThe MCP integration allows any MCP-compatible AI agent (Claude, ChatGPT, Cursor, etc.) to use SerpApi as a web search tool.
  • [probe] https://github.com/serpapi/serpapi-mcpofficial MCP server documented at https://github.com/serpapi/serpapi-mcp

Connect an agent via an official MCP serverweight 3

3 (weight) × 7 (quality) × 1.0 (full) = 21.0 of 30 max

  • [claimed-docs] https://serpapi.com/integrations.mdThe MCP integration allows any MCP-compatible AI agent (Claude, ChatGPT, Cursor, etc.) to use SerpApi as a web search tool.
  • [probe] https://github.com/serpapi/serpapi-mcpofficial MCP server documented at https://github.com/serpapi/serpapi-mcp
  • [claimed-docs] https://serpapi.com/integrations.mdInstall the library for your language and use your API key to start searching

Use an official CLIweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Drive the product through a documented public APIweight 3

3 (weight) × 8 (quality) × 1.0 (full) = 24.0 of 30 max

  • [claimed-docs] https://serpapi.com/search-apiOur Google Search API allows you to scrape results from the Google search page.
  • [claimed-docs] https://serpapi.com/markdown-output.mdServe any SerpApi search result as clean markdown. Same data as JSON, zero configuration, roughly half the tokens. Works with every API.
  • [claimed-docs] https://serpapi.com/integrations.mdInstall the library for your language and use your API key to start searching
  • [claimed-docs] https://serpapi.com/integrations.mdThe MCP integration allows any MCP-compatible AI agent (Claude, ChatGPT, Cursor, etc.) to use SerpApi as a web search tool.
  • [github] https://github.com/serpapi/google-search-results-pythonsearch = GoogleSearch({"q": "coffee", "location": "Austin,Texas", "api_key": "<your secret api key>"}) result = search.get_dict()
  • [probe] https://serpapi.com/llms.txtPROBE llms.txt: HTTP 200 at https://serpapi.com/llms.txt # SerpApi > SerpApi provides a real-time JSON API for accessing structured search engine results from Google, Bing, Bai
  • [probe] https://serpapi.com/search-api.mdPROBE docs-md: HTTP 200 at https://serpapi.com/search-api.md --- title: "Google Search Engine Results API" description: "Scrape Google search results in JSON format automatically us
  • [probe] https://serpapi.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://serpapi.com/openapi.json, https://serpapi.com/swagger.json, https://serpapi.com/api/openapi.json, https://serpapi.com/.well-known/openapi.json)
  • [probe] https://github.com/serpapi/serpapi-mcpofficial MCP server documented at https://github.com/serpapi/serpapi-mcp

Issue scoped/least-privilege API credentials for an agentweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [github] https://github.com/serpapi/google-search-results-pythonsearch = GoogleSearch({"q": "coffee", "location": "Austin,Texas", "api_key": "<your secret api key>"}) result = search.get_dict()
  • [community] https://news.ycombinator.com/item?id=46165251Embedding the API key (secret) in the URL complicates secret management. Please move that to a header and allow setting via env var.

Build against official SDKsweight 2

2 (weight) × 7 (quality) × 1.0 (full) = 14.0 of 20 max

  • [github] https://github.com/serpapi/google-search-results-pythonsearch = GoogleSearch({"q": "coffee", "location": "Austin,Texas", "api_key": "<your secret api key>"}) result = search.get_dict()
  • [github] https://github.com/serpapi/google-search-results-pythonThis package will soon be **deprecated** in favor of [serpapi-python](https://github.com/serpapi/serpapi-python). We recommend migrating to the newer implementation to ensure continued support and access to the latest features and improvements.
  • [github] https://github.com/serpapi/google-search-results-pythonThis Python package is meant to scrape and parse search results from Google, Bing, Baidu, Yandex, Yahoo, Home Depot, eBay and more
  • [claimed-docs] https://serpapi.com/markdown-output.mdServe any SerpApi search result as clean markdown. Same data as JSON, zero configuration, roughly half the tokens. Works with every API.
  • [claimed-docs] https://serpapi.com/integrations.mdInstall the library for your language and use your API key to start searching
  • [claimed-docs] https://serpapi.com/integrations.mdThe MCP integration allows any MCP-compatible AI agent (Claude, ChatGPT, Cursor, etc.) to use SerpApi as a web search tool.
  • [probe] https://github.com/serpapi/serpapi-mcpofficial MCP server documented at https://github.com/serpapi/serpapi-mcp

Subscribe to events via webhooksweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://serpapi.com/google-news-apiParameter defines the way you want to submit your search to SerpApi. It can be set to `false` (default) to open an HTTP connection and keep it open until you got your search results, or `true` to just submit your search to SerpApi and retrieve them later.
  • [claimed-docs] https://serpapi.com/google-news-apiyou'll need to use our Searches Archive API to retrieve your results

Agent-ready = 93.0 ÷ 180 × 100 = 51.7

API quality8.6/100×0.20 of the PA blend

The programmable surface once an agent is there — machine-readable spec, interactive docs, sandbox, versioning discipline.

Explore an interactive API reference with runnable examplesweight 2

2 (weight) × 5 (quality) × 0.6 (partial) = 6.0 of 20 max

  • [github] https://github.com/serpapi/google-search-results-pythonSerpApi provides a script builder to get you started quickly.
  • [claimed-docs] https://serpapi.com/integrations.mdInstall the library for your language and use your API key to start searching
  • [probe] https://serpapi.com/search-api.mdPROBE docs-md: HTTP 200 at https://serpapi.com/search-api.md --- title: "Google Search Engine Results API" description: "Scrape Google search results in JSON format automatically us
  • [probe] https://serpapi.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://serpapi.com/openapi.json, https://serpapi.com/swagger.json, https://serpapi.com/api/openapi.json, https://serpapi.com/.well-known/openapi.json)
  • [claimed-docs] https://serpapi.com/markdown-output.mdServe any SerpApi search result as clean markdown. Same data as JSON, zero configuration, roughly half the tokens. Works with every API.

Download a machine-readable API spec (OpenAPI or equivalent)weight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [probe] https://serpapi.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://serpapi.com/openapi.json, https://serpapi.com/swagger.json, https://serpapi.com/api/openapi.json, https://serpapi.com/.well-known/openapi.json)
  • [probe] https://serpapi.com/llms.txtPROBE llms.txt: HTTP 200 at https://serpapi.com/llms.txt # SerpApi > SerpApi provides a real-time JSON API for accessing structured search engine results from Google, Bing, Bai
  • [probe] https://serpapi.com/search-api.mdPROBE docs-md: HTTP 200 at https://serpapi.com/search-api.md --- title: "Google Search Engine Results API" description: "Scrape Google search results in JSON format automatically us

Test against a sandbox environment without touching production dataweight 1

1 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 10 max

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Rely on versioned APIs with a documented deprecation policyweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [github] https://github.com/serpapi/google-search-results-pythonThis package will soon be **deprecated** in favor of [serpapi-python](https://github.com/serpapi/serpapi-python). We recommend migrating to the newer implementation to ensure continued support and access to the latest features and improvements.
  • [github] https://github.com/serpapi/google-search-results-pythonWe recommend migrating to the newer implementation to ensure continued support and access to the latest features and improvements.
  • [github] https://github.com/serpapi/google-search-results-pythonThis package will soon be deprecated in favor of serpapi-python. We recommend migrating to the newer implementation to ensure continued support and access to the latest features and improvements.
  • [probe] https://serpapi.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://serpapi.com/openapi.json, https://serpapi.com/swagger.json, https://serpapi.com/api/openapi.json, https://serpapi.com/.well-known/openapi.json)

API quality = 6.0 ÷ 70 × 100 = 8.6

Openness16.3/100×0.20 of the PA blend

Can you leave, inspect, or self-host — data export, open source, portability.

Do everything through the API that I can do in the UIweight 2

2 (weight) × 5 (quality) × 0.6 (partial) = 6.0 of 20 max

  • [claimed-docs] https://serpapi.com/search-apiOur Google Search API allows you to scrape results from the Google search page.
  • [claimed-docs] https://serpapi.com/google-news-apiParameter defines the format of the result. It can be set to `json` (default) to get a structured JSON of the results, `html` to get the raw HTML retrieved, or `md` to get a markdown-formatted version optimized for LLMs and AI agents.
  • [claimed-docs] https://serpapi.com/pricingWith ZeroTrace Mode enabled, we don't store your search parameters, files, or data. Once a search completes, it's as if it never happened.
  • [claimed-docs] https://serpapi.com/pricingYou can set your plan to Automatic Early Renewal. It will trigger an early renewal once you've used all your searches.
  • [claimed-docs] https://serpapi.com/api-metricsMonitor SerpApi's live API success rates and response times.
  • [probe] https://serpapi.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://serpapi.com/openapi.json, https://serpapi.com/swagger.json, https://serpapi.com/api/openapi.json, https://serpapi.com/.well-known/openapi.json)
  • [claimed-docs] https://serpapi.com/integrations.mdInstall the library for your language and use your API key to start searching

Export all of my data in open formats and leaveweight 3

3 (weight) × 3 (quality) × 0.6 (partial) = 5.4 of 30 max

  • [claimed-docs] https://serpapi.com/google-news-apiParameter defines the format of the result. It can be set to `json` (default) to get a structured JSON of the results, `html` to get the raw HTML retrieved, or `md` to get a markdown-formatted version optimized for LLMs and AI agents.
  • [claimed-docs] https://serpapi.com/google-news-apioutput to `json` (default)... `html` to get the raw HTML retrieved, or `md` to get a markdown-formatted version optimized for LLMs and AI agents.
  • [claimed-docs] https://serpapi.com/markdown-output.mdServe any SerpApi search result as clean markdown. Same data as JSON, zero configuration, roughly half the tokens. Works with every API.
  • [claimed-docs] https://serpapi.com/google-news-apiyou'll need to use our Searches Archive API to retrieve your results
  • [claimed-docs] https://serpapi.com/pricingWith ZeroTrace Mode enabled, we don't store your search parameters, files, or data. Once a search completes, it's as if it never happened.

Read the product's source under an open licenseweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [github] https://github.com/serpapi/google-search-results-pythonThis Python package is meant to scrape and parse search results from Google, Bing, Baidu, Yandex, Yahoo, Home Depot, eBay and more
  • [github] https://github.com/serpapi/google-search-results-pythonThis Python package is meant to scrape and parse search results from Google, Bing, Baidu, Yandex, Yahoo, Home Depot, eBay and more, using SerpApi.
  • [github] https://github.com/serpapi/google-search-results-pythonThis package will soon be **deprecated** in favor of [serpapi-python](https://github.com/serpapi/serpapi-python). We recommend migrating to the newer implementation to ensure continued support and access to the latest features and improvements.

Self-host the core productweight 3

n/a — not applicable to this product: excluded from numerator and denominator

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Openness = 11.4 ÷ 70 × 100 = 16.3

Built-in AI10.0/100×0.15 of the PA blend

Inside-out: how agentic the product itself is for its users — built-in assistants, autonomous features.

Get AI-generated insights and suggestions from my data inside the productweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://serpapi.com/use-cases/ai-seo-geo-apiFind out how your content is being used in AI-generated answers on Google AI Mode. Monitor your brand's visibility and optimize your SEO strategy for the future of search.
  • [claimed-docs] https://serpapi.com/use-cases/ai-search-engine-apiRetrieval-Augmented Generation (RAG): Feed search data into AI pipelines to minimize hallucinations.
  • [claimed-docs] https://serpapi.com/markdown-output.mdServe any SerpApi search result as clean markdown. Same data as JSON, zero configuration, roughly half the tokens. Works with every API.

Set up automations that run autonomously in the backgroundweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://serpapi.com/google-news-apiParameter defines the way you want to submit your search to SerpApi. It can be set to `false` (default) to open an HTTP connection and keep it open until you got your search results, or `true` to just submit your search to SerpApi and retrieve them later.
  • [claimed-docs] https://serpapi.com/google-news-apiyou'll need to use our Searches Archive API to retrieve your results
  • [claimed-docs] https://serpapi.com/pricingYou can set your plan to Automatic Early Renewal. It will trigger an early renewal once you've used all your searches.

Delegate tasks to a built-in AI assistant inside the productweight 3

n/a — not applicable to this product: excluded from numerator and denominator

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Operate the product with natural-language commandsweight 2

2 (weight) × 5 (quality) × 0.6 (partial) = 6.0 of 20 max

  • [claimed-docs] https://serpapi.com/integrations.mdThe MCP integration allows any MCP-compatible AI agent (Claude, ChatGPT, Cursor, etc.) to use SerpApi as a web search tool.
  • [probe] https://github.com/serpapi/serpapi-mcpofficial MCP server documented at https://github.com/serpapi/serpapi-mcp
  • [claimed-docs] https://serpapi.com/search-apiYou can use anything that you would use in a regular Google search. e.g. `inurl:`, `site:`, `intitle:`.
  • [claimed-docs] https://serpapi.com/markdown-output.mdServe any SerpApi search result as clean markdown. Same data as JSON, zero configuration, roughly half the tokens. Works with every API.

Built-in AI = 6.0 ÷ 60 × 100 = 10.0

Automation0.0/100×0.15 of the PA blend

Depth of automation primitives — rules, scheduling, bulk operations, webhooks.

Perform bulk operations across many items at onceweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Define rules that trigger actions automatically on eventsweight 3

3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max

  • [claimed-docs] https://serpapi.com/pricingYou can set your plan to Automatic Early Renewal. It will trigger an early renewal once you've used all your searches.

Schedule recurring jobs or workflowsweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://serpapi.com/google-news-apiParameter defines the way you want to submit your search to SerpApi. It can be set to `false` (default) to open an HTTP connection and keep it open until you got your search results, or `true` to just submit your search to SerpApi and retrieve them later.
  • [claimed-docs] https://serpapi.com/google-news-apiyou'll need to use our Searches Archive API to retrieve your results
  • [github] https://github.com/serpapi/google-search-results-pythonThe search results are stored in a temporary cache. The previous search can be retrieved from the cache for free.

Version, review, and roll back my automationsweight 1

n/a — not applicable to this product: excluded from numerator and denominator

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Automation = 0.0 ÷ 70 × 100 = 0.0