{
  "data": {
    "a": {
      "slug": "airtop",
      "name": "Airtop",
      "vendor": "Switchboard Visual Technologies, Inc. (dba Airtop)",
      "vendorUrl": "https://www.airtop.ai",
      "kind": "http-api",
      "category": "browser",
      "summary": "Airtop runs cloud browser sessions that an agent controls through a REST API, Node and Python SDKs, natural-language page calls, or Puppeteer, Playwright and Selenium connections. The same company sells Agent Builder, a no-code product for scheduled web agents.",
      "url": "https://www.anchorterminal.com/tools/airtop",
      "markdownUrl": "https://www.anchorterminal.com/tools/airtop.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/airtop.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/airtop.json",
      "repo": "https://github.com/airtop-ai/airtop-node-sdk",
      "license": "Proprietary cloud service under Airtop's terms of use. The Node and Python SDKs are MIT per npm and PyPI",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.airtop.ai/api",
      "packages": [
        {
          "registry": "npm",
          "name": "@airtop/sdk"
        },
        {
          "registry": "pypi",
          "name": "airtop"
        }
      ],
      "auth": "api-key",
      "authNotes": "Self-serve API key from the portal at portal.airtop.ai/api-keys after a browser signup, sent as `Authorization: Bearer` on https://api.airtop.ai/api/v1. Puppeteer and Playwright connect to the session's `cdpWsUrl`, and Selenium to its `chromedriverUrl`, with the same Bearer header, so the key stays out of URLs. A key works across its organisation, including saved profiles. No scopes, read-only keys, expiry or rotation were found in the reviewed documentation. The developers page mentions RBAC for enterprise access without detail.",
      "pricing": "freemium",
      "pricingNotes": "Free plan with 1,000 credits a month and 3 simultaneous sessions. Paid plans start at $29 a month (Starter, 30,000 credits), $189 (Professional, 225,000) and $558 (Enterprise, 775,000), each with larger credit options, and annual billing takes 10 per cent off. Credits pay for browser time (billed in 30-second increments), integrated proxy traffic and AI calls, but the credits charged per unit are not published. No one-off credit purchases, and unused credits do not carry over. The pricing page states a 10,000 one-time credit bonus on Free while the billing guide states 30,000. Whether signup needs a card is not stated (https://www.airtop.ai/pricing, https://www.airtop.ai/help/billing/billing, checked 2026-10-08).",
      "priceSummary": "$29 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, the OpenAPI document or the pricing page. An unauthenticated GET to https://api.airtop.ai/api/v1/sessions on 2026-10-08 returned 401, not 402.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 16,
        "npmWeekly": 15505,
        "pypiWeekly": 246,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.airtop.ai",
      "llmsTxt": "https://docs.airtop.ai/llms.txt",
      "openapi": "https://docs.airtop.ai/openapi.json",
      "capabilities": [
        "browser.control",
        "browser.hosted",
        "browser.debug",
        "web.scrape",
        "scraping.proxies",
        "scraping.anti-bot"
      ],
      "tags": [
        "official",
        "hosted",
        "freemium",
        "api-key",
        "openapi",
        "llms-txt",
        "typescript",
        "python",
        "proxies",
        "captcha",
        "status-page",
        "soc2"
      ],
      "lastRelease": "2026-07-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 55.3,
        "grade": "C",
        "agentReady": false,
        "rank": 700,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 15,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 65,
          "maintenance": 24,
          "payments": 25,
          "reliability": 69,
          "schema": 76,
          "security": 46,
          "transparency": 61
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "The cloud browser API has a public OpenAPI 3.1 document, Markdown docs, natural-language page calls with a per-call credit cap, and a status page with no incident in the last 90 days. Credit rates for browser time, proxy traffic and AI calls are not published, and the developer changelog's last entry is dated 3 September 2025.",
        "bestFor": "Agents that need a hosted browser with natural-language page calls, saved logins handed over by a person, and proxies and CAPTCHA solving in one service.",
        "strengths": [
          "OpenAPI 3.1 document with 39 operations, an llms.txt index and a Markdown twin of every docs page",
          "The API key travels as a Bearer header on REST, CDP and Selenium connections, not in the URL",
          "Every AI call returns `meta.usage.credits` and accepts `costThresholdCredits` and `timeThresholdSeconds` to cap spend and time",
          "status.airtop.ai shows no incident between 10 July and 8 October 2026, only 30 minutes of scheduled maintenance on 18 August",
          "A person can log in through an embedded Live View, and the saved profile keeps the agent signed in without it seeing the password"
        ],
        "weaknesses": [
          "No published rate for what a browser minute, a GB of proxy traffic or an AI call costs in credits",
          "The developer changelog's last entry is 3 September 2025, and the stable Python SDK dates from 23 April 2025",
          "No request rate limits, 429 handling or idempotency keys found in the reviewed documentation",
          "No scoped or read-only API keys documented, and no guidance on prompt injection from page content",
          "No security.txt, bug bounty, public DPA or subprocessor list found. The SOC 2 report is on request"
        ],
        "agentNotes": [
          "Terminate every session with `DELETE /v1/sessions/{id}`. Sessions bill in 30-second increments and idle ones last 10 minutes by default",
          "Set `costThresholdCredits` on AI calls and read `meta.usage.credits` afterwards. Credit rates are not published, so measure them",
          "Use `page-query` with `configuration.outputSchema` for structured output. `prompt-content` and `summarize-content` are deprecated",
          "When calling REST without the SDK, poll session status until `running` before creating a window. Only the SDK waits for you",
          "Airtop's integrated proxy cannot reach LinkedIn, ticketing sites and some banks and streaming services. Bring a custom proxy for those"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 55.3
          }
        ],
        "editorialScores": {
          "ergonomics": 65,
          "maintenance": 24,
          "payments": 25,
          "reliability": 69,
          "schema": 76,
          "security": 46,
          "transparency": 42
        },
        "provenanceScore": 80
      },
      "connect": {
        "install": "npm i -s @airtop/sdk",
        "http": "curl -X POST https://api.airtop.ai/api/v1/sessions -H \"Authorization: Bearer YOUR_AIRTOP_API_KEY\" -H \"Content-Type: application/json\" -d '{}'"
      },
      "letme": {
        "capability": "https://letme.dev/browser.control",
        "tool": "https://letme.dev/airtop"
      },
      "area": "developer",
      "unitPrices": [
        {
          "item": "Starter plan",
          "unit": "month",
          "usd": 29,
          "note": "30,000 credits, larger credit options cost more"
        },
        {
          "item": "Professional plan",
          "unit": "month",
          "usd": 189,
          "note": "225,000 credits, 30 simultaneous sessions"
        },
        {
          "item": "Enterprise plan",
          "unit": "month",
          "usd": 558,
          "note": "775,000 credits, 100 simultaneous sessions"
        }
      ],
      "provenance": {
        "legalEntity": "Switchboard Visual Technologies, Inc. (dba Airtop)",
        "domain": "airtop.ai",
        "domainRegistered": "2024-07-08",
        "endpointOnVendorDomain": true,
        "terms": "https://www.airtop.ai/tos",
        "privacy": "https://www.airtop.ai/privacy",
        "statusPage": "https://status.airtop.ai",
        "changelog": "https://docs.airtop.ai/changelog",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The Terms of Use (effective 28 July 2025) are a contract with Switchboard Visual Technologies, Inc dba Airtop, 3277 S. White Rd., PMB 14328, San Jose, CA 95148, under California law. They cover the website, products, services and applications, and no separate API or service agreement was found.",
          "The privacy policy was updated on 2 September 2025 and says the services are hosted in the United States.",
          "The API answers at api.airtop.ai, Live View at live.airtop.ai and the portal at portal.airtop.ai.",
          "www.airtop.ai/.well-known/security.txt and docs.airtop.ai/.well-known/security.txt both return 404.",
          "RDAP for airtop.ai gives a registration date of 2024-07-08.",
          "The status page runs on Instatus with one component, App. The trust centre at trust.airtop.ai is a Vanta page that needs JavaScript and was not read.",
          "There are two changelogs. docs.airtop.ai/changelog covers the browser API and ends on 3 September 2025. www.airtop.ai/help/changelog covers Agent Builder and has one entry, 5 August 2026."
        ],
        "score": 80
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/airtop.json",
      "live": {
        "slug": "airtop",
        "probe": {
          "target": "https://api.airtop.ai/api",
          "method": "get",
          "lastAt": "2026-10-14T09:59:35.677271789Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 334,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 295,
          "p95ms24h": 324,
          "samples24h": 248,
          "samples30d": 1412,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 70,
              "ok": 70
            },
            {
              "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": 103,
              "ok": 103
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.airtop.ai",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-14T08:52:40.183470124Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "airtop-ai/airtop-node-sdk",
            "version": "0.1.47",
            "released": "2025-11-06",
            "seenAt": "2026-10-13T22:41:24.862030973Z"
          },
          {
            "registry": "npm",
            "name": "@airtop/sdk",
            "version": "0.1.47",
            "seenAt": "2026-10-13T22:41:23.840373755Z"
          },
          {
            "registry": "pypi",
            "name": "airtop",
            "version": "0.0.49",
            "released": "2025-04-23",
            "seenAt": "2026-10-13T22:41:24.673858418Z"
          }
        ],
        "githubStars": 16,
        "npmWeekly": 12040,
        "pypiWeekly": 249,
        "securityTxt": {
          "url": "https://airtop.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-13T15:45:33.364461734Z"
        },
        "llmsTxt": {
          "url": "https://docs.airtop.ai/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-13T14:10:32.37984351Z"
        },
        "domain": {
          "domain": "airtop.ai",
          "registered": "2024-07-08",
          "source": "https://rdap.identitydigital.services/rdap/domain/airtop.ai",
          "checkedAt": "2026-10-11T13:15:08.553492882Z"
        },
        "pages": [
          {
            "url": "https://docs.airtop.ai/changelog",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-13T20:13:57.280844754Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c3630d9e2345"
          },
          {
            "url": "https://www.airtop.ai/pricing",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-10-13T20:25:39.932321496Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "38896fa721d2"
          },
          {
            "url": "https://www.airtop.ai/privacy",
            "kind": "privacy",
            "status": 304,
            "checkedAt": "2026-10-13T20:25:41.952458906Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "ee64836a6ed3"
          },
          {
            "url": "https://www.airtop.ai/tos",
            "kind": "terms",
            "status": 304,
            "checkedAt": "2026-10-13T20:25:44.102750992Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "d7cae0ea0d26"
          }
        ],
        "updatedAt": "2026-10-14T09:59:35.677271789Z"
      }
    },
    "answer": "Puppeteer scores 70.6 (BB) on agent readiness against Airtop's 55.3 (C), and leads in every scored category.",
    "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": "Switchboard Visual Technologies, Inc. (dba Airtop)",
        "b": "Google",
        "name": "Vendor"
      },
      {
        "a": "https://api.airtop.ai/api",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "None",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary cloud service under Airtop's terms of use. The Node and Python SDKs are MIT per npm and PyPI",
        "b": "Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-07-01",
        "b": "2026-10-08",
        "name": "Last release"
      },
      {
        "a": "2025-07-29",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "2025-09-02",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "16 stars, 16k npm/wk, 246 PyPI/wk",
        "b": "96k stars, 11.5M npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Puppeteer scores 70.6 (BB) on agent readiness against Airtop's 55.3 (C), and leads in every scored category.",
        "question": "Which is better for AI agents, Airtop or Puppeteer?"
      },
      {
        "answer": "Airtop has a hosted endpoint at https://api.airtop.ai/api. No hosted endpoint is listed for Puppeteer.",
        "question": "Can an agent call Airtop and Puppeteer without installing anything?"
      },
      {
        "answer": "No open-source release is listed for Airtop. Puppeteer is open source (Apache-2.0).",
        "question": "Are Airtop and Puppeteer open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": null,
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "Agents that need a hosted browser with natural-language page calls, saved logins handed over by a person, and proxies and CAPTCHA solving in one service.",
        "slug": "airtop",
        "watchFor": "No published rate for what a browser minute, a GB of proxy traffic or an AI call costs in credits"
      },
      {
        "aheadOn": [
          "Reliability, 80 against 69",
          "Schema \u0026 documentation, 81 against 76",
          "Security \u0026 auth, 52 against 46",
          "Payments \u0026 pricing, 60 against 25",
          "Maintenance \u0026 community, 89 against 24",
          "Transparency \u0026 trust, 70 against 61"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "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-airtop.json",
        "title": "agent-browser vs Airtop",
        "url": "https://www.anchorterminal.com/compare/agent-browser-vs-airtop"
      },
      {
        "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-anchor-browser.json",
        "title": "Airtop vs Anchor Browser",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-anchor-browser"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-browser-use.json",
        "title": "Airtop vs Browser Use",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-browser-use"
      },
      {
        "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-browserless.json",
        "title": "Airtop vs Browserless",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-browserless"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-chrome-devtools-mcp.json",
        "title": "Airtop vs Chrome DevTools MCP",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-chrome-devtools-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-hyperbrowser.json",
        "title": "Airtop vs Hyperbrowser",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-hyperbrowser"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-notte.json",
        "title": "Airtop vs Notte",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-notte"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-playwright-mcp.json",
        "title": "Airtop vs Playwright MCP",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-playwright-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-puppeteer-reference-server-archived.json",
        "title": "Airtop vs Puppeteer (archived MCP reference server)",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-puppeteer-reference-server-archived"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-selenium.json",
        "title": "Airtop vs Selenium",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-selenium"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-skyvern.json",
        "title": "Airtop vs Skyvern",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-skyvern"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-steel.json",
        "title": "Airtop vs Steel",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-steel"
      },
      {
        "json": "https://www.anchorterminal.com/compare/airtop-vs-tinyfish.json",
        "title": "Airtop vs TinyFish",
        "url": "https://www.anchorterminal.com/compare/airtop-vs-tinyfish"
      },
      {
        "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-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-puppeteer.json",
        "title": "Browserbase vs Puppeteer",
        "url": "https://www.anchorterminal.com/compare/browserbase-vs-puppeteer"
      },
      {
        "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"
      }
    ],
    "scores": [
      {
        "airtop": 69,
        "by": 11,
        "edge": "puppeteer",
        "key": "reliability",
        "name": "Reliability",
        "puppeteer": 80,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "airtop": 76,
        "by": 5,
        "edge": "puppeteer",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "puppeteer": 81,
        "weight": 13
      },
      {
        "airtop": 65,
        "by": 2,
        "edge": "puppeteer",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "puppeteer": 67,
        "weight": 13
      },
      {
        "airtop": 46,
        "by": 6,
        "edge": "puppeteer",
        "key": "security",
        "name": "Security \u0026 auth",
        "puppeteer": 52,
        "weight": 14
      },
      {
        "airtop": 25,
        "by": 35,
        "edge": "puppeteer",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "puppeteer": 60,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "airtop": 24,
        "by": 65,
        "edge": "puppeteer",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "puppeteer": 89,
        "weight": 7
      },
      {
        "airtop": 61,
        "by": 9,
        "edge": "puppeteer",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "puppeteer": 70,
        "weight": 7
      }
    ],
    "summary": "Puppeteer scores 70.6 (BB) on agent readiness against Airtop's 55.3 (C), and leads in every scored category. Both do browser automation.",
    "verdicts": {
      "airtop": "The cloud browser API has a public OpenAPI 3.1 document, Markdown docs, natural-language page calls with a per-call credit cap, and a status page with no incident in the last 90 days. Credit rates for browser time, proxy traffic and AI calls are not published, and the developer changelog's last entry is dated 3 September 2025.",
      "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/airtop-vs-puppeteer",
    "json": "https://www.anchorterminal.com/compare/airtop-vs-puppeteer.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/airtop-vs-puppeteer.md",
    "slim": "https://www.anchorterminal.com/compare/airtop-vs-puppeteer.min.md"
  },
  "markdown": "Puppeteer scores 70.6 (BB) on agent readiness against Airtop's 55.3 (C), and leads in every scored category. Both do browser automation.\n\n- Airtop: grade C, 55.3/100, rank #700 of 1076. Markdown https://www.anchorterminal.com/tools/airtop.md · JSON https://www.anchorterminal.com/api/v1/tools/airtop.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### Airtop (C)\n\nGood for: Agents that need a hosted browser with natural-language page calls, saved logins handed over by a person, and proxies and CAPTCHA solving in one service.\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: No published rate for what a browser minute, a GB of proxy traffic or an AI call costs in credits\n\n### Puppeteer (BB)\n\nGood for: Agents that write and run Node.js scripts against Chrome or Firefox.\n\nAhead on:\n- Reliability, 80 against 69\n- Schema \u0026 documentation, 81 against 76\n- Security \u0026 auth, 52 against 46\n- Payments \u0026 pricing, 60 against 25\n- Maintenance \u0026 community, 89 against 24\n- Transparency \u0026 trust, 70 against 61\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\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 | Airtop | Puppeteer | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 69 | 80 | Puppeteer +11 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 76 | 81 | Puppeteer +5 |\n| Agent ergonomics | 13% (16.2 this run) | 65 | 67 | Puppeteer +2 |\n| Security \u0026 auth | 14% (17.5 this run) | 46 | 52 | Puppeteer +6 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 25 | 60 | Puppeteer +35 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 24 | 89 | Puppeteer +65 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 61 | 70 | Puppeteer +9 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **55.3 · C** | **70.6 · BB** | |\n\n## Facts side by side\n\n| Fact | Airtop | Puppeteer |\n| --- | --- | --- |\n| Kind | HTTP API | SDK + MCP |\n| Vendor | Switchboard Visual Technologies, Inc. (dba Airtop) | Google |\n| Hosted endpoint | `https://api.airtop.ai/api` | no (local only) |\n| Transports | HTTP |  |\n| Auth | API key | None |\n| Pricing | Freemium | Free |\n| x402 | no | no |\n| Licence | Proprietary cloud service under Airtop's terms of use. The Node and Python SDKs are MIT per npm and PyPI | Apache-2.0 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| Last release | 2026-07-01 | 2026-10-08 |\n| Terms last updated | 2025-07-29 | no document linked |\n| Privacy policy last updated | 2025-09-02 | no document linked |\n| Customer content may train models | not found in the text |  |\n| Terms restrict automated access | not found in the text |  |\n| Terms restrict benchmarking | not found in the text |  |\n| Terms or service can change without notice | not found in the text |  |\n| Arbitration or class-action waiver | yes |  |\n| Popularity | 16 stars, 16k npm/wk, 246 PyPI/wk | 96k stars, 11.5M npm/wk |\n\n## Verdicts\n\n**Airtop.** The cloud browser API has a public OpenAPI 3.1 document, Markdown docs, natural-language page calls with a per-call credit cap, and a status page with no incident in the last 90 days. Credit rates for browser time, proxy traffic and AI calls are not published, and the developer changelog's last entry is dated 3 September 2025.\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### Airtop\n\n1. Terminate every session with `DELETE /v1/sessions/{id}`. Sessions bill in 30-second increments and idle ones last 10 minutes by default\n2. Set `costThresholdCredits` on AI calls and read `meta.usage.credits` afterwards. Credit rates are not published, so measure them\n3. Use `page-query` with `configuration.outputSchema` for structured output. `prompt-content` and `summarize-content` are deprecated\n4. When calling REST without the SDK, poll session status until `running` before creating a window. Only the SDK waits for you\n5. Airtop's integrated proxy cannot reach LinkedIn, ticketing sites and some banks and streaming services. Bring a custom proxy for those\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, Airtop or Puppeteer?\n\nPuppeteer scores 70.6 (BB) on agent readiness against Airtop's 55.3 (C), and leads in every scored category.\n\n### Can an agent call Airtop and Puppeteer without installing anything?\n\nAirtop has a hosted endpoint at https://api.airtop.ai/api. No hosted endpoint is listed for Puppeteer.\n\n### Are Airtop and Puppeteer open source?\n\nNo open-source release is listed for Airtop. Puppeteer is open source (Apache-2.0).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/airtop-vs-puppeteer.json, and with the fewest tokens: https://www.anchorterminal.com/compare/airtop-vs-puppeteer.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"airtop\", \"b\": \"puppeteer\"}`. From a terminal: `anchor compare airtop puppeteer`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/airtop.json and https://www.anchorterminal.com/api/v1/tools/puppeteer.json\n\n## Other comparisons with Airtop or Puppeteer\n\n- [agent-browser vs Airtop](https://www.anchorterminal.com/compare/agent-browser-vs-airtop.md)\n- [agent-browser vs Puppeteer](https://www.anchorterminal.com/compare/agent-browser-vs-puppeteer.md)\n- [Airtop vs Anchor Browser](https://www.anchorterminal.com/compare/airtop-vs-anchor-browser.md)\n- [Airtop vs Browser Use](https://www.anchorterminal.com/compare/airtop-vs-browser-use.md)\n- [Airtop vs Browserbase](https://www.anchorterminal.com/compare/airtop-vs-browserbase.md)\n- [Airtop vs Browserless](https://www.anchorterminal.com/compare/airtop-vs-browserless.md)\n- [Airtop vs Chrome DevTools MCP](https://www.anchorterminal.com/compare/airtop-vs-chrome-devtools-mcp.md)\n- [Airtop vs Hyperbrowser](https://www.anchorterminal.com/compare/airtop-vs-hyperbrowser.md)\n- [Airtop vs Notte](https://www.anchorterminal.com/compare/airtop-vs-notte.md)\n- [Airtop vs Playwright MCP](https://www.anchorterminal.com/compare/airtop-vs-playwright-mcp.md)\n- [Airtop vs Puppeteer (archived MCP reference server)](https://www.anchorterminal.com/compare/airtop-vs-puppeteer-reference-server-archived.md)\n- [Airtop vs Selenium](https://www.anchorterminal.com/compare/airtop-vs-selenium.md)\n- [Airtop vs Skyvern](https://www.anchorterminal.com/compare/airtop-vs-skyvern.md)\n- [Airtop vs Steel](https://www.anchorterminal.com/compare/airtop-vs-steel.md)\n- [Airtop vs TinyFish](https://www.anchorterminal.com/compare/airtop-vs-tinyfish.md)\n- [Anchor Browser vs Puppeteer](https://www.anchorterminal.com/compare/anchor-browser-vs-puppeteer.md)\n- [Browser Use vs Puppeteer](https://www.anchorterminal.com/compare/browser-use-vs-puppeteer.md)\n- [Browserbase vs Puppeteer](https://www.anchorterminal.com/compare/browserbase-vs-puppeteer.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",
  "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": "Airtop vs Puppeteer",
        "url": ""
      }
    ],
    "description": "Puppeteer scores 70.6 (BB) to Airtop's 55.3 (C) for browser automation. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Airtop C 55.3",
      "Puppeteer BB 70.6",
      "scores"
    ],
    "h1": "Airtop vs Puppeteer",
    "image": "https://www.anchorterminal.com/assets/og/compare-airtop-vs-puppeteer.png",
    "path": "/compare/airtop-vs-puppeteer",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Airtop vs Puppeteer for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-14",
    "url": "https://www.anchorterminal.com/compare/airtop-vs-puppeteer"
  },
  "tokens": {
    "markdown": 2500,
    "slim": 680
  },
  "version": 1
}
