Browserbase vs Kernel for browser agents.
Choose Browserbase for a bundled agent platform. Choose Kernel for more control surfaces and unbilled idle time. Both host Chromium sessions for AI agents.
Browserbase plans add agent runs, Search, and Fetch calls. Kernel documents six control surfaces and browser pools. Kernel stops usage charges once a browser goes idle.
Browserbase paid plans start at $20 a month. Kernel paid plans start at $30 plus usage. Browserbase Developer and Startup sessions run up to 6 hours. Its plans doc lists Scale at 6-plus hours. Test scraping only on approved targets.
The short version
Published performance claims need independent reproduction. Architecture facts still guide evaluation.
Choose where browser code executes.
Both vendors create managed Chromium sessions. Both expose standard browser connections. Their execution choices differ above that layer.
Browserbase supports external library connections. Its plans also include hosted agent runs and Functions. Kernel's default surface runs Playwright inside the browser VM.
Kernel also exposes OS-level controls. Kernel adds WebMCP and a browser REPL. Browserbase documents browser-oriented MCP tools. Each path changes latency and ownership.
Start with current application boundaries. Keep orchestration placement explicit. Avoid choosing from benchmark headlines alone.
SourcesUsing a browser sessionBrowserbase MCP setupBrowserbase pricingCreate a Kernel browserControl a Kernel browserKernel MCP server
Compare plans, idle billing, and session limits.
Browserbase sells plans with included browser hours. Developer costs $20 a month for 100 hours. Startup costs $99 for 500 hours. Overage runs $0.12 or $0.10 per hour.
Kernel charges a monthly fee plus per-second usage. Hobbyist costs $30 a month. Start-Up costs $200 a month. Included credits apply to usage only. Headful seconds cost eight times headless seconds.
Idle time separates the two billing models. Kernel enters standby after five idle seconds. Standby stops usage charges but keeps the concurrency slot. Browserbase keep-alive sessions bill until release or timeout.
Session ceilings differ in kind. Browserbase Developer and Startup sessions run up to 6 hours. Its plans doc lists Scale at 6-plus hours. Browserbase Free sessions stop at 15 minutes. Kernel's timeout governs idle deletion, up to 72 hours. Kernel's cited pages state no active-session ceiling.
| Factor | Monthly fee | Included usage | Concurrent browsers | Retention |
|---|---|---|---|---|
| Browserbase Free | $0 | 1 browser hour, 15-minute sessions | 3 | 7 days of data |
| Browserbase Developer | $20 | 100 browser hours | 25 | 30 days on the pricing page. 7 days in the plans doc. |
| Browserbase Startup | $99 | 500 browser hours | 100 | 30 days of data |
| Browserbase Scale | Custom | Usage-based | 250 or more | 30 days or more |
| Kernel Developer | $0 plus usage | $5 monthly usage credit | 5 | 1-day replays |
| Kernel Hobbyist | $30 plus usage | $10 monthly usage credit | 10 | 7-day replays |
| Kernel Start-Up | $200 plus usage | $50 monthly usage credit | 150 | 30-day replays |
| Kernel Enterprise | Custom | Custom | Custom | Custom replays |
Published plans, verified November 1, 2026. Overage and per-second rates appear in the text.
SourcesBrowserbase pricingBrowserbase plansKernel pricingKernel concurrency and limits
Map every available control path.
A browser endpoint is one choice. Code placement is another choice. Agent reasoning placement adds a third.
Browserbase returns connection details for libraries. Its MCP server provides browser-oriented tools. Hosted Functions add vendor-side execution.
Kernel lists six control surfaces. Playwright execution is its default. Computer controls drive mouse, keyboard, and screenshots. The rest are WebMCP, REPL, CDP, and WebDriver BiDi.
Browser control modes are not interchangeable. Each exposes different debugging evidence. Each creates different portability costs.
| Factor | Browserbase path | Kernel path | Architecture consequence |
|---|---|---|---|
| External Playwright | Connect Playwright over the session's returned CDP URL. | Connect Playwright over the returned CDP WebSocket URL. | Application infrastructure owns command execution and retries. |
| External Puppeteer | Puppeteer connects through the Browserbase session URL. | Puppeteer can drive Kernel through its CDP endpoint. | Most browser task code can remain application-side. |
| Vendor-side code | Functions run deployed code on Browserbase. | Playwright execution runs code inside the browser VM. | Code packaging and runtime ownership change materially. |
| Screen control | MCP actions abstract browser interaction through named tools. | Computer controls expose mouse, keyboard, scroll, and screenshots. | Vision loops need separate latency and evidence tests. |
| MCP | A hosted Streamable HTTP endpoint exposes browser tools. | A hosted MCP exposes browsers, profiles, apps, and replays. | Tool contracts determine how much orchestration moves outward. |
Documented control paths, verified November 1, 2026.
SourcesUsing a browser sessionControl a Kernel browserBrowserbase pricingBrowserbase MCP setupKernel MCP server
Trace one session across every boundary.
Session names hide different state machines. Browserbase separates connection, keep-alive, context, and closure. Kernel adds active and standby behavior.
Kernel standby preserves browser state temporarily. Billing stops during documented standby. Its timeout begins after standby starts.
Browserbase keep-alive supports reconnection after disconnection. Keep alive requires a paid plan. The session still follows configured duration limits. Contexts address later-session browser data.
Write each transition into application logs. Include vendor identifiers and timestamps. Treat missing transitions as failed evidence.
| Factor | Browserbase event | Kernel event | Application record | Failure question |
|---|---|---|---|---|
| Create | Create session and receive connection details. | Create browser and receive session plus control URLs. | requested_at, accepted_at, vendor_session_id | Did the vendor accept or fully provision? |
| Connect | Attach the selected automation library promptly. | Attach CDP, BiDi, Live View, or control requests. | transport_ready_at, first_command_at, control_mode | Which boundary produced connection delay? |
| Pause | Keep Alive preserves eligible sessions across disconnects. | Five inactive seconds begin documented standby behavior. | last_activity_at, detached_at, pause_reason | Was the browser idle, disconnected, or terminated? |
| Resume | Reconnect with the same connect URL. | Activity can resume before standby timeout deletion. | resume_requested_at, resumed_at, restored_url | Did memory state and page position survive? |
| Persist | Contexts save selected browser data across sessions. | With save_changes enabled, deletion or timeout saves profile state. | profile_id, writer_id, persisted_at, next_session_id | Did a concurrent writer overwrite newer state? |
| Terminate | Application closure or platform timeout ends the session. | Explicit deletion uses Kernel’s deletion API. Timeout can also delete. | close_requested_at, terminated_at, final_status | Did library closure release vendor resources? |
Pair-specific session lifecycle trace.
SourcesUsing a browser sessionCreate a Kernel browserControl a Kernel browserKeep aliveKernel termination and timeoutsKernel pricingContextsKernel profiles
Profile writes require explicit ownership.
Both vendors support reusable browser state. Browserbase calls its primitive a context. Kernel calls its primitive a profile.
Browserbase contexts preserve several Chromium data stores. Persistence must be requested on sessions. Synchronization follows session closure.
Kernel profiles need save_changes for writes. Deletion or timeout then saves state. A normal Playwright close does not save. Kernel can also save a running browser. Saving replaces the whole profile.
Profile write rules change application design. Assign one writer per identity. Add locks around mutable profile use.
| Factor | Browserbase context | Kernel profile | Required guardrail |
|---|---|---|---|
| Create | Create a context before attaching it to sessions. | Create a profile, optionally using a unique project-scoped name. | Store the vendor identifier beside the application identity. |
| Read-only use | Attach the existing context without requiring further persistence. | Omit save_changes when stored state must remain immutable. | Default recurring workers to immutable profile reads. |
| Mutable use | Set persistence when new session data should be stored. | Set save_changes and delete the browser afterward. | Acquire one application lock before starting a writer. |
| Reuse | Wait for context synchronization before another session. | Start another browser using the saved profile. | Verify expected cookies and current website authentication. |
Profile write and reuse matrix.
SourcesContextsKernel profiles
Reproduce startup and idle behavior.
Vendor benchmarks cannot settle your workload. Runner geography influences every network measurement. Browser mode changes resource requirements.
Use one pinned task and browser configuration. Run both vendors from one runner. Alternate vendors to reduce time drift.
Record raw timestamps, not summary claims. Keep failures inside the sample. Publish exclusions before running anything.
The idle phase matters separately. Kernel documents standby billing behavior. Browserbase documents browser-time allocations and rates.
- 01
Pin the environment
Record runner region, runtime versions, browser mode, and target.
- 02
Mark request acceptance
Timestamp immediately before creation and after its response.
- 03
Mark transport readiness
Connect, execute one harmless command, then record completion.
- 04
Mark page readiness
Navigate identically and capture the chosen readiness event.
- 05
Exercise an idle pause
Detach cleanly, wait identically, then resume the session.
- 06
Verify preserved state
Compare URL, cookies, storage, and visible page state.
- 07
Close through vendor APIs
Confirm termination, profile persistence, and final usage records.
SourcesUsing a browser sessionKeep aliveBrowserbase pricingCreate a Kernel browserControl a Kernel browserKernel termination and timeoutsKernel pricing
Require evidence for each failed transition.
Browserbase provides a session inspector. Its documented surface includes logs, network data, metrics, and replay. Live View supports human control.
Kernel provides Live View and optional replays. Kernel lists Live View and replays as headful features. It also documents structured telemetry. App deployments can provide invocation logs.
More artifacts do not guarantee faster diagnosis. Identifier linkage matters more. Retention and export needs also matter.
Create two deliberate failures. Break one selector and one connection. Measure the path to root cause.
| Factor | Browserbase | Kernel | Acceptance condition |
|---|---|---|---|
| Live review | Session Inspector and Live View show active browsers. | Headful browsers return a Live View URL. | An operator can observe without changing automation state. |
| Replay | Session replay supports completed-run inspection. | Replays create startable and stoppable MP4 recordings. | The artifact covers the induced failure window. |
| Machine-readable events | Inspector exposes logs, network activity, and performance data. | Telemetry streams console, network, lifecycle, and operational events. | Application traces link events using one session identifier. |
| Human intervention | Live View supports remote operator control. | Live View supports observation and human control. | Control transfer produces an auditable application event. |
Operational evidence acceptance matrix.
SourcesUsing a browser sessionCreate a Kernel browserObserve Kernel browsers
Separate startup speed from capacity strategy.
Kernel publishes browser pools for repeated workloads. Pools reserve ready browsers with predefined configuration. Reserved capacity counts against concurrency.
Browserbase publishes plan concurrency. Keep-alive can reduce repeated session creation. Those mechanisms solve related pressure differently.
A faster individual start may not improve queues. A pool may reduce configuration startup work. It also consumes reserved capacity.
Measure queue delay separately. Measure browser readiness separately. Price active runtime and capacity constraints separately.
Pool reuse needs an isolation decision. Released pool browsers keep cookies and tabs by default. Release with reuse false for per-user work. Pool profiles load read-only.
| Factor | Browserbase choice | Kernel choice | Workload signal |
|---|---|---|---|
| Occasional jobs | Create managed sessions when jobs arrive. | Create browsers on demand when jobs arrive. | Low request frequency limits pooling value. |
| Repeated configuration | Keep eligible sessions alive when reuse fits. | Pools hold ready browsers with applied configuration. | Startup configuration dominates simple navigation time. |
| Burst traffic | Plan concurrency governs bursts. | Pool size and organization concurrency govern bursts. | Queue delay exceeds browser action duration. |
| Long idle pause | Keep-alive sessions bill until release or timeout. | Standby preserves state while documented usage billing stops. | External approvals create long inactive periods. |
Capacity decision matrix.
SourcesUsing a browser sessionCreate a Kernel browserKeep aliveKernel browser poolsBrowserbase pricingKernel pricing
Test web scraping on approved targets.
Both vendors document browser configuration controls. Browserbase lists proxies and plan-dependent stealth settings. Kernel documents stealth and proxy settings for browser pools.
Configuration controls do not establish access reliability. Run identical tasks on sites that permit your work. Match browser configuration, geography, request pace, and login state.
Record completed pages, challenges, retries, and queue delay. Check session continuity and failure evidence. Compare cost per completed task, not vendor labels.
Migrate one control mode at once.
Direct CDP migration offers the narrowest trial. Keep current Playwright logic unchanged. Replace only creation and connection code.
Do not add co-located execution immediately. That would combine vendor and architecture changes. Baseline behavior would become ambiguous.
Next migrate persistent state. Use one profile writer. Confirm explicit deletion triggers the expected save.
Finally consider Kernel-specific control paths. Compare those paths against measured needs. Preserve a rollback adapter until acceptance.
- 01
Select one task
Choose a stable flow with meaningful browser state.
- 02
Build a connection adapter
Isolate session creation, connection, and vendor-specific deletion.
- 03
Run direct CDP first
Preserve task code and disable optional platform services.
- 04
Add profile persistence
Create one mutable profile and prevent concurrent writers.
- 05
Compare failure evidence
Induce known failures and time root-cause discovery.
- 06
Evaluate alternate controls
Test co-located Playwright or computer controls separately.
SourcesUsing a browser sessionContextsControl a Kernel browserKernel profilesKernel termination and timeouts
Legba covers a narrower agent job.
Legba publishes an agent skill, HTTP sessions, and hosted MCP. It provides routing and isolated browser sessions.
Legba's hosted browser supports a documented human handoff. A person takes control through a view link. The agent resumes afterward through session controls.
Remote CDP and Playwright attachment remain undocumented. These sources establish no platform equivalence. Some teams need infrastructure control planes. Others need a callable isolated route.
Choose from the actual job. Avoid buying unused platform breadth. Validate the required agent path.
FAQs.
Is Kernel faster than Browserbase?
Do both support Playwright?
How does idle behavior differ?
How do saved profiles differ?
Do both provide MCP servers?
Which is better for web scraping, Browserbase or Kernel?
What should migrate first?
How much do Browserbase and Kernel cost?
References
- 01Using a browser sessionBrowserbase
- 02ContextsBrowserbase
- 03Keep aliveBrowserbase
- 04Browserbase plansBrowserbase
- 05Browserbase MCP setupBrowserbase
- 06Browserbase pricingBrowserbase
- 07Create a Kernel browserKernel
- 08Control a Kernel browserKernel
- 09
- 10Kernel profilesKernel
- 11Observe Kernel browsersKernel
- 12Kernel browser poolsKernel
- 13Kernel pricingKernel
- 14
- 15Kernel MCP serverKernel
- 16