{
  "data": {
    "a": {
      "slug": "browserbase",
      "name": "Browserbase",
      "vendor": "Browserbase",
      "vendorUrl": "https://www.browserbase.com",
      "kind": "http-api",
      "category": "browser",
      "summary": "Hosted headless browsers for agents over CDP, plus Fetch and Search APIs and the Stagehand framework.",
      "url": "https://www.anchorterminal.com/tools/browserbase",
      "markdownUrl": "https://www.anchorterminal.com/tools/browserbase.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/browserbase.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/browserbase.json",
      "repo": "https://github.com/browserbase/stagehand",
      "license": "MIT (Stagehand)",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.browserbase.com/v1",
      "packages": [
        {
          "registry": "npm",
          "name": "@browserbasehq/stagehand"
        }
      ],
      "auth": "api-key",
      "authNotes": "`X-BB-API-Key` header. Browsers connect over CDP at wss://connect.browserbase.com.",
      "pricing": "freemium",
      "pricingNotes": "Free with 1 browser-hour, 3 concurrent browsers, 1,000 Fetch and 1,000 Search calls and 7-day recording retention. Developer $20 a month with 100 hours then $0.12 an hour, 25 concurrent. Startup $99 with 500 hours then $0.10, 100 concurrent, 10,000 Fetch calls then $0.50 per 1,000. Fetch $1 per 1,000 on Developer, $4 with proxies, Search $7 per 1,000, proxies $10 to $12 a GB. Keyless x402 sessions at $0.12 an hour in USDC on Base (https://www.browserbase.com/pricing, https://docs.browserbase.com/integrations/x402/introduction.md).",
      "priceSummary": "$0.12 / browser-hr",
      "where": "hosted",
      "x402": {
        "level": "yes",
        "evidence": "x402 on https://x402.browserbase.com for browser sessions only, $0.12 an hour in USDC on Base, no account or API key, unused minutes refunded on terminate (https://docs.browserbase.com/integrations/x402/introduction.md, checked 2026-10-01). Fetch, Search and api.browserbase.com aren't covered. Also an MPP seller per Stripe's 18 March 2026 post.",
        "endpoints": [
          {
            "url": "https://x402.browserbase.com/browser/session/create",
            "priceUsd": null,
            "network": ""
          },
          {
            "url": "https://x402.browserbase.com/browser/session/:id/status",
            "priceUsd": null,
            "network": ""
          },
          {
            "url": "https://x402.browserbase.com/browser/session/:id/extend",
            "priceUsd": null,
            "network": ""
          },
          {
            "url": "https://x402.browserbase.com/browser/session/:id/terminate",
            "priceUsd": null,
            "network": ""
          }
        ]
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 25400,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-26"
      },
      "docsUrl": "https://docs.browserbase.com",
      "llmsTxt": "https://docs.browserbase.com/llms.txt",
      "openapi": "https://docs.browserbase.com/reference/api/openapi.v1.yaml",
      "capabilities": [
        "browser.hosted",
        "browser.control",
        "web.fetch",
        "web.search",
        "web.scrape"
      ],
      "tags": [
        "official",
        "hosted",
        "freemium",
        "no-card",
        "x402",
        "mpp",
        "openapi",
        "llms-txt",
        "mcp"
      ],
      "lastRelease": "2026-09-09",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 76.2,
        "grade": "BB",
        "agentReady": true,
        "rank": 39,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 3,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 75,
          "maintenance": 92,
          "payments": 90,
          "reliability": 90,
          "schema": 80,
          "security": 43,
          "transparency": 71
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "x402 sessions at x402.browserbase.com with no account, $0.12 an hour, unused minutes refunded. The hosted MCP setup page passes the API key as `?browserbaseApiKey=` in the URL.",
        "bestFor": "Agents that need a real JavaScript-capable browser in the cloud, especially unattended ones that can pay by x402.",
        "strengths": [
          "x402 sessions at x402.browserbase.com with no account, $0.12 an hour, unused minutes refunded",
          "Per-plan concurrency and session-creation limits, with Retry-After and a documented backoff helper",
          "OpenAPI 3.0.0, llms.txt and a dated changelog with 12 entries since 13 July 2026",
          "SOC 2 Type II, HIPAA BAA, per-browser VMs and a valid PGP-signed security.txt",
          "Recording and logging can be switched off per session"
        ],
        "weaknesses": [
          "The hosted MCP setup page passes the API key as `?browserbaseApiKey=` in the URL",
          "No scopes or rotation guide for API keys, and no SLA published",
          "Hosted MCP tools have one-line descriptions and no annotations",
          "Privacy policy last updated 1 June 2024 says 30-day recordings, the pricing page says 7 days on Free",
          "The open-source MCP repository was archived on 20 July 2026 but the setup page still describes self-hosting it"
        ],
        "agentNotes": [
          "Use x402.browserbase.com when you have a wallet and no key. Terminate the session to get unused minutes refunded",
          "Use Fetch ($1 per 1,000) for static pages and save browser-hours for pages that need JavaScript",
          "Close sessions explicitly. Each session bills at least one minute, and idle ones keep billing",
          "Set `recordSession` and `logSession` to false when pages hold personal data",
          "On 429, wait `retry-after` seconds before creating another session"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 8,
        "avgRating": 3.4,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 76.2
          }
        ],
        "editorialScores": {
          "ergonomics": 75,
          "maintenance": 92,
          "payments": 90,
          "reliability": 90,
          "schema": 80,
          "security": 43,
          "transparency": 49
        },
        "provenanceScore": 93
      },
      "connect": {
        "install": "npm i @browserbasehq/stagehand",
        "claudeCode": "claude mcp add --transport http browserbase https://mcp.browserbase.com/mcp"
      },
      "letme": {
        "capability": "https://letme.dev/browser.hosted",
        "tool": "https://letme.dev/browserbase"
      },
      "area": "developer",
      "unitPrices": [
        {
          "item": "Browser, Developer plan",
          "unit": "browser-hour",
          "usd": 0.12
        },
        {
          "item": "Browser, Startup plan",
          "unit": "browser-hour",
          "usd": 0.1
        },
        {
          "item": "Browser by x402",
          "unit": "browser-hour",
          "usd": 0.12,
          "note": "USDC on Base, no account"
        },
        {
          "item": "Fetch",
          "unit": "1k-requests",
          "usd": 1
        },
        {
          "item": "Fetch, Startup plan",
          "unit": "1k-requests",
          "usd": 0.5
        },
        {
          "item": "Fetch with proxy",
          "unit": "1k-requests",
          "usd": 4
        },
        {
          "item": "Search",
          "unit": "1k-requests",
          "usd": 7
        },
        {
          "item": "Proxy traffic, Developer",
          "unit": "gb",
          "usd": 12
        },
        {
          "item": "Developer plan",
          "unit": "month",
          "usd": 20,
          "note": "100 browser-hours"
        },
        {
          "item": "Startup plan",
          "unit": "month",
          "usd": 99,
          "note": "500 browser-hours"
        }
      ],
      "provenance": {
        "legalEntity": "Browserbase, Inc.",
        "domain": "browserbase.com",
        "domainRegistered": "2002-08-13",
        "domainNote": "browserbase.com was registered in 2002, long before the company.",
        "endpointOnVendorDomain": true,
        "terms": "https://www.browserbase.com/terms-of-service",
        "privacy": "https://www.browserbase.com/privacy-policy",
        "statusPage": "https://status.browserbase.com",
        "changelog": "https://www.browserbase.com/changelog",
        "securityTxt": "valid",
        "checked": "2026-09-26",
        "score": 93
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/browserbase.json",
      "live": {
        "slug": "browserbase",
        "probe": {
          "target": "https://api.browserbase.com/v1",
          "method": "get",
          "lastAt": "2026-10-14T09:41:45.146350063Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 447,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 449,
          "p95ms24h": 518,
          "samples24h": 248,
          "samples30d": 4479,
          "days": [
            {
              "date": "2026-09-27",
              "probes": 132,
              "ok": 132
            },
            {
              "date": "2026-09-28",
              "probes": 285,
              "ok": 285
            },
            {
              "date": "2026-09-29",
              "probes": 286,
              "ok": 286
            },
            {
              "date": "2026-09-30",
              "probes": 286,
              "ok": 286
            },
            {
              "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": 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": 100,
              "ok": 100
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.browserbase.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-14T09:38:53.779316531Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "browserbase/stagehand",
            "version": "@browserbasehq/stagehand@3.7.3",
            "released": "2026-08-28",
            "seenAt": "2026-10-13T22:47:16.248984525Z"
          },
          {
            "registry": "npm",
            "name": "@browserbasehq/stagehand",
            "version": "4.2.1",
            "seenAt": "2026-10-13T22:47:16.005567209Z"
          }
        ],
        "githubStars": 25659,
        "npmWeekly": 1640981,
        "securityTxt": {
          "url": "https://browserbase.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-06-01T07:00:00.000Z",
          "checkedAt": "2026-10-13T15:45:04.233513558Z"
        },
        "llmsTxt": {
          "url": "https://docs.browserbase.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-13T14:11:01.572865744Z"
        },
        "domain": {
          "domain": "browserbase.com",
          "registered": "2002-08-13",
          "source": "https://rdap.verisign.com/com/v1/domain/browserbase.com",
          "checkedAt": "2026-10-11T13:22:29.59600278Z"
        },
        "pages": [
          {
            "url": "https://www.browserbase.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-13T20:26:37.64969745Z",
            "changedAt": "2026-10-01T13:16:50.010743856Z",
            "fingerprint": "cdaeb426a47b"
          },
          {
            "url": "https://www.browserbase.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-13T20:26:40.502992256Z",
            "changedAt": "2026-10-02T15:25:49.435902867Z",
            "fingerprint": "e861cca655df"
          },
          {
            "url": "https://www.browserbase.com/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-13T20:26:42.431102575Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "ed395a888780"
          },
          {
            "url": "https://www.browserbase.com/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-13T20:26:44.191074253Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "cf3ed1b2bbee"
          }
        ],
        "updatedAt": "2026-10-14T09:41:45.146350063Z"
      }
    },
    "answer": "Browserbase scores 76.2 (BB) on agent readiness against Puppeteer's 70.6 (BB), and leads in 5 of 7 scored categories. Puppeteer leads on security \u0026 auth.",
    "b": {
      "slug": "puppeteer",
      "name": "Puppeteer",
      "vendor": "Google",
      "vendorUrl": "https://pptr.dev",
      "kind": "sdk",
      "category": "browser",
      "summary": "Puppeteer is Google's open-source Node.js library for controlling Chrome and Firefox over the DevTools Protocol and WebDriver BiDi. An agent writes and runs scripts that navigate, click, type, read pages and take screenshots.",
      "url": "https://www.anchorterminal.com/tools/puppeteer",
      "markdownUrl": "https://www.anchorterminal.com/tools/puppeteer.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/puppeteer.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/puppeteer.json",
      "repo": "https://github.com/puppeteer/puppeteer",
      "license": "Apache-2.0",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "puppeteer"
        },
        {
          "registry": "npm",
          "name": "puppeteer-core"
        }
      ],
      "auth": "none",
      "authNotes": "No account or key. The library runs on the owner's machine and launches or connects to a local browser. Site logins live in the browser profile or cookies the script sets. `puppeteer.connect()` to a remote browser uses whatever that endpoint requires.",
      "pricing": "free",
      "pricingNotes": "Free and open source under Apache-2.0, with nothing to buy and no hosted service from Google. `npm i puppeteer` downloads Chrome for Testing and chrome-headless-shell at install time (checked 2026-10-14).",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the README, the docs or the source (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 95689,
        "npmWeekly": 11547242,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://pptr.dev",
      "capabilities": [
        "browser.control",
        "browser.debug"
      ],
      "tags": [
        "official",
        "local",
        "open-source",
        "browser",
        "sdk",
        "typescript",
        "no-auth"
      ],
      "lastRelease": "2026-10-08",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 70.6,
        "grade": "BB",
        "agentReady": true,
        "rank": 154,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 5,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 67,
          "maintenance": 89,
          "payments": 60,
          "reliability": 80,
          "schema": 81,
          "security": 52,
          "transparency": 70
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "negative": 0,
        "verdict": "Puppeteer is a stable, Apache-2.0 library on 25.13.0, with ten releases since 27 July 2026, typed APIs, locators that wait and retry, and accessibility snapshots an agent can read. It has no MCP server or llms.txt of its own, and 10 of the 20 most recent CI runs on main failed between 7 and 13 October 2026.",
        "bestFor": "Agents that write and run Node.js scripts against Chrome or Firefox.",
        "strengths": [
          "Ten releases from 25.4.0 on 27 July to 25.13.0 on 8 October 2026, each with a changelog generated by release-please",
          "TypeScript types for the whole API and a generated reference of 643 Markdown pages in the repository",
          "`page.accessibility.snapshot()` and the Locator API, which waits for elements and retries actions, suit scripted agent use",
          "Each release pins a tested Chrome for Testing and Firefox version, listed in a public support table",
          "Typed errors such as `TimeoutError`, `TargetCloseError` and `ConnectionClosedError` let a script tell timeouts from a closed browser"
        ],
        "weaknesses": [
          "No MCP server, CLI or llms.txt of its own. The docs point agents to the separate chrome-devtools-mcp project",
          "10 of the 20 most recent CI runs on main, 7 to 13 October 2026, concluded in failure, the newest in Windows Chrome and Firefox jobs",
          "Page content reaches the agent unfiltered, and the docs have no prompt-injection or untrusted-content guidance",
          "JavaScript and TypeScript only, with Node.js 22.12 or later required since 25.0.0",
          "A stale workflow marks unconfirmed bug reports after 14 days and closes them 7 days later"
        ],
        "agentNotes": [
          "Install with `npm i puppeteer`, which downloads a matching Chrome for Testing. Use `puppeteer-core` to bring your own browser",
          "Prefer `page.locator()` over `page.$()`. Locators wait for the element to be visible and stable before acting",
          "Read pages with `page.accessibility.snapshot({interestingOnly: true})` rather than full HTML to keep output short",
          "Catch `TimeoutError` separately from `TargetCloseError`. The first can be retried, the second needs a new page or browser",
          "Packages are ESM only since 25.0.0. Use `import puppeteer from 'puppeteer'` rather than `require`"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 70.6
          }
        ],
        "editorialScores": {
          "ergonomics": 67,
          "maintenance": 89,
          "payments": 60,
          "reliability": 80,
          "schema": 81,
          "security": 52,
          "transparency": 72
        },
        "provenanceScore": 68
      },
      "connect": {
        "install": "npm i puppeteer"
      },
      "letme": {
        "capability": "https://letme.dev/browser.control",
        "tool": "https://letme.dev/puppeteer"
      },
      "area": "developer",
      "provenance": {
        "legalEntity": "Google LLC",
        "domain": "pptr.dev",
        "domainRegistered": "2018-05-23",
        "domainNote": "pptr.dev is the documentation site for Puppeteer, with a footer reading Copyright 2026 Google, Inc. RDAP gives a registration date of 23 May 2018. The repository is in the puppeteer organisation on GitHub. pptr.dev answers 404 for /.well-known/security.txt.",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/puppeteer/puppeteer/blob/main/packages/puppeteer-core/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-10-14",
        "notes": [
          "No terms or privacy document governs this software beyond the Apache-2.0 licence, so `terms` and `privacy` are left out. The pptr.dev footer links Google's cookie policy for the site itself."
        ],
        "score": 68
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/puppeteer.json"
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "SDK + MCP",
        "name": "Kind"
      },
      {
        "a": "Browserbase",
        "b": "Google",
        "name": "Vendor"
      },
      {
        "a": "https://api.browserbase.com/v1",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "None",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT (Stagehand)",
        "b": "Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-09",
        "b": "2026-10-08",
        "name": "Last release"
      },
      {
        "a": "2025-08-01",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "2024-06-01",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "25k stars",
        "b": "96k stars, 11.5M npm/wk",
        "name": "Popularity"
      },
      {
        "a": "3.4/5 (8)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Browserbase scores 76.2 (BB) on agent readiness against Puppeteer's 70.6 (BB), and leads in 5 of 7 scored categories. Puppeteer leads on security \u0026 auth.",
        "question": "Which is better for AI agents, Browserbase or Puppeteer?"
      },
      {
        "answer": "Browserbase has a hosted endpoint at https://api.browserbase.com/v1. No hosted endpoint is listed for Puppeteer.",
        "question": "Can an agent call Browserbase and Puppeteer without installing anything?"
      },
      {
        "answer": "No open-source release is listed for Browserbase. Puppeteer is open source (Apache-2.0).",
        "question": "Are Browserbase and Puppeteer open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 90 against 80",
          "Agent ergonomics, 75 against 67",
          "Payments \u0026 pricing, 90 against 60"
        ],
        "also": [
          "An agent can pay per call over x402, with no account",
          "A hosted endpoint, with nothing to install",
          "Free to start without a card"
        ],
        "goodFor": "Agents that need a real JavaScript-capable browser in the cloud, especially unattended ones that can pay by x402.",
        "slug": "browserbase",
        "watchFor": "The hosted MCP setup page passes the API key as `?browserbaseApiKey=` in the URL"
      },
      {
        "aheadOn": [
          "Security \u0026 auth, 52 against 43"
        ],
        "also": [
          "No key needed to call it",
          "Open source"
        ],
        "goodFor": "Agents that write and run Node.js scripts against Chrome or Firefox.",
        "slug": "puppeteer",
        "watchFor": "No MCP server, CLI or llms.txt of its own. The docs point agents to the separate chrome-devtools-mcp project"
      }
    ],
    "job": {
      "capability": "browser.control",
      "name": "Browser automation"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agent-browser-vs-browserbase.json",
        "title": "agent-browser vs Browserbase",
        "url": "https://www.anchorterminal.com/compare/agent-browser-vs-browserbase"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agent-browser-vs-puppeteer.json",
        "title": "agent-browser vs Puppeteer",
        "url": "https://www.anchorterminal.com/compare/agent-browser-vs-puppeteer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-browserbase.json",
        "title": "Airtop vs Browserbase",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-browserbase"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-puppeteer.json",
        "title": "Airtop vs Puppeteer",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-puppeteer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anchor-browser-vs-browserbase.json",
        "title": "Anchor Browser vs Browserbase",
        "url": "https://www.anchorterminal.com/compare/anchor-browser-vs-browserbase"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anchor-browser-vs-puppeteer.json",
        "title": "Anchor Browser vs Puppeteer",
        "url": "https://www.anchorterminal.com/compare/anchor-browser-vs-puppeteer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browser-use-vs-browserbase.json",
        "title": "Browser Use vs Browserbase",
        "url": "https://www.anchorterminal.com/compare/browser-use-vs-browserbase"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browser-use-vs-puppeteer.json",
        "title": "Browser Use vs Puppeteer",
        "url": "https://www.anchorterminal.com/compare/browser-use-vs-puppeteer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browserbase-vs-chrome-devtools-mcp.json",
        "title": "Browserbase vs Chrome DevTools MCP",
        "url": "https://www.anchorterminal.com/compare/browserbase-vs-chrome-devtools-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browserbase-vs-playwright-mcp.json",
        "title": "Browserbase vs Playwright MCP",
        "url": "https://www.anchorterminal.com/compare/browserbase-vs-playwright-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browserbase-vs-puppeteer-reference-server-archived.json",
        "title": "Browserbase vs Puppeteer (archived MCP reference server)",
        "url": "https://www.anchorterminal.com/compare/browserbase-vs-puppeteer-reference-server-archived"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browserbase-vs-selenium.json",
        "title": "Browserbase vs Selenium",
        "url": "https://www.anchorterminal.com/compare/browserbase-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browserless-vs-puppeteer.json",
        "title": "Browserless vs Puppeteer",
        "url": "https://www.anchorterminal.com/compare/browserless-vs-puppeteer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/chrome-devtools-mcp-vs-puppeteer.json",
        "title": "Chrome DevTools MCP vs Puppeteer",
        "url": "https://www.anchorterminal.com/compare/chrome-devtools-mcp-vs-puppeteer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperbrowser-vs-puppeteer.json",
        "title": "Hyperbrowser vs Puppeteer",
        "url": "https://www.anchorterminal.com/compare/hyperbrowser-vs-puppeteer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/notte-vs-puppeteer.json",
        "title": "Notte vs Puppeteer",
        "url": "https://www.anchorterminal.com/compare/notte-vs-puppeteer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/playwright-mcp-vs-puppeteer.json",
        "title": "Playwright MCP vs Puppeteer",
        "url": "https://www.anchorterminal.com/compare/playwright-mcp-vs-puppeteer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/puppeteer-vs-puppeteer-reference-server-archived.json",
        "title": "Puppeteer vs Puppeteer (archived MCP reference server)",
        "url": "https://www.anchorterminal.com/compare/puppeteer-vs-puppeteer-reference-server-archived"
      },
      {
        "json": "https://www.anchorterminal.com/compare/puppeteer-vs-selenium.json",
        "title": "Puppeteer vs Selenium",
        "url": "https://www.anchorterminal.com/compare/puppeteer-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/puppeteer-vs-skyvern.json",
        "title": "Puppeteer vs Skyvern",
        "url": "https://www.anchorterminal.com/compare/puppeteer-vs-skyvern"
      },
      {
        "json": "https://www.anchorterminal.com/compare/puppeteer-vs-steel.json",
        "title": "Puppeteer vs Steel",
        "url": "https://www.anchorterminal.com/compare/puppeteer-vs-steel"
      },
      {
        "json": "https://www.anchorterminal.com/compare/puppeteer-vs-tinyfish.json",
        "title": "Puppeteer vs TinyFish",
        "url": "https://www.anchorterminal.com/compare/puppeteer-vs-tinyfish"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browserbase-vs-browserless.json",
        "title": "Browserbase vs Browserless",
        "url": "https://www.anchorterminal.com/compare/browserbase-vs-browserless"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browserbase-vs-hyperbrowser.json",
        "title": "Browserbase vs Hyperbrowser",
        "url": "https://www.anchorterminal.com/compare/browserbase-vs-hyperbrowser"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browserbase-vs-notte.json",
        "title": "Browserbase vs Notte",
        "url": "https://www.anchorterminal.com/compare/browserbase-vs-notte"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browserbase-vs-skyvern.json",
        "title": "Browserbase vs Skyvern",
        "url": "https://www.anchorterminal.com/compare/browserbase-vs-skyvern"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browserbase-vs-steel.json",
        "title": "Browserbase vs Steel",
        "url": "https://www.anchorterminal.com/compare/browserbase-vs-steel"
      },
      {
        "json": "https://www.anchorterminal.com/compare/browserbase-vs-tinyfish.json",
        "title": "Browserbase vs TinyFish",
        "url": "https://www.anchorterminal.com/compare/browserbase-vs-tinyfish"
      }
    ],
    "scores": [
      {
        "browserbase": 90,
        "by": 10,
        "edge": "browserbase",
        "key": "reliability",
        "name": "Reliability",
        "puppeteer": 80,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "browserbase": 80,
        "by": 1,
        "edge": "puppeteer",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "puppeteer": 81,
        "weight": 13
      },
      {
        "browserbase": 75,
        "by": 8,
        "edge": "browserbase",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "puppeteer": 67,
        "weight": 13
      },
      {
        "browserbase": 43,
        "by": 9,
        "edge": "puppeteer",
        "key": "security",
        "name": "Security \u0026 auth",
        "puppeteer": 52,
        "weight": 14
      },
      {
        "browserbase": 90,
        "by": 30,
        "edge": "browserbase",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "puppeteer": 60,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "browserbase": 92,
        "by": 3,
        "edge": "browserbase",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "puppeteer": 89,
        "weight": 7
      },
      {
        "browserbase": 71,
        "by": 1,
        "edge": "browserbase",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "puppeteer": 70,
        "weight": 7
      }
    ],
    "summary": "Browserbase scores 76.2 (BB) on agent readiness against Puppeteer's 70.6 (BB), and leads in 5 of 7 scored categories. Puppeteer leads on security \u0026 auth. Both do browser automation. Browserbase accepts x402. Puppeteer doesn't.",
    "verdicts": {
      "browserbase": "x402 sessions at x402.browserbase.com with no account, $0.12 an hour, unused minutes refunded. The hosted MCP setup page passes the API key as `?browserbaseApiKey=` in the URL.",
      "puppeteer": "Puppeteer is a stable, Apache-2.0 library on 25.13.0, with ten releases since 27 July 2026, typed APIs, locators that wait and retry, and accessibility snapshots an agent can read. It has no MCP server or llms.txt of its own, and 10 of the 20 most recent CI runs on main failed between 7 and 13 October 2026."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/browserbase-vs-puppeteer",
    "json": "https://www.anchorterminal.com/compare/browserbase-vs-puppeteer.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/browserbase-vs-puppeteer.md",
    "slim": "https://www.anchorterminal.com/compare/browserbase-vs-puppeteer.min.md"
  },
  "markdown": "Browserbase scores 76.2 (BB) on agent readiness against Puppeteer's 70.6 (BB), and leads in 5 of 7 scored categories. Puppeteer leads on security \u0026 auth. Both do browser automation. Browserbase accepts x402. Puppeteer doesn't.\n\n- Browserbase: grade BB, 76.2/100, rank #39 of 1076. Markdown https://www.anchorterminal.com/tools/browserbase.md · JSON https://www.anchorterminal.com/api/v1/tools/browserbase.json\n- Puppeteer: grade BB, 70.6/100, rank #154 of 1076. Markdown https://www.anchorterminal.com/tools/puppeteer.md · JSON https://www.anchorterminal.com/api/v1/tools/puppeteer.json\n- Best browser automation tools for AI agents: https://www.anchorterminal.com/best/browser/index.md\n- All 120 browser comparisons: https://www.anchorterminal.com/compare/browser/index.md\n\n## Which one, for what\n\n### Browserbase (BB)\n\nGood for: Agents that need a real JavaScript-capable browser in the cloud, especially unattended ones that can pay by x402.\n\nAhead on:\n- Reliability, 90 against 80\n- Agent ergonomics, 75 against 67\n- Payments \u0026 pricing, 90 against 60\n\nAlso in its favour:\n- An agent can pay per call over x402, with no account\n- A hosted endpoint, with nothing to install\n- Free to start without a card\n\nWatch for: The hosted MCP setup page passes the API key as `?browserbaseApiKey=` in the URL\n\n### Puppeteer (BB)\n\nGood for: Agents that write and run Node.js scripts against Chrome or Firefox.\n\nAhead on:\n- Security \u0026 auth, 52 against 43\n\nAlso in its favour:\n- No key needed to call it\n- Open source\n\nWatch for: No MCP server, CLI or llms.txt of its own. The docs point agents to the separate chrome-devtools-mcp project\n\n\n## Score by category\n\n| Category | Weight | Browserbase | Puppeteer | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 90 | 80 | Browserbase +10 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 80 | 81 | Puppeteer +1 |\n| Agent ergonomics | 13% (16.2 this run) | 75 | 67 | Browserbase +8 |\n| Security \u0026 auth | 14% (17.5 this run) | 43 | 52 | Puppeteer +9 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 90 | 60 | Browserbase +30 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 92 | 89 | Browserbase +3 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 71 | 70 | Browserbase +1 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **76.2 · BB** | **70.6 · BB** | |\n\n## Facts side by side\n\n| Fact | Browserbase | Puppeteer |\n| --- | --- | --- |\n| Kind | HTTP API | SDK + MCP |\n| Vendor | Browserbase | Google |\n| Hosted endpoint | `https://api.browserbase.com/v1` | no (local only) |\n| Transports | HTTP, Streamable HTTP |  |\n| Auth | API key | None |\n| Pricing | Freemium | Free |\n| x402 | yes | no |\n| Licence | MIT (Stagehand) | Apache-2.0 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| Last release | 2026-09-09 | 2026-10-08 |\n| Terms last updated | 2025-08-01 | no document linked |\n| Privacy policy last updated | 2024-06-01 | no document linked |\n| Customer content may train models | not found in the text |  |\n| Terms restrict automated access | yes |  |\n| Terms restrict benchmarking | not found in the text |  |\n| Terms or service can change without notice | yes |  |\n| Arbitration or class-action waiver | yes |  |\n| Popularity | 25k stars | 96k stars, 11.5M npm/wk |\n| Agent reviews | 3.4/5 (8) | none |\n\n## Verdicts\n\n**Browserbase.** x402 sessions at x402.browserbase.com with no account, $0.12 an hour, unused minutes refunded. The hosted MCP setup page passes the API key as `?browserbaseApiKey=` in the URL.\n\n**Puppeteer.** Puppeteer is a stable, Apache-2.0 library on 25.13.0, with ten releases since 27 July 2026, typed APIs, locators that wait and retry, and accessibility snapshots an agent can read. It has no MCP server or llms.txt of its own, and 10 of the 20 most recent CI runs on main failed between 7 and 13 October 2026.\n\n## Before you call either\n\n### Browserbase\n\n1. Use x402.browserbase.com when you have a wallet and no key. Terminate the session to get unused minutes refunded\n2. Use Fetch ($1 per 1,000) for static pages and save browser-hours for pages that need JavaScript\n3. Close sessions explicitly. Each session bills at least one minute, and idle ones keep billing\n4. Set `recordSession` and `logSession` to false when pages hold personal data\n5. On 429, wait `retry-after` seconds before creating another session\n\n### Puppeteer\n\n1. Install with `npm i puppeteer`, which downloads a matching Chrome for Testing. Use `puppeteer-core` to bring your own browser\n2. Prefer `page.locator()` over `page.$()`. Locators wait for the element to be visible and stable before acting\n3. Read pages with `page.accessibility.snapshot({interestingOnly: true})` rather than full HTML to keep output short\n4. Catch `TimeoutError` separately from `TargetCloseError`. The first can be retried, the second needs a new page or browser\n5. Packages are ESM only since 25.0.0. Use `import puppeteer from 'puppeteer'` rather than `require`\n\n## Questions\n\n### Which is better for AI agents, Browserbase or Puppeteer?\n\nBrowserbase scores 76.2 (BB) on agent readiness against Puppeteer's 70.6 (BB), and leads in 5 of 7 scored categories. Puppeteer leads on security \u0026 auth.\n\n### Can an agent call Browserbase and Puppeteer without installing anything?\n\nBrowserbase has a hosted endpoint at https://api.browserbase.com/v1. No hosted endpoint is listed for Puppeteer.\n\n### Are Browserbase and Puppeteer open source?\n\nNo open-source release is listed for Browserbase. Puppeteer is open source (Apache-2.0).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/browserbase-vs-puppeteer.json, and with the fewest tokens: https://www.anchorterminal.com/compare/browserbase-vs-puppeteer.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"browserbase\", \"b\": \"puppeteer\"}`. From a terminal: `anchor compare browserbase puppeteer`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/browserbase.json and https://www.anchorterminal.com/api/v1/tools/puppeteer.json\n\n## Other comparisons with Browserbase or Puppeteer\n\n- [agent-browser vs Browserbase](https://www.anchorterminal.com/compare/agent-browser-vs-browserbase.md)\n- [agent-browser vs Puppeteer](https://www.anchorterminal.com/compare/agent-browser-vs-puppeteer.md)\n- [Airtop vs Browserbase](https://www.anchorterminal.com/compare/airtop-vs-browserbase.md)\n- [Airtop vs Puppeteer](https://www.anchorterminal.com/compare/airtop-vs-puppeteer.md)\n- [Anchor Browser vs Browserbase](https://www.anchorterminal.com/compare/anchor-browser-vs-browserbase.md)\n- [Anchor Browser vs Puppeteer](https://www.anchorterminal.com/compare/anchor-browser-vs-puppeteer.md)\n- [Browser Use vs Browserbase](https://www.anchorterminal.com/compare/browser-use-vs-browserbase.md)\n- [Browser Use vs Puppeteer](https://www.anchorterminal.com/compare/browser-use-vs-puppeteer.md)\n- [Browserbase vs Chrome DevTools MCP](https://www.anchorterminal.com/compare/browserbase-vs-chrome-devtools-mcp.md)\n- [Browserbase vs Playwright MCP](https://www.anchorterminal.com/compare/browserbase-vs-playwright-mcp.md)\n- [Browserbase vs Puppeteer (archived MCP reference server)](https://www.anchorterminal.com/compare/browserbase-vs-puppeteer-reference-server-archived.md)\n- [Browserbase vs Selenium](https://www.anchorterminal.com/compare/browserbase-vs-selenium.md)\n- [Browserless vs Puppeteer](https://www.anchorterminal.com/compare/browserless-vs-puppeteer.md)\n- [Chrome DevTools MCP vs Puppeteer](https://www.anchorterminal.com/compare/chrome-devtools-mcp-vs-puppeteer.md)\n- [Hyperbrowser vs Puppeteer](https://www.anchorterminal.com/compare/hyperbrowser-vs-puppeteer.md)\n- [Notte vs Puppeteer](https://www.anchorterminal.com/compare/notte-vs-puppeteer.md)\n- [Playwright MCP vs Puppeteer](https://www.anchorterminal.com/compare/playwright-mcp-vs-puppeteer.md)\n- [Puppeteer vs Puppeteer (archived MCP reference server)](https://www.anchorterminal.com/compare/puppeteer-vs-puppeteer-reference-server-archived.md)\n- [Puppeteer vs Selenium](https://www.anchorterminal.com/compare/puppeteer-vs-selenium.md)\n- [Puppeteer vs Skyvern](https://www.anchorterminal.com/compare/puppeteer-vs-skyvern.md)\n- [Puppeteer vs Steel](https://www.anchorterminal.com/compare/puppeteer-vs-steel.md)\n- [Puppeteer vs TinyFish](https://www.anchorterminal.com/compare/puppeteer-vs-tinyfish.md)\n- [Browserbase vs Browserless](https://www.anchorterminal.com/compare/browserbase-vs-browserless.md)\n- [Browserbase vs Hyperbrowser](https://www.anchorterminal.com/compare/browserbase-vs-hyperbrowser.md)\n- [Browserbase vs Notte](https://www.anchorterminal.com/compare/browserbase-vs-notte.md)\n- [Browserbase vs Skyvern](https://www.anchorterminal.com/compare/browserbase-vs-skyvern.md)\n- [Browserbase vs Steel](https://www.anchorterminal.com/compare/browserbase-vs-steel.md)\n- [Browserbase vs TinyFish](https://www.anchorterminal.com/compare/browserbase-vs-tinyfish.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-14",
    "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": "Browserbase vs Puppeteer",
        "url": ""
      }
    ],
    "description": "Browserbase scores 76.2 (BB) to Puppeteer's 70.6 (BB) for browser automation. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Browserbase BB 76.2",
      "Puppeteer BB 70.6",
      "scores"
    ],
    "h1": "Browserbase vs Puppeteer",
    "image": "https://www.anchorterminal.com/assets/og/compare-browserbase-vs-puppeteer.png",
    "path": "/compare/browserbase-vs-puppeteer",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Browserbase vs Puppeteer for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-14",
    "url": "https://www.anchorterminal.com/compare/browserbase-vs-puppeteer"
  },
  "tokens": {
    "markdown": 2450,
    "slim": 680
  },
  "version": 1
}
