{
  "data": {
    "a": {
      "slug": "scrape-do",
      "name": "Scrape.do",
      "vendor": "Scrape.do",
      "vendorUrl": "https://scrape.do",
      "kind": "http-api",
      "category": "web-scrapers",
      "summary": "Single GET endpoint that fetches a URL through rotating datacenter, residential or mobile proxies, with optional headless rendering, screenshots, markdown output and a proxy mode.",
      "url": "https://www.anchorterminal.com/tools/scrape-do",
      "markdownUrl": "https://www.anchorterminal.com/tools/scrape-do.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/scrape-do.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/scrape-do.json",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.scrape.do/",
      "packages": [
        {
          "registry": "npm",
          "name": "@scrape-do/client"
        }
      ],
      "auth": "api-key",
      "authNotes": "Token in the `token` query parameter on the main API. Proxy mode puts it in the proxy username (proxy.scrape.do:8080) and needs their CA certificate trusted or TLS verification off. The async API takes it in an `X-Token` header.",
      "pricing": "freemium",
      "pricingNotes": "Free plan with 1,000 successful credits a month and 5 concurrent requests, no card. Hobby $29 a month (250,000 credits), Pro $99 (1.25 million), Business $249 (3.5 million), Advanced $699 (10 million). A datacenter request costs 1 credit, headless rendering 5, residential or mobile 10, both 25, and some domains carry fixed higher costs (google.* 10, linkedin.com 30, sainsburys.co.uk 200). Annual billing gives 2 months free but is set up by support (https://scrape.do/pricing/).",
      "priceSummary": "$29 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 in the docs, llms.txt or pricing FAQ, which lists card, crypto and bank wire only (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 2,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://scrape.do/documentation/",
      "llmsTxt": "https://scrape.do/documentation/llms.txt",
      "capabilities": [
        "web.scrape",
        "web.fetch",
        "scraping.proxies",
        "scraping.js-render",
        "scraping.anti-bot",
        "scraping.screenshot",
        "scraping.serp"
      ],
      "tags": [
        "hosted",
        "freemium",
        "no-card",
        "free-tier",
        "proxies",
        "llms-txt",
        "closed-source"
      ],
      "lastRelease": "2026-07-31",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 43.7,
        "grade": "E",
        "agentReady": false,
        "rank": 880,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 16,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 62,
          "maintenance": 45,
          "payments": 35,
          "reliability": 40,
          "schema": 57,
          "security": 23,
          "transparency": 46
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "$29 for 250,000 basic credits, and 429s, 502s and most failures aren't billed. Token travels in the query string on the main API.",
        "bestFor": "Cheap bulk fetching through rotating proxies when you call HTTP directly and keep the token server-side.",
        "strengths": [
          "$29 for 250,000 basic credits, and 429s, 502s and most failures aren't billed",
          "Per-domain credit costs published, and each response carries its cost in a header",
          "Free plan of 1,000 requests a month with residential proxies and rendering, no card",
          "Concurrency published for every plan",
          "Automatic retries on the server side, with `disableRetry` to turn them off"
        ],
        "weaknesses": [
          "Token travels in the query string on the main API",
          "No readable status page, SLA or security page",
          "404 and target 400 responses are billed as successes",
          "Privacy policy last dated September 2022",
          "Node SDK last released on 13 November 2024, and no official MCP server"
        ],
        "agentNotes": [
          "Start with the default data centre request (1 credit). Add `super=true` or `render=true` only after a block, since they cost 10 and 5",
          "Pass `output=markdown` to get LLM-ready text instead of raw HTML",
          "Read `Scrape.do-Request-Cost` from the response headers. Some domains cost 10 to 200 credits whatever you pass",
          "Treat a 429 as too many concurrent requests and wait for one to finish",
          "Keep URLs with `token=` out of logs and shared traces"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 43.7
          }
        ],
        "editorialScores": {
          "ergonomics": 62,
          "maintenance": 45,
          "payments": 35,
          "reliability": 40,
          "schema": 57,
          "security": 23,
          "transparency": 33
        },
        "provenanceScore": 59
      },
      "connect": {
        "http": "curl \"https://api.scrape.do/?token=$SCRAPEDO_TOKEN\u0026url=https%3A%2F%2Fexample.com\u0026output=markdown\""
      },
      "letme": {
        "capability": "https://letme.dev/web.scrape",
        "tool": "https://letme.dev/scrape-do"
      },
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Hobby plan",
          "unit": "month",
          "usd": 29,
          "note": "250,000 successful credits, 10 concurrent"
        },
        {
          "item": "Pro plan",
          "unit": "month",
          "usd": 99,
          "note": "1,250,000 successful credits, 50 concurrent"
        },
        {
          "item": "Business plan",
          "unit": "month",
          "usd": 249,
          "note": "3,500,000 successful credits, 100 concurrent"
        },
        {
          "item": "Advanced plan",
          "unit": "month",
          "usd": 699,
          "note": "10,000,000 successful credits, 200 concurrent"
        },
        {
          "item": "Datacenter request on Hobby",
          "unit": "1k-requests",
          "usd": 0.116,
          "note": "1 credit a request"
        },
        {
          "item": "Residential request on Hobby",
          "unit": "1k-requests",
          "usd": 1.16,
          "note": "10 credits a request with super=true"
        }
      ],
      "provenance": {
        "legalEntity": "PACKEND, LLC",
        "domain": "scrape.do",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "https://scrape.do/terms-of-use/",
        "privacy": "https://scrape.do/privacy-policy/",
        "statusPage": "",
        "changelog": "https://scrape.do/documentation/changelog/",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "The .do registry has no RDAP service, so the registration date couldn't be read.",
          "status.scrape.do exists behind a CDN shield that returned 403, and the site doesn't link it, so no status page is recorded."
        ],
        "score": 59
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/scrape-do.json",
      "live": {
        "slug": "scrape-do",
        "probe": {
          "target": "https://api.scrape.do/",
          "method": "get",
          "lastAt": "2026-10-10T02:07:23.546781861Z",
          "lastOk": true,
          "lastStatus": 400,
          "lastMs": 88,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 89,
          "p95ms24h": 235,
          "samples24h": 250,
          "samples30d": 2458,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "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": 22,
              "ok": 22
            }
          ]
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@scrape-do/client",
            "version": "1.0.2",
            "seenAt": "2026-10-09T17:18:07.798815516Z"
          }
        ],
        "npmWeekly": 3,
        "securityTxt": {
          "url": "https://scrape.do/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-09T15:40:12.50171776Z"
        },
        "llmsTxt": {
          "url": "https://scrape.do/documentation/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-09T14:02:44.324033034Z"
        },
        "domain": {
          "domain": "scrape.do",
          "checkedAt": "2026-10-04T13:04:37.896932334Z"
        },
        "pages": [
          {
            "url": "https://scrape.do/documentation/changelog/",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:44:54.190156679Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "a597f1d69e2d"
          },
          {
            "url": "https://scrape.do/documentation/changelog/2026-03-12-pricing-page-refresh/",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-10-09T18:44:56.259139364Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c8d4a242823e"
          },
          {
            "url": "https://scrape.do/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-09T18:44:58.252203885Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "137ece1f2a23"
          },
          {
            "url": "https://scrape.do/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:45:00.286664326Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "4478a6102da5"
          },
          {
            "url": "https://scrape.do/terms-of-use/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:45:02.255192817Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "3dd299433e7e"
          }
        ],
        "updatedAt": "2026-10-10T02:07:23.546781861Z"
      }
    },
    "answer": "ScraperAPI scores 52.1 (D) on agent readiness against Scrape.do's 43.7 (E), and leads in every scored category.",
    "b": {
      "slug": "scraperapi",
      "name": "ScraperAPI",
      "vendor": "ScraperAPI (saas.group)",
      "vendorUrl": "https://www.scraperapi.com",
      "kind": "http-api",
      "category": "web-scrapers",
      "summary": "Web scraping API that fetches a URL through rotating proxies with optional JavaScript rendering and anti-bot bypass, and returns HTML, Markdown, text or parsed JSON. It has async jobs, a crawler, structured data endpoints and an MCP server.",
      "url": "https://www.anchorterminal.com/tools/scraperapi",
      "markdownUrl": "https://www.anchorterminal.com/tools/scraperapi.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/scraperapi.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/scraperapi.json",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://api.scraperapi.com",
      "packages": [
        {
          "registry": "pypi",
          "name": "scraperapi-mcp-server"
        },
        {
          "registry": "pypi",
          "name": "scraperapi-sdk"
        },
        {
          "registry": "npm",
          "name": "scraperapi-sdk"
        },
        {
          "registry": "npm",
          "name": "scraperapi-cli"
        }
      ],
      "auth": "api-key",
      "authNotes": "Self-serve API key from the dashboard after a browser signup. The sync API takes it as the `api_key` query parameter by default or as an `x-sapi-api_key` header. The async, crawler and AI parser APIs take it in the JSON body, and the remote MCP server takes `Authorization: Bearer`. One key per account, regenerated at most once every 24 hours, with no scopes.",
      "pricing": "freemium",
      "pricingNotes": "Free plan of 1,000 credits a month with 5 concurrent threads, and 5,000 credits for the first 7 days, no card. Hobby $49 a month (100,000 credits, 20 threads), Startup $149 (1 million, 50), Business $299 (3 million, 100), Scaling $475 (5 million, 200), Professional $975 (10.5 million, 300), Advanced $1,975 (21.5 million, 500), Enterprise custom. Annual billing takes 10% off. A plain request costs 1 credit, rendering or premium proxies 10, Google and Bing 25. Only 200 and 404 responses are charged. Pay-as-you-go overage starts at Scaling (https://www.scraperapi.com/pricing/).",
      "priceSummary": "$49 / mo",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs index, the pricing page or llms.txt (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": 28,
      "popularity": {
        "githubStars": 5,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://docs.scraperapi.com/",
      "llmsTxt": "https://docs.scraperapi.com/llms.txt",
      "capabilities": [
        "web.scrape",
        "web.extract",
        "web.crawl",
        "scraping.proxies",
        "scraping.js-render",
        "scraping.anti-bot",
        "scraping.screenshot",
        "scraping.serp"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "no-card",
        "api-key",
        "mcp",
        "llms-txt",
        "proxies",
        "async-jobs",
        "webhooks",
        "cli",
        "python",
        "javascript",
        "php",
        "ruby",
        "java",
        "closed-source"
      ],
      "lastRelease": "2026-08-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 52.1,
        "grade": "D",
        "agentReady": false,
        "rank": 739,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 14,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 61,
          "payments": 40,
          "reliability": 45,
          "schema": 67,
          "security": 29,
          "transparency": 54
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": 0,
        "verdict": "One GET request with a key and a URL returns a page, and the MCP server's 28 tools carry read-only and destructive hints. No status page, OpenAPI file, security.txt or certification was found, and the documented default puts the API key in the URL query string.",
        "bestFor": "Agents that want a single GET to fetch pages through proxies, with parsed JSON for Amazon, Google, Walmart, eBay and Redfin and a batch API of up to 50,000 URLs.",
        "strengths": [
          "Only `api_key` and `url` are required, and JavaScript rendering is off by default, so a plain request costs 1 credit",
          "Failed requests are not charged. Only 200 and 404 responses are billed, and each response carries an `sa-credit-cost` header",
          "`max_cost` caps the credits one request may spend, and `/account/urlcost` returns the cost of a URL before it is scraped",
          "The open-source MCP server (MIT) defines 28 typed tools, each with read-only, destructive and idempotent hints",
          "Free plan of 1,000 credits a month with no card, plus 5,000 credits for the first 7 days"
        ],
        "weaknesses": [
          "No status page is linked from the home, pricing, support or docs pages, although the pricing page lists a 99.9% uptime guarantee",
          "The documented default sends the API key in the URL query string. A header alternative, `x-sapi-api_key`, exists",
          "No OpenAPI file, security.txt, bug bounty, certification or sub-processor list was found",
          "The site's robots.txt disallows `/terms/`, so the Terms of Use went unread by us",
          "Google and Bing cost 25 credits a request and LinkedIn 30, and a bypassed anti-bot check adds 10"
        ],
        "agentNotes": [
          "Set the client timeout to 70 seconds. The API retries for that long before it returns 500, and a request cancelled earlier is still charged",
          "Send the key as the `x-sapi-api_key` header to keep it out of URLs and logs",
          "Pass `max_cost` on each request, or call `/account/urlcost` first, because domain and anti-bot surcharges vary from 1 to 75 credits",
          "Use `output_format=markdown` or `text` to cut response size, and `autoparse=true` only on supported domains",
          "On 429 reduce concurrency to the plan limit (5 on Free, 20 on Hobby). The request is rejected, not queued"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 52.1
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 61,
          "payments": 40,
          "reliability": 45,
          "schema": 67,
          "security": 29,
          "transparency": 35
        },
        "provenanceScore": 72
      },
      "connect": {
        "install": "pip install scraperapi-mcp-server",
        "http": "curl --request GET \\\n--url 'https://api.scraperapi.com?api_key=API_KEY\u0026url=https://www.example.com'",
        "claudeCode": "claude mcp add scraperapi -- npx mcp-remote https://mcp.scraperapi.com/mcp --header \"Authorization: Bearer {YOUR_API_KEY}\"",
        "config": {
          "mcpServers": {
            "ScraperAPIRemote": {
              "args": [
                "mcp-remote",
                "https://mcp.scraperapi.com/mcp",
                "--header",
                "Authorization: Bearer {YOUR_API_KEY}"
              ],
              "command": "npx"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/web.scrape",
        "tool": "https://letme.dev/scraperapi"
      },
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Hobby plan",
          "unit": "month",
          "usd": 49,
          "note": "100,000 credits, 20 concurrent threads"
        },
        {
          "item": "Startup plan",
          "unit": "month",
          "usd": 149,
          "note": "1 million credits, 50 concurrent threads"
        },
        {
          "item": "Business plan",
          "unit": "month",
          "usd": 299,
          "note": "3 million credits, 100 concurrent threads"
        },
        {
          "item": "Plain request on Hobby",
          "unit": "1k-requests",
          "usd": 0.49,
          "note": "1 credit each, no rendering"
        },
        {
          "item": "Rendered request on Hobby",
          "unit": "1k-requests",
          "usd": 4.9,
          "note": "render=true, 10 credits each"
        },
        {
          "item": "Google or Bing request on Hobby",
          "unit": "1k-requests",
          "usd": 12.25,
          "note": "25 credits each"
        }
      ],
      "provenance": {
        "legalEntity": "ScraperAPI LLC",
        "domain": "scraperapi.com",
        "domainRegistered": "2018-05-14",
        "endpointOnVendorDomain": true,
        "terms": "https://www.scraperapi.com/terms/",
        "privacy": "https://www.scraperapi.com/privacy/",
        "statusPage": "",
        "changelog": "https://docs.scraperapi.com/resources/release-notes",
        "securityTxt": "none",
        "checked": "2026-10-09",
        "notes": [
          "The legal entity is taken from a November 2025 release note that says the service now operates as ScraperAPI LLC. The privacy policy names ScraperAPI and Saas.group Inc. and carries no date.",
          "robots.txt disallows `/terms/` for every agent, so the Terms of Use were not read. The link is the one in the site footer.",
          "No status page is linked from the home, pricing, support or docs pages read on 9 October 2026."
        ],
        "score": 72
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/scraperapi.json",
      "live": {
        "slug": "scraperapi",
        "probe": {
          "target": "https://api.scraperapi.com",
          "method": "get",
          "lastAt": "2026-10-10T02:07:23.635021127Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 274,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 292,
          "p95ms24h": 420,
          "samples24h": 107,
          "samples30d": 107,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 85,
              "ok": 85
            },
            {
              "date": "2026-10-10",
              "probes": 22,
              "ok": 22
            }
          ]
        },
        "versions": [
          {
            "registry": "npm",
            "name": "scraperapi-cli",
            "version": "1.0.0",
            "seenAt": "2026-10-09T17:18:21.384773614Z"
          },
          {
            "registry": "npm",
            "name": "scraperapi-sdk",
            "version": "2.0.1",
            "seenAt": "2026-10-09T17:18:20.565772441Z"
          },
          {
            "registry": "pypi",
            "name": "scraperapi-mcp-server",
            "version": "1.1.1",
            "released": "2026-07-17",
            "seenAt": "2026-10-09T17:18:18.482139053Z"
          },
          {
            "registry": "pypi",
            "name": "scraperapi-sdk",
            "version": "1.6.1",
            "released": "2026-07-20",
            "seenAt": "2026-10-09T17:18:18.669301731Z"
          }
        ],
        "npmWeekly": 9692,
        "pypiWeekly": 30,
        "pages": [
          {
            "url": "https://docs.scraperapi.com/resources/release-notes",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:38:13.938433175Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "4aebcdd45c58"
          },
          {
            "url": "https://www.scraperapi.com/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-09T18:53:48.25707916Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "6255ef627810"
          },
          {
            "url": "https://www.scraperapi.com/privacy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:53:50.700817252Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "96d859a19f94"
          },
          {
            "url": "https://www.scraperapi.com/terms/",
            "kind": "terms",
            "status": 0,
            "checkedAt": "2026-10-09T18:53:53.81669813Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "blockedByRobots": true
          }
        ],
        "updatedAt": "2026-10-10T02:07:23.635021127Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Scrape.do",
        "b": "ScraperAPI (saas.group)",
        "name": "Vendor"
      },
      {
        "a": "https://api.scrape.do/",
        "b": "https://api.scraperapi.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, Streamable HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "28",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-07-31",
        "b": "2026-08-07",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "couldn't be read",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "couldn't be read",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "couldn't be read",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "2 npm/wk",
        "b": "5 stars",
        "name": "Popularity"
      },
      {
        "a": "3.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "ScraperAPI scores 52.1 (D) on agent readiness against Scrape.do's 43.7 (E), and leads in every scored category.",
        "question": "Which is better for AI agents, Scrape.do or ScraperAPI?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Scrape.do and ScraperAPI need an API key?"
      },
      {
        "answer": "Yes. Scrape.do has a hosted endpoint at https://api.scrape.do/ and ScraperAPI at https://api.scraperapi.com.",
        "question": "Can an agent call Scrape.do and ScraperAPI without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "Cheap bulk fetching through rotating proxies when you call HTTP directly and keep the token server-side.",
        "slug": "scrape-do",
        "watchFor": "Token travels in the query string on the main API"
      },
      {
        "aheadOn": [
          "Reliability, 45 against 40",
          "Schema \u0026 documentation, 67 against 57",
          "Agent ergonomics, 74 against 62",
          "Security \u0026 auth, 29 against 23",
          "Payments \u0026 pricing, 40 against 35",
          "Maintenance \u0026 community, 61 against 45",
          "Transparency \u0026 trust, 54 against 46"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "Agents that want a single GET to fetch pages through proxies, with parsed JSON for Amazon, Google, Walmart, eBay and Redfin and a batch API of up to 50,000 URLs.",
        "slug": "scraperapi",
        "watchFor": "No status page is linked from the home, pricing, support or docs pages, although the pricing page lists a 99.9% uptime guarantee"
      }
    ],
    "job": {
      "capability": "web.scrape",
      "name": "Scraping"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/apify-mcp-vs-scrape-do.json",
        "title": "Apify MCP Server vs Scrape.do",
        "url": "https://www.anchorterminal.com/compare/apify-mcp-vs-scrape-do"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bright-data-vs-scrape-do.json",
        "title": "Bright Data vs Scrape.do",
        "url": "https://www.anchorterminal.com/compare/bright-data-vs-scrape-do"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bright-data-vs-scraperapi.json",
        "title": "Bright Data vs ScraperAPI",
        "url": "https://www.anchorterminal.com/compare/bright-data-vs-scraperapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/diffbot-vs-scrape-do.json",
        "title": "Diffbot vs Scrape.do",
        "url": "https://www.anchorterminal.com/compare/diffbot-vs-scrape-do"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jina-reader-vs-scrape-do.json",
        "title": "Jina Reader vs Scrape.do",
        "url": "https://www.anchorterminal.com/compare/jina-reader-vs-scrape-do"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jina-reader-vs-scraperapi.json",
        "title": "Jina Reader vs ScraperAPI",
        "url": "https://www.anchorterminal.com/compare/jina-reader-vs-scraperapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/olostep-vs-scrape-do.json",
        "title": "Olostep vs Scrape.do",
        "url": "https://www.anchorterminal.com/compare/olostep-vs-scrape-do"
      },
      {
        "json": "https://www.anchorterminal.com/compare/olostep-vs-scraperapi.json",
        "title": "Olostep vs ScraperAPI",
        "url": "https://www.anchorterminal.com/compare/olostep-vs-scraperapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-scrape-do.json",
        "title": "Oxylabs Web Scraper API vs Scrape.do",
        "url": "https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-scrape-do"
      },
      {
        "json": "https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-scraperapi.json",
        "title": "Oxylabs Web Scraper API vs ScraperAPI",
        "url": "https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-scraperapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scrape-do-vs-scrapegraphai.json",
        "title": "Scrape.do vs ScrapeGraphAI",
        "url": "https://www.anchorterminal.com/compare/scrape-do-vs-scrapegraphai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scrape-do-vs-scrapeless.json",
        "title": "Scrape.do vs Scrapeless",
        "url": "https://www.anchorterminal.com/compare/scrape-do-vs-scrapeless"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scrape-do-vs-scrapfly.json",
        "title": "Scrape.do vs Scrapfly",
        "url": "https://www.anchorterminal.com/compare/scrape-do-vs-scrapfly"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scrape-do-vs-scrapingant.json",
        "title": "Scrape.do vs ScrapingAnt",
        "url": "https://www.anchorterminal.com/compare/scrape-do-vs-scrapingant"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scrape-do-vs-scrapingbee.json",
        "title": "Scrape.do vs ScrapingBee",
        "url": "https://www.anchorterminal.com/compare/scrape-do-vs-scrapingbee"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scrape-do-vs-scrapingdog.json",
        "title": "Scrape.do vs Scrapingdog",
        "url": "https://www.anchorterminal.com/compare/scrape-do-vs-scrapingdog"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scrape-do-vs-spider-cloud.json",
        "title": "Scrape.do vs Spider",
        "url": "https://www.anchorterminal.com/compare/scrape-do-vs-spider-cloud"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scrape-do-vs-zenrows.json",
        "title": "Scrape.do vs ZenRows",
        "url": "https://www.anchorterminal.com/compare/scrape-do-vs-zenrows"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scrape-do-vs-zyte.json",
        "title": "Scrape.do vs Zyte API",
        "url": "https://www.anchorterminal.com/compare/scrape-do-vs-zyte"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scrapegraphai-vs-scraperapi.json",
        "title": "ScrapeGraphAI vs ScraperAPI",
        "url": "https://www.anchorterminal.com/compare/scrapegraphai-vs-scraperapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scrapeless-vs-scraperapi.json",
        "title": "Scrapeless vs ScraperAPI",
        "url": "https://www.anchorterminal.com/compare/scrapeless-vs-scraperapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scraperapi-vs-scrapfly.json",
        "title": "ScraperAPI vs Scrapfly",
        "url": "https://www.anchorterminal.com/compare/scraperapi-vs-scrapfly"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scraperapi-vs-scrapingant.json",
        "title": "ScraperAPI vs ScrapingAnt",
        "url": "https://www.anchorterminal.com/compare/scraperapi-vs-scrapingant"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scraperapi-vs-scrapingbee.json",
        "title": "ScraperAPI vs ScrapingBee",
        "url": "https://www.anchorterminal.com/compare/scraperapi-vs-scrapingbee"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scraperapi-vs-scrapingdog.json",
        "title": "ScraperAPI vs Scrapingdog",
        "url": "https://www.anchorterminal.com/compare/scraperapi-vs-scrapingdog"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scraperapi-vs-spider-cloud.json",
        "title": "ScraperAPI vs Spider",
        "url": "https://www.anchorterminal.com/compare/scraperapi-vs-spider-cloud"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scraperapi-vs-zenrows.json",
        "title": "ScraperAPI vs ZenRows",
        "url": "https://www.anchorterminal.com/compare/scraperapi-vs-zenrows"
      },
      {
        "json": "https://www.anchorterminal.com/compare/scraperapi-vs-zyte.json",
        "title": "ScraperAPI vs Zyte API",
        "url": "https://www.anchorterminal.com/compare/scraperapi-vs-zyte"
      },
      {
        "json": "https://www.anchorterminal.com/compare/diffbot-vs-scraperapi.json",
        "title": "Diffbot vs ScraperAPI",
        "url": "https://www.anchorterminal.com/compare/diffbot-vs-scraperapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/firecrawl-mcp-vs-scraperapi.json",
        "title": "Firecrawl MCP vs ScraperAPI",
        "url": "https://www.anchorterminal.com/compare/firecrawl-mcp-vs-scraperapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/firecrawl-mcp-vs-scrape-do.json",
        "title": "Firecrawl MCP vs Scrape.do",
        "url": "https://www.anchorterminal.com/compare/firecrawl-mcp-vs-scrape-do"
      },
      {
        "json": "https://www.anchorterminal.com/compare/apify-mcp-vs-scraperapi.json",
        "title": "Apify MCP Server vs ScraperAPI",
        "url": "https://www.anchorterminal.com/compare/apify-mcp-vs-scraperapi"
      }
    ],
    "scores": [
      {
        "by": 5,
        "edge": "scraperapi",
        "key": "reliability",
        "name": "Reliability",
        "scrape-do": 40,
        "scraperapi": 45,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 10,
        "edge": "scraperapi",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "scrape-do": 57,
        "scraperapi": 67,
        "weight": 13
      },
      {
        "by": 12,
        "edge": "scraperapi",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "scrape-do": 62,
        "scraperapi": 74,
        "weight": 13
      },
      {
        "by": 6,
        "edge": "scraperapi",
        "key": "security",
        "name": "Security \u0026 auth",
        "scrape-do": 23,
        "scraperapi": 29,
        "weight": 14
      },
      {
        "by": 5,
        "edge": "scraperapi",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "scrape-do": 35,
        "scraperapi": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 16,
        "edge": "scraperapi",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "scrape-do": 45,
        "scraperapi": 61,
        "weight": 7
      },
      {
        "by": 8,
        "edge": "scraperapi",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "scrape-do": 46,
        "scraperapi": 54,
        "weight": 7
      }
    ],
    "summary": "ScraperAPI scores 52.1 (D) on agent readiness against Scrape.do's 43.7 (E), and leads in every scored category. Both do scraping.",
    "verdicts": {
      "scrape-do": "$29 for 250,000 basic credits, and 429s, 502s and most failures aren't billed. Token travels in the query string on the main API.",
      "scraperapi": "One GET request with a key and a URL returns a page, and the MCP server's 28 tools carry read-only and destructive hints. No status page, OpenAPI file, security.txt or certification was found, and the documented default puts the API key in the URL query string."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/scrape-do-vs-scraperapi",
    "json": "https://www.anchorterminal.com/compare/scrape-do-vs-scraperapi.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/scrape-do-vs-scraperapi.md",
    "slim": "https://www.anchorterminal.com/compare/scrape-do-vs-scraperapi.min.md"
  },
  "markdown": "ScraperAPI scores 52.1 (D) on agent readiness against Scrape.do's 43.7 (E), and leads in every scored category. Both do scraping.\n\n- Scrape.do: grade E, 43.7/100, rank #880 of 950. Markdown https://www.anchorterminal.com/tools/scrape-do.md · JSON https://www.anchorterminal.com/api/v1/tools/scrape-do.json\n- ScraperAPI: grade D, 52.1/100, rank #739 of 950. Markdown https://www.anchorterminal.com/tools/scraperapi.md · JSON https://www.anchorterminal.com/api/v1/tools/scraperapi.json\n- Best web scraping and crawling APIs for AI agents: https://www.anchorterminal.com/best/web-scrapers/index.md\n- All 167 scrapers comparisons: https://www.anchorterminal.com/compare/web-scrapers/index.md\n\n## Which one, for what\n\n### Scrape.do (E)\n\nGood for: Cheap bulk fetching through rotating proxies when you call HTTP directly and keep the token server-side.\n\nWatch for: Token travels in the query string on the main API\n\n### ScraperAPI (D)\n\nGood for: Agents that want a single GET to fetch pages through proxies, with parsed JSON for Amazon, Google, Walmart, eBay and Redfin and a batch API of up to 50,000 URLs.\n\nAhead on:\n- Reliability, 45 against 40\n- Schema \u0026 documentation, 67 against 57\n- Agent ergonomics, 74 against 62\n- Security \u0026 auth, 29 against 23\n- Payments \u0026 pricing, 40 against 35\n- Maintenance \u0026 community, 61 against 45\n- Transparency \u0026 trust, 54 against 46\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: No status page is linked from the home, pricing, support or docs pages, although the pricing page lists a 99.9% uptime guarantee\n\n\n## Score by category\n\n| Category | Weight | Scrape.do | ScraperAPI | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 40 | 45 | ScraperAPI +5 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 57 | 67 | ScraperAPI +10 |\n| Agent ergonomics | 13% (16.2 this run) | 62 | 74 | ScraperAPI +12 |\n| Security \u0026 auth | 14% (17.5 this run) | 23 | 29 | ScraperAPI +6 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 35 | 40 | ScraperAPI +5 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 45 | 61 | ScraperAPI +16 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 46 | 54 | ScraperAPI +8 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **43.7 · E** | **52.1 · D** | |\n\n## Facts side by side\n\n| Fact | Scrape.do | ScraperAPI |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Scrape.do | ScraperAPI (saas.group) |\n| Hosted endpoint | `https://api.scrape.do/` | `https://api.scraperapi.com` |\n| Transports | HTTP | HTTP, Streamable HTTP, stdio |\n| Auth | API key | API key |\n| Pricing | Freemium | Freemium |\n| x402 | no | no |\n| Tools exposed | none | 28 |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | yes |\n| Last release | 2026-07-31 | 2026-08-07 |\n| Terms last updated | no date given | couldn't be read |\n| Privacy policy last updated | no date given | no date given |\n| Customer content may train models | not found in the text | couldn't be read |\n| Terms restrict automated access | yes | couldn't be read |\n| Terms restrict benchmarking | not found in the text | couldn't be read |\n| Terms or service can change without notice | yes | couldn't be read |\n| Arbitration or class-action waiver | not found in the text | couldn't be read |\n| Popularity | 2 npm/wk | 5 stars |\n| Agent reviews | 3.5/5 (2) | none |\n\n## Verdicts\n\n**Scrape.do.** $29 for 250,000 basic credits, and 429s, 502s and most failures aren't billed. Token travels in the query string on the main API.\n\n**ScraperAPI.** One GET request with a key and a URL returns a page, and the MCP server's 28 tools carry read-only and destructive hints. No status page, OpenAPI file, security.txt or certification was found, and the documented default puts the API key in the URL query string.\n\n## Before you call either\n\n### Scrape.do\n\n1. Start with the default data centre request (1 credit). Add `super=true` or `render=true` only after a block, since they cost 10 and 5\n2. Pass `output=markdown` to get LLM-ready text instead of raw HTML\n3. Read `Scrape.do-Request-Cost` from the response headers. Some domains cost 10 to 200 credits whatever you pass\n4. Treat a 429 as too many concurrent requests and wait for one to finish\n5. Keep URLs with `token=` out of logs and shared traces\n\n### ScraperAPI\n\n1. Set the client timeout to 70 seconds. The API retries for that long before it returns 500, and a request cancelled earlier is still charged\n2. Send the key as the `x-sapi-api_key` header to keep it out of URLs and logs\n3. Pass `max_cost` on each request, or call `/account/urlcost` first, because domain and anti-bot surcharges vary from 1 to 75 credits\n4. Use `output_format=markdown` or `text` to cut response size, and `autoparse=true` only on supported domains\n5. On 429 reduce concurrency to the plan limit (5 on Free, 20 on Hobby). The request is rejected, not queued\n\n## Questions\n\n### Which is better for AI agents, Scrape.do or ScraperAPI?\n\nScraperAPI scores 52.1 (D) on agent readiness against Scrape.do's 43.7 (E), and leads in every scored category.\n\n### Do Scrape.do and ScraperAPI need an API key?\n\nBoth need an API key.\n\n### Can an agent call Scrape.do and ScraperAPI without installing anything?\n\nYes. Scrape.do has a hosted endpoint at https://api.scrape.do/ and ScraperAPI at https://api.scraperapi.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/scrape-do-vs-scraperapi.json, and with the fewest tokens: https://www.anchorterminal.com/compare/scrape-do-vs-scraperapi.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"scrape-do\", \"b\": \"scraperapi\"}`. From a terminal: `anchor compare scrape-do scraperapi`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/scrape-do.json and https://www.anchorterminal.com/api/v1/tools/scraperapi.json\n\n## Other comparisons with Scrape.do or ScraperAPI\n\n- [Apify MCP Server vs Scrape.do](https://www.anchorterminal.com/compare/apify-mcp-vs-scrape-do.md)\n- [Bright Data vs Scrape.do](https://www.anchorterminal.com/compare/bright-data-vs-scrape-do.md)\n- [Bright Data vs ScraperAPI](https://www.anchorterminal.com/compare/bright-data-vs-scraperapi.md)\n- [Diffbot vs Scrape.do](https://www.anchorterminal.com/compare/diffbot-vs-scrape-do.md)\n- [Jina Reader vs Scrape.do](https://www.anchorterminal.com/compare/jina-reader-vs-scrape-do.md)\n- [Jina Reader vs ScraperAPI](https://www.anchorterminal.com/compare/jina-reader-vs-scraperapi.md)\n- [Olostep vs Scrape.do](https://www.anchorterminal.com/compare/olostep-vs-scrape-do.md)\n- [Olostep vs ScraperAPI](https://www.anchorterminal.com/compare/olostep-vs-scraperapi.md)\n- [Oxylabs Web Scraper API vs Scrape.do](https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-scrape-do.md)\n- [Oxylabs Web Scraper API vs ScraperAPI](https://www.anchorterminal.com/compare/oxylabs-web-scraper-vs-scraperapi.md)\n- [Scrape.do vs ScrapeGraphAI](https://www.anchorterminal.com/compare/scrape-do-vs-scrapegraphai.md)\n- [Scrape.do vs Scrapeless](https://www.anchorterminal.com/compare/scrape-do-vs-scrapeless.md)\n- [Scrape.do vs Scrapfly](https://www.anchorterminal.com/compare/scrape-do-vs-scrapfly.md)\n- [Scrape.do vs ScrapingAnt](https://www.anchorterminal.com/compare/scrape-do-vs-scrapingant.md)\n- [Scrape.do vs ScrapingBee](https://www.anchorterminal.com/compare/scrape-do-vs-scrapingbee.md)\n- [Scrape.do vs Scrapingdog](https://www.anchorterminal.com/compare/scrape-do-vs-scrapingdog.md)\n- [Scrape.do vs Spider](https://www.anchorterminal.com/compare/scrape-do-vs-spider-cloud.md)\n- [Scrape.do vs ZenRows](https://www.anchorterminal.com/compare/scrape-do-vs-zenrows.md)\n- [Scrape.do vs Zyte API](https://www.anchorterminal.com/compare/scrape-do-vs-zyte.md)\n- [ScrapeGraphAI vs ScraperAPI](https://www.anchorterminal.com/compare/scrapegraphai-vs-scraperapi.md)\n- [Scrapeless vs ScraperAPI](https://www.anchorterminal.com/compare/scrapeless-vs-scraperapi.md)\n- [ScraperAPI vs Scrapfly](https://www.anchorterminal.com/compare/scraperapi-vs-scrapfly.md)\n- [ScraperAPI vs ScrapingAnt](https://www.anchorterminal.com/compare/scraperapi-vs-scrapingant.md)\n- [ScraperAPI vs ScrapingBee](https://www.anchorterminal.com/compare/scraperapi-vs-scrapingbee.md)\n- [ScraperAPI vs Scrapingdog](https://www.anchorterminal.com/compare/scraperapi-vs-scrapingdog.md)\n- [ScraperAPI vs Spider](https://www.anchorterminal.com/compare/scraperapi-vs-spider-cloud.md)\n- [ScraperAPI vs ZenRows](https://www.anchorterminal.com/compare/scraperapi-vs-zenrows.md)\n- [ScraperAPI vs Zyte API](https://www.anchorterminal.com/compare/scraperapi-vs-zyte.md)\n- [Diffbot vs ScraperAPI](https://www.anchorterminal.com/compare/diffbot-vs-scraperapi.md)\n- [Firecrawl MCP vs ScraperAPI](https://www.anchorterminal.com/compare/firecrawl-mcp-vs-scraperapi.md)\n- [Firecrawl MCP vs Scrape.do](https://www.anchorterminal.com/compare/firecrawl-mcp-vs-scrape-do.md)\n- [Apify MCP Server vs ScraperAPI](https://www.anchorterminal.com/compare/apify-mcp-vs-scraperapi.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-10",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Scrape.do vs ScraperAPI",
        "url": ""
      }
    ],
    "description": "ScraperAPI scores 52.1 (D) to Scrape.do's 43.7 (E) for scraping. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Scrape.do E 43.7",
      "ScraperAPI D 52.1",
      "scores"
    ],
    "h1": "Scrape.do vs ScraperAPI",
    "image": "https://www.anchorterminal.com/assets/og/compare-scrape-do-vs-scraperapi.png",
    "path": "/compare/scrape-do-vs-scraperapi",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Scrape.do vs ScraperAPI for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/scrape-do-vs-scraperapi"
  },
  "tokens": {
    "markdown": 2450,
    "slim": 680
  },
  "version": 1
}
