cdpfleet Docs Sign up free

Compare / other services

cdpfleet vs Browserless

The longest-running headless-browser service against a browser fleet: 30-second "units" with 2–60-minute session caps and proxies by the megabyte, or threads metered per second with your own proxies and 24-hour sessions. Prices, limits and features side by side.

Browserless has sold hosted headless Chrome since 2017 and is the service most people mean by "browser as a service": a Puppeteer or Playwright endpoint with a token, plus BrowserQL (its own GraphQL automation language with stealth and captcha solving), REST APIs for content, screenshots and PDFs, a Smart Scrape API that escalates from a plain fetch to a browser, crawl, batch, map and search APIs, and a self-hostable image. This page also sets those APIs next to cdpfleet Functions, jobs and monitors. cdpfleet is a fleet of twelve real desktop browsers — Google Chrome, Microsoft Edge, Brave, Opera, Naver Whale, Yandex Browser, Chromium, Patchright, Rebrowser, Camoufox, Firefox and WebKit — launched with one HTTPS call and driven over the Playwright protocol from five languages, through proxies you bring. Both can hand you a Chromium over a WebSocket; the accounting, the session limits and what else is in the box differ a lot.

cdpfleetBrowserless
Browsers12 — Google Chrome, Microsoft Edge, Brave, Opera, Naver Whale, Yandex Browser, Chromium, Patchright, Rebrowser, Camoufox, Firefox, WebKit. Chrome with stable, beta and dev channels and pinned previous majors; Camoufox with pinned versions.Chromium, Chrome, Firefox, WebKit and Edge (Edge over Playwright only), and stealth routes; the pricing page lists Chrome, WebKit and Firefox. The cloud runs one current version of each (Chrome 156 when checked); pinning a version is for Private Deployment workers only.
How you connectPlaywright protocol: chromium/firefox/webkit.connect(wsUrl) with the matching Playwright client (1.60; 1.52 for Rebrowser) — Node.js, Python, Java, C# and Go. Or "cdp": true on the Chromium-based browsers for a cdpUrl: Puppeteer, connectOverCDP or any CDP client (CDP & Puppeteer).Puppeteer over CDP, Playwright over CDP, Playwright's native protocol per browser (/chromium/playwright, /firefox/playwright, /edge/playwright…), BrowserQL (GraphQL over HTTPS), the BAP SDK for TypeScript and Python (the docs' default for new work), and REST APIs (below).
Session lengthUp to 24 h per session (shared threads: also capped by your remaining daily minutes). Idle timeout 120 s by default, up to 10 min on shared threads and 24 h on dedicated.Hard caps per plan: 2 min (Free), 15 min (Prototyping), 30 min (Starter), 60 min (Scale).
MeteringPer second, as thread-seconds: headless browser = 1 thread, headful = 2."Units": a block of up to 30 seconds per browser connection — a 31-second session costs two units, and a reconnect is a new connection. Proxy traffic is also billed in units per MB, CAPTCHA solves 10 units each.
PlansFree Community plan: 2 threads, 60 browser-minutes per thread a day, 15-minute sessions, proxies included. Paid from $7.50/month (5 shared threads, 60–480 browser-minutes a day per thread); dedicated threads for 24/7 use at $8.50/thread/month. Pricing.Free: 1,000 units, 2 concurrent. Prototyping $25/month: 20,000 units, 10 concurrent, $0.0020/unit over. Starter $140/month: 180,000 units, 40 concurrent, $0.0017/unit. Scale $350/month: 500,000 units, 100 concurrent, $0.0015/unit. Enterprise custom. (Annual billing prices; paid monthly: Prototyping $35, Starter $200, Scale $500.)
One browser-hourShared: $0.02–$0.05 at full use; dedicated $0.01. A browser running 24/7 is one dedicated thread, $8.50/month.120 units: $0.18–$0.24 at the overage rates, about $0.21 at the Starter plan's included rate ($140 ÷ 1,500 h). A browser running 24/7 would need a new session every 15–60 minutes and ≈ 86,400 units/month ≈ $130–$173.
ConcurrencyThe threads you buy: 5 to 10,000 (more on request); each session takes 1–4 threads by type.2 (Free), 10 (Prototyping), 40 (Starter), 100 (Scale) on annual billing — 5, 30 and 80 paid monthly — with small burst allowances; more on Enterprise.
ProxiesBring your own HTTP, HTTPS or SOCKS5 proxies — single, pool, or per-host rules (proxy_rules) — swap a running session's proxy live, see traffic per destination host and per rule; traffic through them is free. Or the cdpfleet residential proxy: 4 tiers from $0.50 to $5/GB from one prepaid balance ($5 free credit), mixable per host — e.g. Tier 4 for CDN assets, Tier 1 for pages. A launch without a proxy uses the free Community proxy — best effort, no guarantees.Built-in residential (6 units per MB ≈ $0.009–0.012/MB, i.e. $9–12/GB) and datacenter (2 units per MB) proxies, city targeting on Scale; your own proxies via launch arguments use no proxy units — from Prototyping up by the pricing page, with no plan restriction in the docs.
StealthReal browsers by default (genuine Chrome, Edge, Brave…), headful by default, and three stealth builds — Patchright, Rebrowser, Camoufox — on every plan. See headless tells.Stealth routes for Puppeteer/Playwright and stealth-enabled BrowserQL sessions with human-like interactions; included on all Cloud plans, not in the open-source image.
Captcha solvingNot built in. Use any solver through Playwright.Built in on all Cloud plans (BrowserQL solve; verify is deprecated), 10 units per successful solve; not in the open-source image.
Watching a sessionLive view with human takeover — Watch / Take control in the dashboard, or a link from the API — and Launch interactive: open any browser on a start page straight into live view from the dashboard's code generator (start_url over the API). Session recordings as MP4 (480p free, 720p or 1080p on a plan), and JPEG frames to your code with page.screencast.Session replays and storage kept 1 day (Free) to 90 days (Scale), log search over 8 hours to 7 days; screen recording on paid plans; Hybrid Automations stream a page to a person to take over, on every plan; a debugger in the dashboard.
PersistencePersistent profiles keep cookies, local storage and IndexedDB between sessions (paid plans); Playwright storageState; keep_alive to reconnect to the same browser on dedicated threads.Reconnect to a session within the plan's session cap; the Session API keeps browser state across restarts for 1–90 days by plan. --user-data-dir needs an Enterprise licence (self-hosted or private deployment).
MobilePlaywright device emulation on Chromium-family and WebKit; hardware Android phones and iOS WebView in early access.Emulation through Puppeteer/Playwright.
Self-hostingNo — a managed fleet.Yes: the Docker image (SSPL-1.0, or a commercial licence for closed-source use); stealth routes and CAPTCHA solving need Cloud or an Enterprise licence, and /unblock, Smart Scrape, crawl, map and search are Cloud-only.
Where the browser runsServers in the EU (Germany and Finland); your proxy decides where traffic exits.Shared fleet in San Francisco, London and Amsterdam; private fleets by region, US East included.
Scraping in one callFunctions: screenshot, PDF, Markdown, scrape (HTML, Markdown, text, links, screenshot, XHR calls, cookies; wait_for, actions, extract by CSS selector), map, geo compare and a live tab — in a pooled browser, or in a browser and device of your choice on paid plans. Billed like a session (one thread while the call runs, one per country for geo compare); the Community proxy and your own proxies cost nothing extra. Free tools at /functions.REST APIs billed by time like a session — 1 unit per 30 seconds, rejected requests free: /content (rendered HTML), /scrape (JSON of the elements you select), /function and /download (your Puppeteer code), /export, /performance (Lighthouse) and /unblock (content, cookies, a screenshot or a browser endpoint; Cloud only), with waitForSelector, gotoOptions, bestAttempt and more. Smart Scrape escalates from a plain fetch to a proxy, a browser and CAPTCHA solving, and returns HTML, Markdown, text, links, a screenshot, a PDF, JSON or a summary, with up to 20 actions, a country and a cache of up to 48 hours; plain fetches and cache hits cost 0.5 units per 30 seconds, the AI formats 1 unit per 6,400 input and per 800 output tokens. A Zillow scraper at 10 units a call (beta).
Crawling and bulkJobs on paid plans: batch (any number of URLs), crawl and map, with no size or time limit — runs continue past the 24-hour session limit by themselves; results as JSON lines or a zip archive, kept 14 days; stop and resume; signed webhooks. Plus watch (live XHR/WebSocket/DOM events), warmup and monitors (scheduled change detection with diffs).Cloud-only APIs in beta: /crawl (async, 100 pages by default up to a plan limit, up to 20 levels deep, sitemaps, include/exclude paths, Markdown, HTML or text per page, webhooks; results kept 24 hours), /batch-scrape (25 URLs a job on Free, 100, 500 or 1,000 on paid plans, billed per 30 seconds of each page) and /map (up to 5,000 URLs). Change tracking is a Smart Scrape format — new, same, changed or removed against the last check, with a diff and 30 days of history, at no extra cost — but there is no scheduler: you call it on your own timetable.
Screenshots and PDFsScreenshot (PNG/JPEG, viewport or full page) and PDF Functions — a text PDF from a Chromium-based browser./screenshot: PNG, JPEG or WebP — viewport, full page, a clip or one element. /pdf from a URL or raw HTML with Chrome's print options (format, header and footer, backgrounds) and tagged PDFs. Billed by time: a call under 30 seconds is 1 unit. BrowserQL can take screenshots and PDFs too.
Search and site APIsNone — no search-engine or per-site APIs; a scrape or a session reads whatever page you point it at./search for web, news and images, optionally scraping the results — 3 (Free) to 20 (Scale) results a search, billed in units; the Zillow scraper (beta).
Agent toolingA hosted MCP server at cdpfleet.com/mcp — add it in Claude, ChatGPT or Gemini and sign in with OAuth — or npx cdpfleet-mcp; SDKs for Node.js, Python and Go.A hosted MCP server (mcp.browserless.io/mcp, OAuth or token; also on npm) with agent, smart-scrape, crawl, map, search, function and session tools; a managed /agent/run API (beta, Cloud only, units from model tokens); the BrowserQL IDE; a CLI.
Examples89 cases run on production in five languages, all on GitHub with their output.Docs with Puppeteer/Playwright/BrowserQL snippets; REST API recipes.

Browserless facts from its public pricing page and documentation, checked on 9 November 2026; list prices in USD. Tell us if something is out of date.

Which one, when

Pick Browserless if…

  • You want one API that escalates from a plain fetch to a browser with CAPTCHA solving, plus web search and change tracking, on the same unit balance as your browsers — and cheap short calls: a page in under 30 seconds is 1 unit.
  • You want captcha solving, stealth and residential proxies from one vendor, or BrowserQL's declarative scripts.
  • You need to self-host the same stack on your own servers.

Pick cdpfleet if…

  • You want crawls and batch jobs without a page cap or a 24-hour result window, and monitors that check a page on a schedule by themselves.
  • Your sessions run longer than an hour — logins kept warm, monitoring, queues — or around the clock on dedicated threads.
  • You need a specific real browser or version: Chrome beta/dev or a pinned major, Edge, Brave, Opera, Camoufox, a stealth build on every plan.
  • You already pay for proxies and want per-host routing, live swaps and traffic accounting instead of units per MB.
  • You want per-second metering and Playwright clients in Java, C# or Go as well as Node.js and Python.
  • You want to start free — the Community plan includes proxies — and try a browser in live view before writing any code.

Try it

The quickstart is one HTTPS call and five lines of Playwright; the code builder writes the launch for any browser and option set in your language.

Sources