You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/content/docs/browser-rendering/faq.mdx
+7-1Lines changed: 7 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,7 +20,7 @@ To resolve: Pass your Browser binding into `puppeteer.launch`.
20
20
21
21
### Will Browser Rendering bypass Cloudflare's Bot Protection?
22
22
23
-
No, Browser Rendering requests are always identified as bots by Cloudflare and do not bypass Bot Protection.
23
+
No, Browser Rendering requests are always identified as bots by Cloudflare and do not bypass Bot Protection.
24
24
25
25
If you are attempting to scan your **own zone** and need Browser Rendering to access areas protected by Cloudflare’s Bot Protection, you can create a [WAF skip rule](/waf/custom-rules/skip/) to bypass the bot protection using a header or a custom user agent.
26
26
@@ -51,6 +51,12 @@ Returning an `HTMLElement` will not work.
51
51
52
52
:::
53
53
54
+
### What are the usage limits for Browser Rendering and how do I estimate my costs?
55
+
56
+
You can view the complete breakdown of concurrency caps, request rates, timeouts, and REST API quotas on the [limits page](/browser-rendering/platform/limits/).
57
+
58
+
You can monitor your Browser Rendering usage in the [Cloudflare dashboard](https://dash.cloudflare.com). Go to **Compute (Workers)** > **Browser Rendering**. Then, you can use [the pricing page](/browser-rendering/platform/pricing/) to estimate your costs.
59
+
54
60
### Does Browser Rendering rotate IP addresses for outbound requests?
55
61
56
62
No. Browser Rendering requests originate from Cloudflares global network, but you cannot configure per-request IP rotation. All rendering traffic comes from Cloudflare IP ranges and requests include special headers [(`cf-biso-request-id`, `cf-biso-devtools`)](/browser-rendering/reference/automatic-request-headers/) so origin servers can identify them.
@@ -23,6 +23,8 @@ To increase this limit, you’ll need to [upgrade to a Workers Paid plan](/worke
23
23
| Browser timeout | 60 seconds [^2]|
24
24
| Total requests per min (REST API only) | 6 per minute |
25
25
26
+
By default, a browser instance gets killed if it does not get any [devtools](https://chromedevtools.github.io/devtools-protocol/) command for 60 seconds, freeing one instance. Users can optionally increase this by using the `keep_alive`[option](/browser-rendering/platform/puppeteer/#keep-alive). `browser.close()` releases the browser instance.
| Concurrent browsers per account (Workers Bindings only) | 10 per account [^1]|
33
35
| New browser instances per minute (Workers Bindings only) | 10 per minute [^1]|
34
-
| Browser timeout | 60 seconds [^2][^1]|
35
-
| Total requests per min (REST API only) | 60 per minute |
36
+
| Browser timeout | 60 seconds [^2]|
37
+
| Total requests per min (REST API only) | 60 per minute [^1]|
36
38
37
39
[^1]: Contact our team to request increases to this limit.
38
40
39
-
[^2]: By default, a browser instance gets killed if it does not get any [devtools](https://chromedevtools.github.io/devtools-protocol/) command for 60 seconds, freeing one instance. Users can optionally increase this by using the `keep_alive`[option](/browser-rendering/platform/puppeteer/#keep-alive). `browser.close()` releases the browser instance.
41
+
By default, a browser instance gets killed if it does not get any [devtools](https://chromedevtools.github.io/devtools-protocol/) command for 60 seconds, freeing one instance. Users can optionally increase this by using the `keep_alive`[option](/browser-rendering/platform/puppeteer/#keep-alive). `browser.close()` releases the browser instance.
0 commit comments