Skip to main content
Limits keep browser jobs predictable. Some limits are source-defined and public. Others can vary by account or deployment.

Public limits to design around

Use the limits reference for exact current values that are documented publicly.

Account-specific limits

Concurrency, rate limits, retention windows, and cost controls may depend on your account or deployment. Your application should handle 429, 413, timeout, and resource-limit errors explicitly.

Cost controls

Public source does not define a universal billing-control API in these docs. Treat cost as an application concern:
  • Set browser maxDuration for job-scoped browsers.
  • Set agent maxTurns, maxToolCalls, timeoutMs, and toolTimeoutMs.
  • Cap downloads, uploads, observations, and returned data.
  • Close browsers when a job is complete.
  • Log usage metadata when web.agent() returns it.

Cleanup checklist

  • Close browsers created for one job.
  • Store only the artifact IDs and summaries your app needs.
  • Avoid logging signed Debug UI or CDP URLs.
  • Put file size caps on download reads and saves.
  • Use policy to constrain uploads and downloads.
Reference: observability, SDK resources reference, proxy reference, environment variables, and limits.