Skip to content
CrawlfolioSourced research on web data for AI
Menu

Pricing

Cloudflare Browser Rendering Pricing, Now Called Browser Run

Cloudflare Browser Rendering is now Browser Run. Sessions bill hours plus averaged concurrency, on top of Workers. Examples: $5 to $154.10 a month.

Concrete steps rise between geometric walls and an overhead architectural bridge
Photo: wang binghua / Unsplash · Unsplash License

I would budget Cloudflare Browser Run as browser time plus a session-concurrency component, then add Workers and any inference/storage costs. For the three hypothetical paid-session workloads below, the documented subtotals are $5, $18.60 and $154.10 when starting a $5 Workers Paid subscription.

If you already pay that Workers base, the incremental example subtotals are $0, $13.60 and $149.10 before other usage. Quick Actions omit the session-concurrency charge; the 50-hour Quick Action example is therefore $8.60 with a new base, not the session example’s $18.60. Browser pricing, Workers pricing, checked 11 November 2026.

Short on time?

Here's my take

Small distributed use
Check Free by day first
One monthly hour may fit Free only when every day stays within its daily allowance and limits.
Browser Sessions
Include daily-peak averages
The 50-hour session example totals $18.60 with a new base because concurrency adds $10.
Quick Actions
Price the selected path
The same 50 hours omits session concurrency, while other Worker/model costs remain separate.

Prices verified . USD documented-rate arithmetic checked 11 November 2026. These are hypothetical usage cases, not invoices or measured capacity.

What do Free and Paid include? #

Input Free Paid documented scope
Browser time 10 minutes/day 10 hours/month, then $0.09/hour
Browser concurrency/start limit 3 concurrent; one new browser/20 seconds Default limit 200 concurrent; 3 starts/second
Quick Actions request rate (REST API) One request/10 seconds 30 requests/second
Included billable session concurrency Do not infer a paid allowance 10 monthly-average daily-peak browsers; $2/additional averaged browser
Browser-hour rounding Do not turn daily allowance into a monthly pool Monthly total rounds to nearest whole hour
Workers subscription Check selected platform/account $5 base if starting Workers Paid; other usage separate
Model extraction Check chosen path Workers AI/BYO model charges can be additional

Sources: Browser pricing, current limits, Workers and JSON endpoint, checked 11 November 2026. Concurrency and start limits apply to Browser Sessions (Workers binding or CDP); request-rate limits apply to Quick Actions. Capacity limits are not included billable slots or proof that a workload succeeds.

Cloudflare Browser Run pricing table separating browser time and session concurrency
Quick Actions and Browser Sessions share browser-hour billing, while sessions add the averaged-concurrency component. The Workers base and other usage remain separate. Screenshot: Cloudflare Browser Run billing documentation, 13 Oct 2026 · Screenshot of a public page (commentary/review)

How do you calculate a sessions bill? #

I would keep monthly time and averaged daily peaks in separate columns. The documented session estimate is $5 + $0.09 × max(round(monthly hours) − 10, 0) + $2 × max(average daily peak − 10, 0) when a new Workers Paid base is required. Browser pricing, Workers base.

The examples use integer averaged peaks because fractional-concurrency rounding was not established. Taxes, other Worker requests/resources, AI/BYO inference, recording storage and integration work are outside the subtotal.

Hypothetical paid-session case Browser time charge Session concurrency charge New Workers base Subtotal / incremental if base already paid
1 monthly hour; daily peak 1 $0 $0 $5 $5 / $0
50 hours; average daily peak 15 $3.60 $10 $5 $18.60 / $13.60
1,000 hours; average daily peak 40 $89.10 $60 $5 $154.10 / $149.10

This is usage arithmetic, not a task-per-hour estimate, a production-capacity recommendation or a whole-account invoice.

What does one hour a month cost? #

The paid example has no browser-time or concurrency overage, so its subtotal is the new $5 Workers base. If that base is already paid, the incremental subtotal in this deliberately narrow example is zero. Pricing.

Free may fit instead only when every day’s use is at most ten minutes and its concurrency/start limits fit. One hour concentrated on one day is not the same as six ten-minute days; I would not turn the Free daily allowance into a monthly pooled entitlement. Free limits.

No Free-account hard-cutoff behavior was exercised here. My recommendation is to verify the selected limits and budget before relying on a free scenario. For how this daily allowance compares with scraping-API free tiers, see free web scraping APIs compared.

What about 50 hours at a peak of 15? #

At 50 browser hours, time overage is (50 − 10) × $0.09 = $3.60. If daily peaks are ten for the first 15 days and 20 for the next 15 in a hypothetical 30-day month, the average peak is 15; five above the included ten adds $10. With a new base, the subtotal is $18.60. Pricing method.

I would preserve the daily-peak history in the forecast rather than use one screenshot of active concurrency. The same browser-hour total can have a different concurrency component if the peaks differ.

And at 1,000 hours with a peak of 40? #

The time charge is (1,000 − 10) × $0.09 = $89.10, and the concurrency component is (40 − 10) × $2 = $60. Add the new $5 base for $154.10, or omit an already-paid base for a $149.10 incremental subtotal. Browser pricing, Workers pricing.

This row does not establish that a specific task can use that capacity, or that model/storage/Worker traffic costs are negligible. I would inspect workload limits and output before making a purchase decision.

Are Quick Actions cheaper than sessions? #

For the same hours, yes: Quick Actions omit the session-concurrency term. At 50 hours, the browser component is $3.60 and a new Workers base brings the narrow subtotal to $8.60. Other usage still belongs in the bill. Pricing, Quick Actions.

Monthly total time rounds to the nearest whole hour: a remainder of 1,800 seconds or more rounds up and 1,799 or less rounds down, so 10.49 hours bills as ten and 10.5 as 11. That is monthly rounding, not a charge invented for each request.

Quick Action timers differ from browser lifetime. Navigation defaults to 30 seconds with a 60-second maximum, and action time can reach five minutes; the documented timeout-failure billing exclusion concerns Quick Actions waitForTimeout, not every failed operation. Timeout reference, pricing.

What about crawling and AI extraction? #

Cloudflare’s render:false crawl fetches without JS and is unbilled during beta, then Worker-priced. Rendered crawl uses browser billing, and JSON extraction adds Workers AI/BYO model usage. I would preserve those conditions instead of advertise every crawl or structured output as free. Crawl, JSON, AI pricing.

The crawl honors robots/content signals, can serve cached resources within maxAge, and can return disallowed, skipped or errored records. I would handle those separately from a successful fresh capture and check output/source evidence before accepting the task. Robots reference, request headers, crawl docs.

For the capability choice, check whether the source needs a browser at all before paying for rendering. The hosting/usage decision is separate from whether a response supplied the correct data.

Cloudflare Free-plan limits showing browser time, concurrent sessions and start pacing
The visible Free limits are daily and paced. They are separate from Paid allowances and do not establish a monthly pooled entitlement or tested task capacity. Screenshot: Cloudflare current browser and session limits, 13 Oct 2026 · Screenshot of a public page (commentary/review)

How long do sessions stay open? #

Browser Sessions default to 60 seconds of inactivity timeout, extendable to 20 minutes with keep_alive; the limits page lists no fixed maximum while a session stays active. I would close sessions the application owns and inspect close reasons rather than assume disconnect or a finished interaction ends every session. Limits, CDP keep_alive, close reasons.

Guardrails constrain HTTP/HTTPS hostnames with documented entry/domain-set limits, fixed for the session lifetime. They do not apply to Quick Actions, and omitted policy is unrestricted; I would not transfer a session restriction to every endpoint. Guardrails.

Recordings are opt-in rrweb JSON events rather than video and cannot be enabled on reconnect. Reuse, Live View and human intervention can leave state/sessions open, so I would include retention and lifecycle handling in the forecast. Recordings, reuse, human intervention.

Browser Run or Browser Rendering? #

Browser Run is the current name; the rename post is dated 15 April 2026. Some token-permission and SDK labels still use Browser Rendering wording, and current limit docs take priority over older blog capacity figures. Rename, FAQ, CDP permission, current limits, changelog.

The documented Chrome DevTools/CDP integration differs from the Playwright fork archived on 12 October 2026, with conflicting doc/release labels. I would review the current CDP path as a proposed connection, not supply a tested archive recipe. CDP, MCP clients, fork docs, archive, releases.

WebMCP is another separate page/tool relationship. I do not infer a security boundary or universal client compatibility from that capability. WebMCP.

What should you budget for? #

My recommendation is to approve browser time, session concurrency, existing/new Worker base and the separate model/storage/Worker usage as explicit lines. Choose Quick Actions when that documented capability is adequate; choose sessions when the required state/interaction justifies their extra component. If you are moving here from Browserbase, my Browserbase alternatives guide sets Cloudflare beside the other options.

Use Bright Data Browser API pricing for a bandwidth model and Browserbase pricing for another time-plus-proxy plan. Self-hosted versus managed browsers, Browserless alternatives and browser MCP choices address the related operating and connection decisions; the agent browser hub connects the routes.

Cloudflare’s terms describe conditions for benchmark disclosure, including reproducibility information and reciprocal rights. This article includes no browser benchmark. I would inspect the applicable terms before designing a reproducible permitted study. Terms.

FAQ #

Does the free plan include ten hours a month? #

No. Free lists ten minutes per day, while Paid has ten included hours monthly. Inspect the applicable daily limits and chosen account. Pricing.

Are failed sessions always free? #

I would not make that claim. The documented Quick Actions timeout exclusion has a specific scope, and this article did not measure failures or debits. Pricing.

Is static crawl always free? #

Its unbilled treatment is a documented beta condition, not an unrestricted permanent promise. Crawl docs.

Should I use the archived Playwright MCP fork? #

No. I distinguish the archive from current CDP documentation and performed no connection. CDP clients, archive.

Sources

25 sources, accessed .

Official pricing, docs, changelogs and status pages 23

  1. developers.cloudflare.com: browser run/pricing developers.cloudflare.com · accessed
  2. developers.cloudflare.com: browser run/limits developers.cloudflare.com · accessed
  3. developers.cloudflare.com: workers/platform/pricing developers.cloudflare.com · accessed
  4. developers.cloudflare.com: browser run/cdp developers.cloudflare.com · accessed
  5. developers.cloudflare.com: browser run/cdp/mcp clients developers.cloudflare.com · accessed
  6. developers.cloudflare.com: browser run/playwright/playwright mcp developers.cloudflare.com · accessed
  7. developers.cloudflare.com: browser run/features/guardrails developers.cloudflare.com · accessed
  8. developers.cloudflare.com: browser run/features/reuse sessions developers.cloudflare.com · accessed
  9. developers.cloudflare.com: browser run/features/session recording developers.cloudflare.com · accessed
  10. developers.cloudflare.com: browser run/features/human in the loop developers.cloudflare.com · accessed
  11. developers.cloudflare.com: browser run/features/webmcp developers.cloudflare.com · accessed
  12. developers.cloudflare.com: browser run/reference/browser close reasons developers.cloudflare.com · accessed
  13. developers.cloudflare.com: browser run/reference/robots txt developers.cloudflare.com · accessed
  14. developers.cloudflare.com: browser run/reference/timeouts developers.cloudflare.com · accessed
  15. developers.cloudflare.com: browser run/faq developers.cloudflare.com · accessed
  16. developers.cloudflare.com: browser run/quick actions developers.cloudflare.com · accessed
  17. developers.cloudflare.com: browser run/quick actions/crawl endpoint developers.cloudflare.com · accessed
  18. developers.cloudflare.com: browser run/quick actions/json endpoint developers.cloudflare.com · accessed
  19. developers.cloudflare.com: browser run/reference/automatic request headers developers.cloudflare.com · accessed
  20. developers.cloudflare.com: changelog/product/browser run developers.cloudflare.com · accessed
  21. developers.cloudflare.com: changelog/post/2026 04 15 br rename developers.cloudflare.com · accessed
  22. cloudflare.com: terms cloudflare.com · accessed
  23. developers.cloudflare.com: workers ai/platform/pricing developers.cloudflare.com · accessed

GitHub code, issues and releases 2

  1. github.com: cloudflare/playwright mcp github.com · accessed
  2. github.com: cloudflare/playwright mcp/releases github.com · accessed

Last updated: 13 October 2026. Researched and drafted with AI tools; human editorial review and publication approval are pending.