Billing & Credits
Browserbeam bills every workload from a single monthly credit pool. This page is the canonical reference for every rate and how each session is computed.
1 credit / second
35 credits / MB
350 credits / MB
15 credits / 1K AI tokens
Sessions that don't touch proxies or AI selectors only burn runtime. Cached HTTP responses don't burn proxy bandwidth at all.
Estimate your spend on the homepage calculator, or audit your actual usage on the Usage page.
Credit rates
These rates apply to every plan. Higher tiers don't get a per-credit discount; you get a larger monthly pool instead.
Per service
| Service | Rate | Unit | Notes |
|---|---|---|---|
| Runtime | 1 |
credit / second | Wall-clock time between session create and close. |
| Datacenter proxy | 35 |
credits / MB | Rounded up per session. Default proxy kind. |
| Residential proxy | 350 |
credits / MB | Rounded up per session. Opt in with proxy: { kind: "residential" }. |
| AI selectors | 15 |
credits / 1K tokens | OpenAI prompt + completion tokens, rounded up per session. |
Per plan
| Plan | Credits / month | Concurrent sessions | Price |
|---|---|---|---|
| Starter | 500,000 |
5 | $29 / month |
| Pro | 2,000,000 |
50 | $99 / month |
| Scale | 10,000,000 |
100 | $299 / month |
How a session is billed
When a session closes, Browserbeam queues a finalizer job that computes a per-service breakdown, debits your balance, and writes a row to the credit ledger. The formula:
session_credits =
ceil(session_seconds) * 1 # runtime
+ ceil(proxy_dc_bytes / 1_048_576) * 35 # datacenter
+ ceil(proxy_residential_bytes / 1_048_576) * 350 # residential
+ ceil(ai_tokens / 1_000) * 15 # AI selectors
Each term is rounded up independently, so a 0.4 MB proxy hit costs 1 MB worth of credits and a 200-token AI call costs 1,000 tokens worth of credits. This keeps invoices predictable and prevents micro-billing dust from cluttering the ledger.
Runtime credits
Runtime is the wall-clock duration between POST /v1/sessions and the close call (or auto-timeout, whichever comes first). It includes time the browser sits idle waiting for your next instruction.
Keeping runtime low
- Always close sessions explicitly. Auto-close kicks in at
max_session_seconds, leaving idle runtime on your invoice. - Send all your steps in one
executecall when possible. Round-trip latency adds runtime even when the browser is idle. - Use
wait_forwith a tight timeout instead ofsleep.
Proxy credits
Proxy credits are charged on response bytes routed through the proxy, not requests. A 30 KB request that returns 1.2 MB of HTML costs 1.2 MB worth of credits, not 1.23.
Opting into residential
By default, Browserbeam uses datacenter proxies. Switch to residential per session:
POST /v1/sessions
{
"url": "https://example.com",
"proxy": { "kind": "residential", "country": "us" }
}
Setting "country": "auto" picks the country from the URL's TLD, useful for geo-restricted sites without hard-coding country lists.
Cached requests skip proxy billing
When the engine cache serves a request, no traffic goes out and no proxy credits are charged. See Cache discount for details.
AI selector credits
Any selector starting with ai >> calls OpenAI to find the right element on the page. Credits are charged on the actual token count returned by the OpenAI API, summed across prompt and completion.
POST /v1/sessions
{
"url": "https://example.com",
"steps": [
{ "extract": {
"title": "ai >> the article headline",
"author": "byline .author >> text"
}}
]
}
Resolution caching
The first time an AI selector resolves on a domain, the result is cached. Future sessions on the same domain hit the cache and burn zero AI credits. The cache is per-user, so your traffic doesn't pay for someone else's AI lookups.
Cache discount
Browserbeam keeps a shared HTTP asset cache in front of every session. When the same JS bundle, CSS file, or image is fetched twice within the cache window, the second fetch comes straight from cache. That means:
- Zero proxy credits for cached responses (we never call out).
- Faster sessions, which lowers runtime credits too.
Your Usage page shows the cache hit rate per range. Most workloads land between 30% and 60% hit rate within a billing period.
Reading your ledger
Every credit movement is logged in the ledger. Pull a CSV from Usage › Recent Activity › Export CSV for any time range:
| Column | Meaning |
|---|---|
kind | debit (a session closed and was billed), grant (monthly allotment), topup, or refund. |
amount | Credits added (grant/topup/refund) or removed (debit). |
balance_after | Your credit balance immediately after this entry posted. |
session_id | The Browserbeam session ID, if the entry was tied to a session. |
runtime / ai_tokens / proxy_dc / proxy_residential | Per-service split for debit entries. Sums to amount. |
Refunds, top-ups, and overages
If a session fails because of a Browserbeam-side bug, the credits debit is reversed automatically and a refund entry shows up on the ledger.
If you burn through your monthly allotment, sessions return 402 insufficient_credits rather than charging overage rates. We'd rather have you switch to a higher plan or top up than surprise you with an invoice. One-shot top-ups are coming soon; for now, email hello@browserbeam.com and we'll grant credits within a few hours.
FAQ
Why credits instead of just charging per second?
Runtime is one of three things that cost real money on our side. Bandwidth from residential proxies and AI tokens for AI selectors both cost orders of magnitude more than a second of idle browser time. A unified credit pool keeps the math honest: you pay proportionally for what you actually consume, not a flat rate that subsidizes one service with another.
Do unused credits roll over?
No. Credits reset at the start of every billing period. We sized the plan tiers so the average workload fits inside the monthly pool with headroom; if yours doesn't, the dashboard alerts you at 50%, 80%, and 100% utilization so you can decide before you hit the wall.
Can I cap a session's credit spend?
Use max_session_seconds to cap runtime. Proxy and AI spend cap implicitly via your plan's max_session_seconds and your remaining credit balance.
How do I estimate my monthly spend?
Use the calculator on the homepage. It uses the same rates listed on this page.
Still have questions?
Send us an email and we usually respond within a few hours.
Email hello@browserbeam.com