How Cloudflare Built a Browser With No Chromium Inside
Kitesurf's rendering stack skips Chromium entirely. It uses Blitz (a modular Rust rendering engine) and Stylo (Firefox's Rust-based CSS parser) for HTML and CSS, and Boa JS (a Rust ECMAScript engine) for JavaScript - all three compiled to WebAssembly and run inside Cloudflare's existing V8 isolate sandboxes on Workers [1]. That is a different bet than the industry default of shipping a stripped-down Chromium process per session: rather than trim an existing human-facing browser, Cloudflare rebuilt the rendering path from scratch in a systems language built for embedding. The payoff shows up in Cloudflare's own benchmark: Kitesurf passes more than 215,000 Web Platform Tests, the standardized compliance suite browser engines are graded against, with hundreds more passing added every week [1]. It uses roughly 3 to 4 times less CPU and 4.7 to 7 times less memory than Chromium on the two tasks agents actually run most - taking a screenshot and pulling structured HTML - because it never spins up a full browser process, paints at 60 frames per second, or holds state for a human's eyes [2]. The tradeoff is wall-clock speed: on a warm instance pool, Chromium's mature JIT compiler still finishes a single request about 1.7 to 1.8 times faster than Kitesurf's newer, colder rendering path [2]. For a company that bills compute by the CPU-millisecond rather than the second, that is a deliberate bet that resource efficiency at scale beats raw latency per request.



