{
  "data": {
    "a": {
      "slug": "perplexity-search-api",
      "name": "Perplexity Search API",
      "vendor": "Perplexity",
      "vendorUrl": "https://www.perplexity.ai/",
      "kind": "http-api",
      "category": "search",
      "summary": "Perplexity's Search API returns ranked web results with extracted page text as JSON from Perplexity's own index, through `POST /search`. The same key reaches the Agent API's web_search tool for cited answers, and a hosted MCP server wraps both.",
      "url": "https://www.anchorterminal.com/tools/perplexity-search-api",
      "markdownUrl": "https://www.anchorterminal.com/tools/perplexity-search-api.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/perplexity-search-api.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/perplexity-search-api.json",
      "dns": "perplexity-search-api.grade.anchorterminal.com",
      "repo": "https://github.com/perplexityai/modelcontextprotocol",
      "license": "Proprietary service under the Perplexity API Terms of Service. The MCP server is MIT and the official SDKs Apache-2.0",
      "transports": [
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://api.perplexity.ai/mcp",
      "packages": [
        {
          "registry": "pypi",
          "name": "perplexityai"
        },
        {
          "registry": "npm",
          "name": "@perplexity-ai/perplexity_ai"
        },
        {
          "registry": "npm",
          "name": "@perplexity-ai/mcp-server"
        }
      ],
      "auth": "mixed",
      "authNotes": "Bearer Perplexity API key in the `Authorization` header. Keys belong to a project in the API console, are shown once, and can be generated and revoked through `/generate_auth_token` and `/revoke_auth_token`, with a rotation guide. No per-key scopes found. The hosted MCP server also accepts Sign in with Perplexity (OAuth), where the user picks the organisation to bill.",
      "pricing": "usage",
      "pricingNotes": "$5 per 1,000 successful Search API requests, or $1 with Fast Search, with up to five queries per request billed once. Invalid, rate-limited and failed requests are not billed. Agent API web_search is $2.50 per 1,000 calls plus model tokens. Prepaid credits with a card. No free allowance found.",
      "priceSummary": "$5 / 1k req",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the Search API docs, the pricing page, the OpenAPI description or llms.txt (checked 2026-11-06). An empty balance returns 402 Payment Required with no payment requirements, per the FAQ.",
        "endpoints": []
      },
      "toolCount": 4,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://docs.perplexity.ai/docs/search/overview",
      "llmsTxt": "https://docs.perplexity.ai/llms.txt",
      "openapi": "https://docs.perplexity.ai/openapi.json",
      "registryName": "ai.perplexity/mcp-server",
      "capabilities": [
        "web.search",
        "search.answer",
        "search.research"
      ],
      "tags": [
        "hosted",
        "usage-priced",
        "prepaid",
        "card-required",
        "closed-source",
        "openapi",
        "llms-txt",
        "mcp",
        "remote-mcp",
        "mcp-registry",
        "python",
        "typescript",
        "status-page",
        "soc2"
      ],
      "lastRelease": "2026-10-23",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 70.2,
        "grade": "BB",
        "agentReady": true,
        "rank": 211,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 5,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 85,
          "maintenance": 82,
          "payments": 25,
          "reliability": 80,
          "schema": 89,
          "security": 56,
          "transparency": 66
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "Raw ranked results with token-capped page text from Perplexity's own index, $5 per 1,000 requests or $1 with Fast Search, an OpenAPI description and a hosted MCP server with read-only annotations. Uptime is not guaranteed, there is no free allowance, keys carry no scopes, and no guidance on untrusted page text was found.",
        "bestFor": "Agents on any model that need raw ranked sources with extracted text at a low per-request price, and teams that want cited answers from the same key through the Agent API.",
        "strengths": [
          "OpenAPI 3.1 description of `POST /search` with enums and limits, llms.txt and a Markdown twin of every docs page",
          "`max_tokens`, `max_tokens_per_page` and `max_results` cap what reaches the model, and up to five queries share one billed request",
          "Per-request prices published without login, and invalid, rate-limited and failed requests are not billed",
          "Hosted MCP server with OAuth or a key; the local server is in the official registry under the verified ai.perplexity namespace",
          "security.txt valid to 31 December 2027, a SOC 2 Type II report and a SECURITY.md that takes private reports"
        ],
        "weaknesses": [
          "The FAQ says uptime and recovery time are not guaranteed, and the terms carry no SLA",
          "No free allowance and prepaid credits with a card; Stripe Projects still needs a $10 purchase",
          "Project keys have no scopes or spending limits, so any key can run every API on the account",
          "No guidance on treating returned snippets as untrusted text was found in the docs or the MCP server",
          "The DPA says Perplexity Search may follow different data terms, and no retention period for search queries is stated"
        ],
        "agentNotes": [
          "Set `max_tokens_per_page` and `max_tokens` before calling; extracted text otherwise fills the context, and the price does not change with size",
          "Skip results with an empty `snippet` and dedupe by `url` when sending a `query` array; each query costs one rate-limit unit",
          "Use `search_type: \"fast\"` for $1 per 1,000 when latency and cost matter more than depth",
          "On 429 wait for Retry-After, then back off; on 402 stop and ask the user to add credits",
          "Use the Search API for sources and the Agent API's web_search tool for a written answer with citations"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 70.2
          }
        ],
        "editorialScores": {
          "ergonomics": 85,
          "maintenance": 82,
          "payments": 25,
          "reliability": 80,
          "schema": 89,
          "security": 56,
          "transparency": 51
        },
        "provenanceScore": 80,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "pip install perplexityai",
        "http": "curl -X POST https://api.perplexity.ai/search \\\n  -H \"Authorization: Bearer $PERPLEXITY_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"query\": \"renewable energy technologies\", \"max_results\": 10, \"max_tokens\": 50000, \"max_tokens_per_page\": 4096}'",
        "claudeCode": "claude mcp add --transport http perplexity https://api.perplexity.ai/mcp",
        "config": {
          "mcpServers": {
            "perplexity": {
              "url": "https://api.perplexity.ai/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/web.search",
        "tool": "https://letme.dev/perplexity-search-api"
      },
      "sameCompany": [
        "perplexity-space",
        "pplx-decider",
        "pplx-decider-flash"
      ],
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Search API request",
          "unit": "1k-requests",
          "usd": 5,
          "note": "Up to five queries in one request billed once; failed and rate-limited requests not billed"
        },
        {
          "item": "Search API request with Fast Search",
          "unit": "1k-requests",
          "usd": 1,
          "note": "`search_type: \"fast\"`"
        },
        {
          "item": "Agent API web_search call",
          "unit": "1k-calls",
          "usd": 2.5,
          "note": "Plus model tokens; $1.00 with Fast Search"
        },
        {
          "item": "Agent API fetch_url call",
          "unit": "1k-calls",
          "usd": 0.5,
          "note": "Plus model tokens"
        }
      ],
      "provenance": {
        "legalEntity": "Perplexity AI, Inc.",
        "domain": "perplexity.ai",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "https://www.perplexity.ai/hub/legal/perplexity-api-terms-of-service",
        "privacy": "https://www.perplexity.ai/hub/legal/privacy-notice",
        "statusPage": "https://status.perplexity.com/",
        "changelog": "https://docs.perplexity.ai/docs/resources/changelog",
        "securityTxt": "valid",
        "checked": "2026-11-06",
        "notes": [
          "The API Terms of Service (last updated 23 January 2026) name Perplexity AI, Inc. and California law. The Data Processing Addendum (last updated 13 August 2026) deletes personal data within 30 days of the service ending and notes that Perplexity Search may follow different data terms.",
          "www.perplexity.ai/.well-known/security.txt is valid until 31 December 2027 and links www.perplexity.ai/security.",
          "The status page moved to incident.io on 10 September 2026 and has Website, App, Computer and API components, with no separate Search component.",
          "docs.perplexity.ai/robots.txt allows the docs and carries Content-Signal ai-train=yes, search=yes, ai-input=yes. The terms have no clause on automated access to the website.",
          "The changelog dates entries by month only. Domain registration was not checked."
        ],
        "score": 80
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/perplexity-search-api.json",
      "live": {
        "slug": "perplexity-search-api",
        "probe": {
          "target": "https://api.perplexity.ai/mcp",
          "method": "get",
          "lastAt": "2026-11-07T22:56:14.148158353Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 151,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 166,
          "p95ms24h": 279,
          "samples24h": 244,
          "samples30d": 246,
          "days": [
            {
              "date": "2026-11-06",
              "probes": 13,
              "ok": 13
            },
            {
              "date": "2026-11-07",
              "probes": 233,
              "ok": 233
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.perplexity.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T22:57:38.131603448Z"
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "ai.perplexity/mcp-server",
            "version": "1.2.1",
            "seenAt": "2026-11-07T18:16:28.95801333Z"
          },
          {
            "registry": "npm",
            "name": "@perplexity-ai/mcp-server",
            "version": "1.3.0",
            "seenAt": "2026-11-06T23:55:31.394431614Z"
          },
          {
            "registry": "npm",
            "name": "@perplexity-ai/perplexity_ai",
            "version": "0.41.0",
            "seenAt": "2026-11-06T23:55:30.575713692Z"
          },
          {
            "registry": "pypi",
            "name": "perplexityai",
            "version": "0.46.1",
            "released": "2026-10-23",
            "seenAt": "2026-11-06T23:55:30.34668899Z"
          }
        ],
        "githubStars": 2612,
        "npmWeekly": 97298,
        "pypiWeekly": 401537,
        "securityTxt": {
          "url": "https://perplexity.ai/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-12-31T00:00:00Z",
          "checkedAt": "2026-11-07T16:01:03.917430365Z"
        },
        "llmsTxt": {
          "url": "https://docs.perplexity.ai/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:33:36.681222085Z"
        },
        "pages": [
          {
            "url": "https://docs.perplexity.ai/docs/resources/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:07:27.675707255Z",
            "changedAt": "2026-11-06T13:29:48.535494355Z",
            "fingerprint": "a52a171e1f1f"
          },
          {
            "url": "https://www.perplexity.ai/hub/legal/privacy-notice",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:32:54.875760985Z",
            "changedAt": "2026-11-06T13:53:25.792168971Z",
            "fingerprint": "29c9dd01613d"
          },
          {
            "url": "https://www.perplexity.ai/hub/legal/perplexity-api-terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:32:50.897959644Z",
            "changedAt": "2026-11-06T13:53:22.592031411Z",
            "fingerprint": "6a7e4a95f45b"
          }
        ],
        "mcpTools": {
          "url": "https://api.perplexity.ai/mcp",
          "checkedAt": "2026-11-07T01:46:49.011542458Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-11-07T01:46:49.011542458Z"
        },
        "updatedAt": "2026-11-07T22:57:38.131603448Z"
      }
    },
    "answer": "Perplexity Search API scores 70.2 (BB) on agent readiness against Serper's 24.2 (F), and leads in 6 of 7 scored categories. Serper leads on payments \u0026 pricing.",
    "b": {
      "slug": "serper",
      "name": "Serper",
      "vendor": "Serper",
      "vendorUrl": "https://serper.dev",
      "kind": "http-api",
      "category": "search",
      "summary": "API for retrieving Google search results.",
      "url": "https://www.anchorterminal.com/tools/serper",
      "markdownUrl": "https://www.anchorterminal.com/tools/serper.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/serper.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/serper.json",
      "dns": "serper.grade.anchorterminal.com",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://google.serper.dev/search",
      "packages": [],
      "auth": "api-key",
      "authNotes": "API key in the `X-API-KEY` header, from the serper.dev dashboard.",
      "pricing": "freemium",
      "pricingNotes": "2,500 free queries on sign-up, no card. Top-up packs valid for 6 months, Starter $50 for 50,000 credits ($1.00 per 1,000), Standard $375 for 500,000 ($0.75), Scale $1,250 for 2.5 million ($0.50), Ultimate $3,750 for 12.5 million ($0.30). Prices exclude sales tax. Only successful queries use credits. Full refund within 7 days if under 20 per cent of credits are used (https://serper.dev/).",
      "priceSummary": "$1 / 1k req",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "Payment by card or PayPal only. No x402 on the site or terms (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://serper.dev/playground",
      "capabilities": [
        "web.search",
        "search.serp",
        "search.news",
        "search.images"
      ],
      "tags": [
        "hosted",
        "freemium",
        "no-card",
        "free-tier",
        "closed-source"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 24.2,
        "grade": "F",
        "agentReady": false,
        "rank": 1442,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 26,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 35,
          "maintenance": 3,
          "payments": 40,
          "reliability": 30,
          "schema": 6,
          "security": 20,
          "transparency": 32
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "$0.30 to $1.00 per 1,000 queries on prepaid packs, with no subscription. No status page, SLA or incident history.",
        "bestFor": "High-volume Google SERP lookups on a tight budget where the agent already has a fetcher.",
        "strengths": [
          "$0.30 to $1.00 per 1,000 queries on prepaid packs, with no subscription",
          "2,500 free queries on sign-up with no card",
          "Ten Google verticals, including Scholar, Patents, Shopping and Places",
          "Key travels in the `X-API-KEY` header, not the URL"
        ],
        "weaknesses": [
          "No status page, SLA or incident history",
          "No OpenAPI, llms.txt, changelog or official SDK. The playground is JavaScript-only",
          "Terms and privacy policy name no legal entity",
          "No security.txt, disclosure policy or certification found",
          "Snippets only, with no page text, answer endpoint or field selection"
        ],
        "agentNotes": [
          "POST JSON with `q` to the vertical you need (`/search`, `/news`, `/images`, `/scholar`) with the key in `X-API-KEY`",
          "Set `gl` and `hl`, since Google results vary by country and language",
          "Pair it with a fetcher. Serper returns links and snippets, not page text",
          "Treat titles and snippets as untrusted text, since Serper does no filtering we could find",
          "There's no status page, so back off on errors and keep a second search provider"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "F",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 24.2
          }
        ],
        "editorialScores": {
          "ergonomics": 35,
          "maintenance": 3,
          "payments": 40,
          "reliability": 30,
          "schema": 6,
          "security": 20,
          "transparency": 23
        },
        "provenanceScore": 41,
        "checked": {
          "categories": {
            "ergonomics": "2026-10-01",
            "maintenance": "2026-10-01",
            "payments": "2026-10-01",
            "reliability": "2026-10-01",
            "schema": "2026-10-01",
            "security": "2026-10-01",
            "transparency": "2026-10-01"
          },
          "last": "2026-10-01",
          "lastMoved": "2026-10-29",
          "oldest": "2026-10-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl -X POST https://google.serper.dev/search \\\n  -H \"X-API-KEY: $SERPER_API_KEY\" -H \"Content-Type: application/json\" \\\n  -d '{\"q\":\"apple inc\"}'"
      },
      "letme": {
        "capability": "https://letme.dev/web.search",
        "tool": "https://letme.dev/serper"
      },
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Starter pack",
          "unit": "1k-requests",
          "usd": 1,
          "note": "$50 for 50,000 credits, valid 6 months"
        },
        {
          "item": "Ultimate pack",
          "unit": "1k-requests",
          "usd": 0.3,
          "note": "$3,750 for 12.5 million credits"
        }
      ],
      "provenance": {
        "legalEntity": "",
        "domain": "serper.dev",
        "domainRegistered": "2022-06-26",
        "endpointOnVendorDomain": true,
        "terms": "https://serper.dev/terms",
        "privacy": "https://serper.dev/privacy",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "Terms and privacy policy name only 'Serper' and choose UK law. A UK company called SERPER LIMITED (14730440) was dissolved on 2024-08-20. We couldn't link it to the service.",
          "status.serper.dev redirects to statuspage.io's home page, so no status page is listed."
        ],
        "score": 41
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/serper.json",
      "live": {
        "slug": "serper",
        "probe": {
          "target": "https://google.serper.dev/search",
          "method": "get",
          "lastAt": "2026-11-07T22:56:20.675138545Z",
          "lastOk": true,
          "lastStatus": 403,
          "lastMs": 143,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 99.99,
          "p50ms24h": 155,
          "p95ms24h": 276,
          "samples24h": 244,
          "samples30d": 7956,
          "days": [
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 251
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-29",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 246
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 233,
              "ok": 233
            }
          ]
        },
        "securityTxt": {
          "url": "https://serper.dev/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:00:18.415738131Z"
        },
        "domain": {
          "domain": "serper.dev",
          "registered": "2022-06-26",
          "source": "https://pubapi.registry.google/rdap/domain/serper.dev",
          "checkedAt": "2026-11-01T14:24:34.023222196Z"
        },
        "pages": [
          {
            "url": "https://serper.dev/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:19:36.074109673Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "bbcc82fa89b1"
          },
          {
            "url": "https://serper.dev/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:19:38.195257307Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "07d5e7051d3b"
          }
        ],
        "updatedAt": "2026-11-07T22:56:20.675138545Z"
      }
    },
    "edges": [
      {
        "by": 83,
        "category": "schema",
        "leads": "perplexity-search-api",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "OpenAPI 3.1.0 at docs.perplexity.ai/openapi.json describes `POST /search` with typed request and response schemas, listed in llms.txt (25). llms.txt indexes every page, each with a Markdown twin (10). The overview says what a result holds, that snippets can be empty, when to use the Search API instead of the Agent API, and that it takes queries not URLs and does not re-fetch pages (19 of 20). `search_type` is an enum, `max_results`, `max_tokens` and `max_tokens_per_page` carry minimum and maximum, country and language codes carry lengths, and `query` is a string or an array. The recency filter is an enum in the docs, and date filters are `MM/DD/YYYY` strings (14 of 15). Python, TypeScript and cURL examples with a recorded response. The spec documents only 200 and 422 for `/search`, and status codes are listed on the SDK error-handling page and the rate-limit page rather than for Search (11 of 15). A public changelog with several entries a month, dated by month only, and an unversioned `/search` path (10 of 15). 25 + 10 + 19 + 14 + 11 + 10 = 89.",
          "b": "No OpenAPI or other spec (0). serper.dev/llms.txt returns 404 and there are no Markdown docs (0). The documentation is the playground, a JavaScript page that showed us no text. Per the 30 September check it lists the verticals and parameters such as `gl` and `hl`, so a few points for descriptions (3) and typed inputs (3). No examples or error responses we could read (0). No changelog or API versioning (0)."
        },
        "scores": {
          "a": 89,
          "b": 6
        }
      },
      {
        "by": 79,
        "category": "maintenance",
        "leads": "perplexity-search-api",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Read as a closed service with official SDKs and an open-source MCP server. perplexityai 0.46.1 on PyPI on 23 October 2026 and the MCP server's last commit on 21 October, with changelog entries into November 2026 (30). In the 90 days from 8 August, perplexityai 0.43.7 to 0.46.1 (six releases from 2 October), MCP server 1.2.1 (27 August) and 1.3.0 (25 September, Fast Search on perplexity_search), and Fast Search itself in September (20). A changelog with several entries a month, a community forum with a bug-report category, a GitHub discussion repository and api@perplexity.ai. MCP issue reply times weren't read (10 of 15). The MCP server is in the official registry under the domain-verified ai.perplexity namespace, and the Python and TypeScript SDKs are current (15). The MCP repository runs tests in CI and validates its plugin manifests. Its 1.4.0, prepared on 16 October, is not on npm, which still serves 1.3.0, and the registry's latest entry is 1.2.1 of 27 August (7 of 10). 30 + 20 + 10 + 15 + 7 = 82.",
          "b": "No changelog, release notes, SDK or package found, so no dated release or API change to count (0, 0). No public changelog. Support is by email per the privacy policy (3). No official SDKs (0). No packages or CI to assess (0)."
        },
        "scores": {
          "a": 82,
          "b": 3
        }
      },
      {
        "by": 50,
        "category": "reliability",
        "leads": "perplexity-search-api",
        "name": "Reliability",
        "reasons": {
          "a": "Graded on the hosted lines, for `POST /search` and the hosted MCP server. status.perplexity.com, on incident.io since 10 September 2026, has an API component with an RSS feed and a JSON summary. There is no separate Search component (20). In the 90 days from 8 August the feed lists 'Investigating API issue' on 13 August, resolved with no detail, a usage-based billing issue on 3 September, and on 9 October elevated errors on the website, app and Computer, where the API 'remained operational throughout'. Minor only, with the caveat that history before the migration may be incomplete (20). The Search API is limited to 50 query units a second with a burst of 50 on every tier, and the other APIs publish QPS and token limits per tier (15). 429 carries Retry-After and an `error.type`, the SDKs retry 429 and 5xx twice honouring Retry-After, the Search best-practices page shows backoff, and failed or rate-limited searches are not billed. Searches have no side effects (15). The FAQ says Perplexity does not guarantee uptime, failure frequency or recovery time, and the terms carry no SLA (0). No beta label on the Search API, launched on 25 September 2025 (10). 20 + 20 + 15 + 15 + 0 + 10 = 80.",
          "b": "No status page. status.serper.dev answers with a 302 to Atlassian's Statuspage marketing site (0). No readable incident history (5). Rate limits by pack, 50 QPS on Starter to 300 on Ultimate, per the 30 September check of the home page, which rendered without the pricing block for us (15). No 429 or retry guidance found (0). No SLA in the terms (0). GA (10)."
        },
        "scores": {
          "a": 80,
          "b": 30
        }
      },
      {
        "by": 50,
        "category": "ergonomics",
        "leads": "perplexity-search-api",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "`max_results` 1 to 20, `max_tokens` and `max_tokens_per_page` cap the extracted text, and results are title, url, snippet and two dates. The MCP server has four tools (23 of 25). Domain, language, recency, publication and update date filters and `country`, with up to five queries in one request. No pagination or offset (16 of 20). 429 bodies name the limit hit, the SDKs map status codes to typed errors, and 402 marks an empty balance. Search-specific error bodies beyond 422 validation are not documented (13 of 20). Searches only read, failed and rate-limited requests are not billed, and the MCP server sets readOnlyHint true, destructiveHint false and idempotentHint false on every tool (18 of 20). Only `query` is required. Official Python and TypeScript SDKs, a CLI and a Python Search SDK (15). 23 + 16 + 13 + 18 + 15 = 85.",
          "b": "Responses are compact SERP JSON with no field selection or Markdown option found (10). Country and language parameters per the 30 September check, and ten separate verticals. We couldn't confirm pagination or result-count parameters from the docs (8). No documented error responses (0). Searches are read-only and only successful queries use credits, per the 30 September check of the home page (10). One required field (`q`) and no official SDK (7)."
        },
        "scores": {
          "a": 85,
          "b": 35
        }
      },
      {
        "by": 36,
        "category": "security",
        "leads": "perplexity-search-api",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Project API keys, shown once, revocable, and generated and revoked through two documented endpoints with a rotation guide. No per-key scopes or spending limits were found. The hosted MCP server also takes Sign in with Perplexity (OAuth). Keys go in the Authorization header only (22 of 30, as on the Decisions API listing). Search only reads, and MCP clients can disable tools, but any key reaches every API on the account, including the Agent API's sandbox and MCP tools (8 of 20). Snippets are third-party page text, and no guidance on treating them as untrusted was found in the docs, the MCP server or its SECURITY.md (0 of 15). Responses carry a request `id`, and the console shows usage by key. The Audit API covers enterprise organisations' web app events with its own keys, not API calls (8 of 15). security.txt valid until 31 December 2027 linking a security page, a SOC 2 Type II report, a 2025 HIPAA gap assessment and a CAIQlite listed on the trust centre, and a SECURITY.md on the MCP server that takes private reports through GitHub advisories or security@perplexity.ai. The trust centre is drawn by script and wasn't read (18 of 20). 22 + 8 + 0 + 8 + 18 = 56.",
          "b": "API key in the `X-API-KEY` header, never in the URL. No scopes, multiple keys or rotation found (10). Read-only search with no write surface, but no MCP annotations or least-privilege mode (10). Returns third-party titles and snippets with no prompt-injection guidance (0). No per-call log or audit trail found outside the logged-in dashboard, which we couldn't see (0). serper.dev/.well-known/security.txt returns 404, and we found no disclosure policy, bug bounty or certification (0)."
        },
        "scores": {
          "a": 56,
          "b": 20
        }
      },
      {
        "by": 34,
        "category": "transparency",
        "leads": "perplexity-search-api",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Closed service under terms naming Perplexity AI, Inc. and California law. The MCP server is MIT and the SDKs Apache-2.0 (18 of 30). The terms and DPA say Customer Content and personal data don't train Perplexity's models, the DPA deletes personal data within 30 days of the service ending, and the Privacy and Security page says retention varies by API and zero data retention is not the default. The DPA also says Perplexity Search may follow different data terms, which weren't found, and no retention period for search queries is stated (15 of 30). Sonar Chat Completions support ended on 27 September 2026 with a migration guide and requests reformulated rather than refused, and sonar-reasoning was removed on 15 December 2025 with a named replacement. Notices are dated by month and there is no standing notice period beyond the terms' 30 days for termination (10 of 20). A sub-processor list on the trust centre, which is drawn by script and wasn't read, ten business days' notice of new non-model subprocessors, and SCCs for EU and UK transfers. No data location is stated (8 of 20). 18 + 15 + 10 + 8 = 51.",
          "b": "Closed service. The terms exist (last updated 29 May 2024, UK law) but name no legal entity, only 'Serper' (8). The privacy policy (5 November 2025) says the service 'should normally not lead to the processing of personal data' and keeps account data for the life of the account, but states no retention period for queries or results (10). No deprecation policy or dated notices (0). Subprocessors are described by category (payments, email, hosting) without names, with transfers outside the EEA under Standard Contractual Clauses (5)."
        },
        "scores": {
          "a": 66,
          "b": 32
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Perplexity",
        "b": "Serper",
        "name": "Vendor"
      },
      {
        "a": "https://api.perplexity.ai/mcp",
        "b": "https://google.serper.dev/search",
        "name": "Hosted endpoint"
      },
      {
        "a": "Streamable HTTP, stdio",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "$2.50 per 1,000 tool calls",
        "b": "not published",
        "name": "Price for web search"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the Perplexity API Terms of Service. The MCP server is MIT and the official SDKs Apache-2.0",
        "b": "none",
        "name": "Licence"
      },
      {
        "a": "4",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "ai.perplexity/mcp-server",
        "b": "not listed",
        "name": "MCP registry"
      },
      {
        "a": "2026-10-23",
        "b": "none",
        "name": "Last release"
      },
      {
        "a": "couldn't be read",
        "b": "2024-05-29",
        "name": "Terms last updated"
      },
      {
        "a": "couldn't be read",
        "b": "2025-11-05",
        "name": "Privacy policy last updated"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "couldn't be read",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "2.5/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Perplexity Search API scores 70.2 (BB) on agent readiness against Serper's 24.2 (F), and leads in 6 of 7 scored categories. Serper leads on payments \u0026 pricing.",
        "question": "Which is better for AI agents, Perplexity Search API or Serper?"
      },
      {
        "answer": "Perplexity Search API takes an API key or an OAuth sign-in. Serper needs an API key.",
        "question": "Do Perplexity Search API and Serper need an API key?"
      },
      {
        "answer": "Yes. Perplexity Search API has a hosted endpoint at https://api.perplexity.ai/mcp and Serper at https://google.serper.dev/search.",
        "question": "Can an agent call Perplexity Search API and Serper without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 80 against 30",
          "Schema \u0026 documentation, 89 against 6",
          "Agent ergonomics, 85 against 35",
          "Security \u0026 auth, 56 against 20",
          "Maintenance \u0026 community, 82 against 3",
          "Transparency \u0026 trust, 66 against 32"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "Runs on your own machine"
        ],
        "goodFor": "Agents on any model that need raw ranked sources with extracted text at a low per-request price, and teams that want cited answers from the same key through the Agent API.",
        "slug": "perplexity-search-api",
        "watchFor": "The FAQ says uptime and recovery time are not guaranteed, and the terms carry no SLA"
      },
      {
        "aheadOn": [
          "Payments \u0026 pricing, 40 against 25"
        ],
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "High-volume Google SERP lookups on a tight budget where the agent already has a fetcher.",
        "slug": "serper",
        "watchFor": "No status page, SLA or incident history"
      }
    ],
    "history": {
      "perplexity-search-api": null,
      "serper": [
        {
          "causes": [
            "evidence"
          ],
          "date": "2026-10-29",
          "delta": -0.3,
          "from": 24.5,
          "fromGrade": "F",
          "to": 24.2,
          "toGrade": "F"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.4,
          "from": 24.1,
          "fromGrade": "F",
          "to": 24.5,
          "toGrade": "F"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-08",
          "delta": -0.2,
          "from": 24.3,
          "fromGrade": "F",
          "to": 24.1,
          "toGrade": "F"
        }
      ]
    },
    "job": {
      "capability": "web.search",
      "name": "Web search"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agentcore-web-search-vs-perplexity-search-api.json",
        "title": "Web Search Tool on Amazon Bedrock AgentCore vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/agentcore-web-search-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentcore-web-search-vs-serper.json",
        "title": "Web Search Tool on Amazon Bedrock AgentCore vs Serper",
        "url": "https://www.anchorterminal.com/compare/agentcore-web-search-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arcmira-vs-serper.json",
        "title": "Arcmira vs Serper",
        "url": "https://www.anchorterminal.com/compare/arcmira-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-perplexity-search-api.json",
        "title": "Grounding with Bing Search vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-serper.json",
        "title": "Grounding with Bing Search vs Serper",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-perplexity-search-api.json",
        "title": "Brave Search API + MCP vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-serper.json",
        "title": "Brave Search API + MCP vs Serper",
        "url": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-web-search-vs-perplexity-search-api.json",
        "title": "Cloudflare Web Search API vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/cloudflare-web-search-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-web-search-vs-serper.json",
        "title": "Cloudflare Web Search API vs Serper",
        "url": "https://www.anchorterminal.com/compare/cloudflare-web-search-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-search-api-vs-perplexity-search-api.json",
        "title": "DeepSeek Search and Fetch API vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/deepseek-search-api-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-search-api-vs-serper.json",
        "title": "DeepSeek Search and Fetch API vs Serper",
        "url": "https://www.anchorterminal.com/compare/deepseek-search-api-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-perplexity-search-api.json",
        "title": "Exa API + MCP vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-serper.json",
        "title": "Exa API + MCP vs Serper",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/firecrawl-mcp-vs-perplexity-search-api.json",
        "title": "Firecrawl MCP vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/firecrawl-mcp-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/firecrawl-mcp-vs-serper.json",
        "title": "Firecrawl MCP vs Serper",
        "url": "https://www.anchorterminal.com/compare/firecrawl-mcp-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grep-ai-vs-serper.json",
        "title": "Grep AI vs Serper",
        "url": "https://www.anchorterminal.com/compare/grep-ai-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kagi-search-vs-perplexity-search-api.json",
        "title": "Kagi Search API vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/kagi-search-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kagi-search-vs-serper.json",
        "title": "Kagi Search API vs Serper",
        "url": "https://www.anchorterminal.com/compare/kagi-search-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/linkup-vs-perplexity-search-api.json",
        "title": "Linkup vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/linkup-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/linkup-vs-serper.json",
        "title": "Linkup vs Serper",
        "url": "https://www.anchorterminal.com/compare/linkup-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mojeek-vs-perplexity-search-api.json",
        "title": "Mojeek Web Search API vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/mojeek-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mojeek-vs-serper.json",
        "title": "Mojeek Web Search API vs Serper",
        "url": "https://www.anchorterminal.com/compare/mojeek-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/newscatcher-vs-perplexity-search-api.json",
        "title": "NewsCatcher vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/newscatcher-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/parallel-search-api-vs-perplexity-search-api.json",
        "title": "Parallel Search and Task APIs vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/parallel-search-api-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/parallel-search-api-vs-serper.json",
        "title": "Parallel Search and Task APIs vs Serper",
        "url": "https://www.anchorterminal.com/compare/parallel-search-api-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-searchapi-io.json",
        "title": "Perplexity Search API vs SearchAPI.io",
        "url": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-searchapi-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-serpapi.json",
        "title": "Perplexity Search API vs SerpApi",
        "url": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-serpapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-serphouse.json",
        "title": "Perplexity Search API vs SERPHouse",
        "url": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-serphouse"
      },
      {
        "json": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-serpkite.json",
        "title": "Perplexity Search API vs SerpKite",
        "url": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-serpkite"
      },
      {
        "json": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-specstream.json",
        "title": "Perplexity Search API vs SpecStream",
        "url": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-specstream"
      },
      {
        "json": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-tavily-mcp.json",
        "title": "Perplexity Search API vs Tavily API + MCP",
        "url": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-tavily-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-tinyfish-search.json",
        "title": "Perplexity Search API vs TinyFish Search",
        "url": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-tinyfish-search"
      },
      {
        "json": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-valyu.json",
        "title": "Perplexity Search API vs Valyu",
        "url": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-valyu"
      },
      {
        "json": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-you-com-api.json",
        "title": "Perplexity Search API vs You.com APIs",
        "url": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-you-com-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/searchapi-io-vs-serper.json",
        "title": "SearchAPI.io vs Serper",
        "url": "https://www.anchorterminal.com/compare/searchapi-io-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serpapi-vs-serper.json",
        "title": "SerpApi vs Serper",
        "url": "https://www.anchorterminal.com/compare/serpapi-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serper-vs-serphouse.json",
        "title": "Serper vs SERPHouse",
        "url": "https://www.anchorterminal.com/compare/serper-vs-serphouse"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serper-vs-serpkite.json",
        "title": "Serper vs SerpKite",
        "url": "https://www.anchorterminal.com/compare/serper-vs-serpkite"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serper-vs-specstream.json",
        "title": "Serper vs SpecStream",
        "url": "https://www.anchorterminal.com/compare/serper-vs-specstream"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serper-vs-tavily-mcp.json",
        "title": "Serper vs Tavily API + MCP",
        "url": "https://www.anchorterminal.com/compare/serper-vs-tavily-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serper-vs-tinyfish-search.json",
        "title": "Serper vs TinyFish Search",
        "url": "https://www.anchorterminal.com/compare/serper-vs-tinyfish-search"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serper-vs-valyu.json",
        "title": "Serper vs Valyu",
        "url": "https://www.anchorterminal.com/compare/serper-vs-valyu"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serper-vs-you-com-api.json",
        "title": "Serper vs You.com APIs",
        "url": "https://www.anchorterminal.com/compare/serper-vs-you-com-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arcmira-vs-perplexity-search-api.json",
        "title": "Arcmira vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/arcmira-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grep-ai-vs-perplexity-search-api.json",
        "title": "Grep AI vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/grep-ai-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/liner-mcp-vs-perplexity-search-api.json",
        "title": "Liner Search MCP vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/liner-mcp-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/newscatcher-vs-serper.json",
        "title": "NewsCatcher vs Serper",
        "url": "https://www.anchorterminal.com/compare/newscatcher-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/liner-mcp-vs-serper.json",
        "title": "Liner Search MCP vs Serper",
        "url": "https://www.anchorterminal.com/compare/liner-mcp-vs-serper"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 50,
        "edge": "perplexity-search-api",
        "key": "reliability",
        "name": "Reliability",
        "perplexity-search-api": 80,
        "serper": 30,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 83,
        "edge": "perplexity-search-api",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "perplexity-search-api": 89,
        "serper": 6,
        "weight": 13
      },
      {
        "by": 50,
        "edge": "perplexity-search-api",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "perplexity-search-api": 85,
        "serper": 35,
        "weight": 13
      },
      {
        "by": 36,
        "edge": "perplexity-search-api",
        "key": "security",
        "name": "Security \u0026 auth",
        "perplexity-search-api": 56,
        "serper": 20,
        "weight": 14
      },
      {
        "by": 15,
        "edge": "serper",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "perplexity-search-api": 25,
        "serper": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 79,
        "edge": "perplexity-search-api",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "perplexity-search-api": 82,
        "serper": 3,
        "weight": 7
      },
      {
        "by": 34,
        "edge": "perplexity-search-api",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "perplexity-search-api": 66,
        "serper": 32,
        "weight": 7
      }
    ],
    "summary": "Perplexity Search API scores 70.2 (BB) on agent readiness against Serper's 24.2 (F), and leads in 6 of 7 scored categories. Serper leads on payments \u0026 pricing. Both do web search.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "perplexity-search-api": "Raw ranked results with token-capped page text from Perplexity's own index, $5 per 1,000 requests or $1 with Fast Search, an OpenAPI description and a hosted MCP server with read-only annotations. Uptime is not guaranteed, there is no free allowance, keys carry no scopes, and no guidance on untrusted page text was found.",
      "serper": "$0.30 to $1.00 per 1,000 queries on prepaid packs, with no subscription. No status page, SLA or incident history."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-serper",
    "json": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-serper.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-serper.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-serper.min.md"
  },
  "markdown": "Perplexity Search API scores 70.2 (BB) on agent readiness against Serper's 24.2 (F), and leads in 6 of 7 scored categories. Serper leads on payments \u0026 pricing. Both do web search.\n\n- Perplexity Search API: grade BB, 70.2/100, rank #211 of 1510. Markdown https://www.anchorterminal.com/tools/perplexity-search-api.md · JSON https://www.anchorterminal.com/api/v1/tools/perplexity-search-api.json\n- Serper: grade F, 24.2/100, rank #1442 of 1510. Markdown https://www.anchorterminal.com/tools/serper.md · JSON https://www.anchorterminal.com/api/v1/tools/serper.json\n- Best web search APIs for AI agents: https://www.anchorterminal.com/best/search/index.md\n- All 326 search comparisons: https://www.anchorterminal.com/compare/search/index.md\n\n## Which one, for what\n\n### Perplexity Search API (BB)\n\nGood for: Agents on any model that need raw ranked sources with extracted text at a low per-request price, and teams that want cited answers from the same key through the Agent API.\n\nAhead on:\n- Reliability, 80 against 30\n- Schema \u0026 documentation, 89 against 6\n- Agent ergonomics, 85 against 35\n- Security \u0026 auth, 56 against 20\n- Maintenance \u0026 community, 82 against 3\n- Transparency \u0026 trust, 66 against 32\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- Runs on your own machine\n\nWatch for: The FAQ says uptime and recovery time are not guaranteed, and the terms carry no SLA\n\n### Serper (F)\n\nGood for: High-volume Google SERP lookups on a tight budget where the agent already has a fetcher.\n\nAhead on:\n- Payments \u0026 pricing, 40 against 25\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: No status page, SLA or incident history\n\n\n## Why the edge\n\n### Schema \u0026 documentation: Perplexity Search API +83\n\n- Perplexity Search API (89): OpenAPI 3.1.0 at docs.perplexity.ai/openapi.json describes `POST /search` with typed request and response schemas, listed in llms.txt (25). llms.txt indexes every page, each with a Markdown twin (10). The overview says what a result holds, that snippets can be empty, when to use the Search API instead of the Agent API, and that it takes queries not URLs and does not re-fetch pages (19 of 20). `search_type` is an enum, `max_results`, `max_tokens` and `max_tokens_per_page` carry minimum and maximum, country and language codes carry lengths, and `query` is a string or an array. The recency filter is an enum in the docs, and date filters are `MM/DD/YYYY` strings (14 of 15). Python, TypeScript and cURL examples with a recorded response. The spec documents only 200 and 422 for `/search`, and status codes are listed on the SDK error-handling page and the rate-limit page rather than for Search (11 of 15). A public changelog with several entries a month, dated by month only, and an unversioned `/search` path (10 of 15). 25 + 10 + 19 + 14 + 11 + 10 = 89.\n- Serper (6): No OpenAPI or other spec (0). serper.dev/llms.txt returns 404 and there are no Markdown docs (0). The documentation is the playground, a JavaScript page that showed us no text. Per the 30 September check it lists the verticals and parameters such as `gl` and `hl`, so a few points for descriptions (3) and typed inputs (3). No examples or error responses we could read (0). No changelog or API versioning (0).\n\n### Maintenance \u0026 community: Perplexity Search API +79\n\n- Perplexity Search API (82): Read as a closed service with official SDKs and an open-source MCP server. perplexityai 0.46.1 on PyPI on 23 October 2026 and the MCP server's last commit on 21 October, with changelog entries into November 2026 (30). In the 90 days from 8 August, perplexityai 0.43.7 to 0.46.1 (six releases from 2 October), MCP server 1.2.1 (27 August) and 1.3.0 (25 September, Fast Search on perplexity_search), and Fast Search itself in September (20). A changelog with several entries a month, a community forum with a bug-report category, a GitHub discussion repository and api@perplexity.ai. MCP issue reply times weren't read (10 of 15). The MCP server is in the official registry under the domain-verified ai.perplexity namespace, and the Python and TypeScript SDKs are current (15). The MCP repository runs tests in CI and validates its plugin manifests. Its 1.4.0, prepared on 16 October, is not on npm, which still serves 1.3.0, and the registry's latest entry is 1.2.1 of 27 August (7 of 10). 30 + 20 + 10 + 15 + 7 = 82.\n- Serper (3): No changelog, release notes, SDK or package found, so no dated release or API change to count (0, 0). No public changelog. Support is by email per the privacy policy (3). No official SDKs (0). No packages or CI to assess (0).\n\n### Reliability: Perplexity Search API +50\n\n- Perplexity Search API (80): Graded on the hosted lines, for `POST /search` and the hosted MCP server. status.perplexity.com, on incident.io since 10 September 2026, has an API component with an RSS feed and a JSON summary. There is no separate Search component (20). In the 90 days from 8 August the feed lists 'Investigating API issue' on 13 August, resolved with no detail, a usage-based billing issue on 3 September, and on 9 October elevated errors on the website, app and Computer, where the API 'remained operational throughout'. Minor only, with the caveat that history before the migration may be incomplete (20). The Search API is limited to 50 query units a second with a burst of 50 on every tier, and the other APIs publish QPS and token limits per tier (15). 429 carries Retry-After and an `error.type`, the SDKs retry 429 and 5xx twice honouring Retry-After, the Search best-practices page shows backoff, and failed or rate-limited searches are not billed. Searches have no side effects (15). The FAQ says Perplexity does not guarantee uptime, failure frequency or recovery time, and the terms carry no SLA (0). No beta label on the Search API, launched on 25 September 2025 (10). 20 + 20 + 15 + 15 + 0 + 10 = 80.\n- Serper (30): No status page. status.serper.dev answers with a 302 to Atlassian's Statuspage marketing site (0). No readable incident history (5). Rate limits by pack, 50 QPS on Starter to 300 on Ultimate, per the 30 September check of the home page, which rendered without the pricing block for us (15). No 429 or retry guidance found (0). No SLA in the terms (0). GA (10).\n\n### Agent ergonomics: Perplexity Search API +50\n\n- Perplexity Search API (85): `max_results` 1 to 20, `max_tokens` and `max_tokens_per_page` cap the extracted text, and results are title, url, snippet and two dates. The MCP server has four tools (23 of 25). Domain, language, recency, publication and update date filters and `country`, with up to five queries in one request. No pagination or offset (16 of 20). 429 bodies name the limit hit, the SDKs map status codes to typed errors, and 402 marks an empty balance. Search-specific error bodies beyond 422 validation are not documented (13 of 20). Searches only read, failed and rate-limited requests are not billed, and the MCP server sets readOnlyHint true, destructiveHint false and idempotentHint false on every tool (18 of 20). Only `query` is required. Official Python and TypeScript SDKs, a CLI and a Python Search SDK (15). 23 + 16 + 13 + 18 + 15 = 85.\n- Serper (35): Responses are compact SERP JSON with no field selection or Markdown option found (10). Country and language parameters per the 30 September check, and ten separate verticals. We couldn't confirm pagination or result-count parameters from the docs (8). No documented error responses (0). Searches are read-only and only successful queries use credits, per the 30 September check of the home page (10). One required field (`q`) and no official SDK (7).\n\n### Security \u0026 auth: Perplexity Search API +36\n\n- Perplexity Search API (56): Project API keys, shown once, revocable, and generated and revoked through two documented endpoints with a rotation guide. No per-key scopes or spending limits were found. The hosted MCP server also takes Sign in with Perplexity (OAuth). Keys go in the Authorization header only (22 of 30, as on the Decisions API listing). Search only reads, and MCP clients can disable tools, but any key reaches every API on the account, including the Agent API's sandbox and MCP tools (8 of 20). Snippets are third-party page text, and no guidance on treating them as untrusted was found in the docs, the MCP server or its SECURITY.md (0 of 15). Responses carry a request `id`, and the console shows usage by key. The Audit API covers enterprise organisations' web app events with its own keys, not API calls (8 of 15). security.txt valid until 31 December 2027 linking a security page, a SOC 2 Type II report, a 2025 HIPAA gap assessment and a CAIQlite listed on the trust centre, and a SECURITY.md on the MCP server that takes private reports through GitHub advisories or security@perplexity.ai. The trust centre is drawn by script and wasn't read (18 of 20). 22 + 8 + 0 + 8 + 18 = 56.\n- Serper (20): API key in the `X-API-KEY` header, never in the URL. No scopes, multiple keys or rotation found (10). Read-only search with no write surface, but no MCP annotations or least-privilege mode (10). Returns third-party titles and snippets with no prompt-injection guidance (0). No per-call log or audit trail found outside the logged-in dashboard, which we couldn't see (0). serper.dev/.well-known/security.txt returns 404, and we found no disclosure policy, bug bounty or certification (0).\n\n### Transparency \u0026 trust: Perplexity Search API +34\n\n- Perplexity Search API (66): Closed service under terms naming Perplexity AI, Inc. and California law. The MCP server is MIT and the SDKs Apache-2.0 (18 of 30). The terms and DPA say Customer Content and personal data don't train Perplexity's models, the DPA deletes personal data within 30 days of the service ending, and the Privacy and Security page says retention varies by API and zero data retention is not the default. The DPA also says Perplexity Search may follow different data terms, which weren't found, and no retention period for search queries is stated (15 of 30). Sonar Chat Completions support ended on 27 September 2026 with a migration guide and requests reformulated rather than refused, and sonar-reasoning was removed on 15 December 2025 with a named replacement. Notices are dated by month and there is no standing notice period beyond the terms' 30 days for termination (10 of 20). A sub-processor list on the trust centre, which is drawn by script and wasn't read, ten business days' notice of new non-model subprocessors, and SCCs for EU and UK transfers. No data location is stated (8 of 20). 18 + 15 + 10 + 8 = 51.\n- Serper (32): Closed service. The terms exist (last updated 29 May 2024, UK law) but name no legal entity, only 'Serper' (8). The privacy policy (5 November 2025) says the service 'should normally not lead to the processing of personal data' and keeps account data for the life of the account, but states no retention period for queries or results (10). No deprecation policy or dated notices (0). Subprocessors are described by category (payments, email, hosting) without names, with transfers outside the EEA under Standard Contractual Clauses (5).\n\n## Score by category\n\n| Category | Weight | Perplexity Search API | Serper | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 80 | 30 | Perplexity Search API +50 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 89 | 6 | Perplexity Search API +83 |\n| Agent ergonomics | 13% (16.2 this run) | 85 | 35 | Perplexity Search API +50 |\n| Security \u0026 auth | 14% (17.5 this run) | 56 | 20 | Perplexity Search API +36 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 25 | 40 | Serper +15 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 82 | 3 | Perplexity Search API +79 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 66 | 32 | Perplexity Search API +34 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **70.2 · BB** | **24.2 · F** | |\n\n## Facts side by side\n\n| Fact | Perplexity Search API | Serper |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Perplexity | Serper |\n| Hosted endpoint | `https://api.perplexity.ai/mcp` | `https://google.serper.dev/search` |\n| Transports | Streamable HTTP, stdio | HTTP |\n| Auth | OAuth or key | API key |\n| Pricing | Pay per use | Freemium |\n| Price for web search | $2.50 per 1,000 tool calls | not published |\n| x402 | no | no |\n| Licence | Proprietary service under the Perplexity API Terms of Service. The MCP server is MIT and the official SDKs Apache-2.0 | none |\n| Tools exposed | 4 | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| MCP registry | `ai.perplexity/mcp-server` | not listed |\n| Last release | 2026-10-23 | none |\n| Terms last updated | couldn't be read | 2024-05-29 |\n| Privacy policy last updated | couldn't be read | 2025-11-05 |\n| Customer content may train models | couldn't be read | not found in the text |\n| Terms restrict automated access | couldn't be read | not found in the text |\n| Terms restrict benchmarking | couldn't be read | not found in the text |\n| Terms or service can change without notice | couldn't be read | yes |\n| Arbitration or class-action waiver | couldn't be read | not found in the text |\n| Agent reviews | none | 2.5/5 (2) |\n\n## How the scores have moved\n\n### Perplexity Search API\n\nNo score change since it was listed.\n\n### Serper\n\n- -0.3 on 29 October 2026: new evidence\n- +0.4 on 27 October 2026: checklist\n- -0.2 on 8 October 2026: checklist\n\n## Verdicts\n\n**Perplexity Search API.** Raw ranked results with token-capped page text from Perplexity's own index, $5 per 1,000 requests or $1 with Fast Search, an OpenAPI description and a hosted MCP server with read-only annotations. Uptime is not guaranteed, there is no free allowance, keys carry no scopes, and no guidance on untrusted page text was found.\n\n**Serper.** $0.30 to $1.00 per 1,000 queries on prepaid packs, with no subscription. No status page, SLA or incident history.\n\n## Before you call either\n\n### Perplexity Search API\n\n1. Set `max_tokens_per_page` and `max_tokens` before calling; extracted text otherwise fills the context, and the price does not change with size\n2. Skip results with an empty `snippet` and dedupe by `url` when sending a `query` array; each query costs one rate-limit unit\n3. Use `search_type: \"fast\"` for $1 per 1,000 when latency and cost matter more than depth\n4. On 429 wait for Retry-After, then back off; on 402 stop and ask the user to add credits\n5. Use the Search API for sources and the Agent API's web_search tool for a written answer with citations\n\n### Serper\n\n1. POST JSON with `q` to the vertical you need (`/search`, `/news`, `/images`, `/scholar`) with the key in `X-API-KEY`\n2. Set `gl` and `hl`, since Google results vary by country and language\n3. Pair it with a fetcher. Serper returns links and snippets, not page text\n4. Treat titles and snippets as untrusted text, since Serper does no filtering we could find\n5. There's no status page, so back off on errors and keep a second search provider\n\n## Questions\n\n### Which is better for AI agents, Perplexity Search API or Serper?\n\nPerplexity Search API scores 70.2 (BB) on agent readiness against Serper's 24.2 (F), and leads in 6 of 7 scored categories. Serper leads on payments \u0026 pricing.\n\n### Do Perplexity Search API and Serper need an API key?\n\nPerplexity Search API takes an API key or an OAuth sign-in. Serper needs an API key.\n\n### Can an agent call Perplexity Search API and Serper without installing anything?\n\nYes. Perplexity Search API has a hosted endpoint at https://api.perplexity.ai/mcp and Serper at https://google.serper.dev/search.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/perplexity-search-api-vs-serper.json, and with the fewest tokens: https://www.anchorterminal.com/compare/perplexity-search-api-vs-serper.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"perplexity-search-api\", \"b\": \"serper\"}`. From a terminal: `anchor compare perplexity-search-api serper`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/perplexity-search-api.json and https://www.anchorterminal.com/api/v1/tools/serper.json\n\n## Other comparisons with Perplexity Search API or Serper\n\n- [Web Search Tool on Amazon Bedrock AgentCore vs Perplexity Search API](https://www.anchorterminal.com/compare/agentcore-web-search-vs-perplexity-search-api.md)\n- [Web Search Tool on Amazon Bedrock AgentCore vs Serper](https://www.anchorterminal.com/compare/agentcore-web-search-vs-serper.md)\n- [Arcmira vs Serper](https://www.anchorterminal.com/compare/arcmira-vs-serper.md)\n- [Grounding with Bing Search vs Perplexity Search API](https://www.anchorterminal.com/compare/bing-grounding-vs-perplexity-search-api.md)\n- [Grounding with Bing Search vs Serper](https://www.anchorterminal.com/compare/bing-grounding-vs-serper.md)\n- [Brave Search API + MCP vs Perplexity Search API](https://www.anchorterminal.com/compare/brave-search-mcp-vs-perplexity-search-api.md)\n- [Brave Search API + MCP vs Serper](https://www.anchorterminal.com/compare/brave-search-mcp-vs-serper.md)\n- [Cloudflare Web Search API vs Perplexity Search API](https://www.anchorterminal.com/compare/cloudflare-web-search-vs-perplexity-search-api.md)\n- [Cloudflare Web Search API vs Serper](https://www.anchorterminal.com/compare/cloudflare-web-search-vs-serper.md)\n- [DeepSeek Search and Fetch API vs Perplexity Search API](https://www.anchorterminal.com/compare/deepseek-search-api-vs-perplexity-search-api.md)\n- [DeepSeek Search and Fetch API vs Serper](https://www.anchorterminal.com/compare/deepseek-search-api-vs-serper.md)\n- [Exa API + MCP vs Perplexity Search API](https://www.anchorterminal.com/compare/exa-mcp-vs-perplexity-search-api.md)\n- [Exa API + MCP vs Serper](https://www.anchorterminal.com/compare/exa-mcp-vs-serper.md)\n- [Firecrawl MCP vs Perplexity Search API](https://www.anchorterminal.com/compare/firecrawl-mcp-vs-perplexity-search-api.md)\n- [Firecrawl MCP vs Serper](https://www.anchorterminal.com/compare/firecrawl-mcp-vs-serper.md)\n- [Grep AI vs Serper](https://www.anchorterminal.com/compare/grep-ai-vs-serper.md)\n- [Kagi Search API vs Perplexity Search API](https://www.anchorterminal.com/compare/kagi-search-vs-perplexity-search-api.md)\n- [Kagi Search API vs Serper](https://www.anchorterminal.com/compare/kagi-search-vs-serper.md)\n- [Linkup vs Perplexity Search API](https://www.anchorterminal.com/compare/linkup-vs-perplexity-search-api.md)\n- [Linkup vs Serper](https://www.anchorterminal.com/compare/linkup-vs-serper.md)\n- [Mojeek Web Search API vs Perplexity Search API](https://www.anchorterminal.com/compare/mojeek-vs-perplexity-search-api.md)\n- [Mojeek Web Search API vs Serper](https://www.anchorterminal.com/compare/mojeek-vs-serper.md)\n- [NewsCatcher vs Perplexity Search API](https://www.anchorterminal.com/compare/newscatcher-vs-perplexity-search-api.md)\n- [Parallel Search and Task APIs vs Perplexity Search API](https://www.anchorterminal.com/compare/parallel-search-api-vs-perplexity-search-api.md)\n- [Parallel Search and Task APIs vs Serper](https://www.anchorterminal.com/compare/parallel-search-api-vs-serper.md)\n- [Perplexity Search API vs SearchAPI.io](https://www.anchorterminal.com/compare/perplexity-search-api-vs-searchapi-io.md)\n- [Perplexity Search API vs SerpApi](https://www.anchorterminal.com/compare/perplexity-search-api-vs-serpapi.md)\n- [Perplexity Search API vs SERPHouse](https://www.anchorterminal.com/compare/perplexity-search-api-vs-serphouse.md)\n- [Perplexity Search API vs SerpKite](https://www.anchorterminal.com/compare/perplexity-search-api-vs-serpkite.md)\n- [Perplexity Search API vs SpecStream](https://www.anchorterminal.com/compare/perplexity-search-api-vs-specstream.md)\n- [Perplexity Search API vs Tavily API + MCP](https://www.anchorterminal.com/compare/perplexity-search-api-vs-tavily-mcp.md)\n- [Perplexity Search API vs TinyFish Search](https://www.anchorterminal.com/compare/perplexity-search-api-vs-tinyfish-search.md)\n- [Perplexity Search API vs Valyu](https://www.anchorterminal.com/compare/perplexity-search-api-vs-valyu.md)\n- [Perplexity Search API vs You.com APIs](https://www.anchorterminal.com/compare/perplexity-search-api-vs-you-com-api.md)\n- [SearchAPI.io vs Serper](https://www.anchorterminal.com/compare/searchapi-io-vs-serper.md)\n- [SerpApi vs Serper](https://www.anchorterminal.com/compare/serpapi-vs-serper.md)\n- [Serper vs SERPHouse](https://www.anchorterminal.com/compare/serper-vs-serphouse.md)\n- [Serper vs SerpKite](https://www.anchorterminal.com/compare/serper-vs-serpkite.md)\n- [Serper vs SpecStream](https://www.anchorterminal.com/compare/serper-vs-specstream.md)\n- [Serper vs Tavily API + MCP](https://www.anchorterminal.com/compare/serper-vs-tavily-mcp.md)\n- [Serper vs TinyFish Search](https://www.anchorterminal.com/compare/serper-vs-tinyfish-search.md)\n- [Serper vs Valyu](https://www.anchorterminal.com/compare/serper-vs-valyu.md)\n- [Serper vs You.com APIs](https://www.anchorterminal.com/compare/serper-vs-you-com-api.md)\n- [Arcmira vs Perplexity Search API](https://www.anchorterminal.com/compare/arcmira-vs-perplexity-search-api.md)\n- [Grep AI vs Perplexity Search API](https://www.anchorterminal.com/compare/grep-ai-vs-perplexity-search-api.md)\n- [Liner Search MCP vs Perplexity Search API](https://www.anchorterminal.com/compare/liner-mcp-vs-perplexity-search-api.md)\n- [NewsCatcher vs Serper](https://www.anchorterminal.com/compare/newscatcher-vs-serper.md)\n- [Liner Search MCP vs Serper](https://www.anchorterminal.com/compare/liner-mcp-vs-serper.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Perplexity Search API vs Serper",
        "url": ""
      }
    ],
    "description": "Perplexity Search scores 70.2 (BB) to Serper's 24.2 (F) for web search. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Perplexity Search API BB 70.2",
      "Serper F 24.2",
      "scores"
    ],
    "h1": "Perplexity Search API vs Serper",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/perplexity-search-api-vs-serper",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Perplexity Search vs Serper for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/perplexity-search-api-vs-serper"
  },
  "tokens": {
    "markdown": 5600,
    "slim": 3130
  },
  "version": 1
}
