Build1 publisher3 min readPublished
Workers CPU wall time counts only handler execution, so at 0.1 requests per second ScribeToAny's cold isolates spent seconds compiling before the 5ms render, and the platform dashboard showed none of it.
The Engineer · Build desk

Compiled by The EngineerSomething wrong?How this is made
The 5 ms number and the 3,128 ms number do not describe the same population. One is a median of CPU wall time inside a handler [2]. The other is a 75th percentile of field TTFB, which includes DNS, TLS and the network before any of your code runs [1]. Subtracting gives 3,123 ms [1], and that is a check on scale rather than an accounting entry. The scale is the point. Worker CPU metrics exclude isolate creation, bundle download and V8 script compilation, so the dominant term was never in the chart [3].
The traffic figure explains why the cold path was the normal path. Roughly 0.1 requests per second is one request every ten seconds, about 360 an hour [2], and that total is divided across every PoP that answers for you, so an individual PoP can go minutes between hits. Cloudflare evicts idle isolates under sparse traffic [5]. Nearly every new visitor, particularly organic search arrivals, therefore landed on a fresh isolate that had to load and compile roughly 11MB of JavaScript first, which the team puts at a three-second penalty on first visit [4][6].
Now look at where the fix sits. The cache lookup runs inside the Worker's own fetch handler in `src/server.ts`, using `caches.default` [7]. On a cold isolate the isolate still boots and the script still compiles before `cache.match` executes. A hit removes the SSR render, measured at 5 ms of CPU [2], not the compile in front of it. That is a genuine win on a warm isolate and on repeat traffic to the same PoP; it is not obviously a win for the organic first visit the audit was about.
The safety boundaries around that cache are the part worth copying. A request carrying the `better-auth.session_token` cookie bypasses cache read and write entirely [8]. Caching is restricted to an allowlist of anonymous public paths, with `/dashboard`, `/api/*` and `/settings` never cached [9]. Writes require status 200, `Content-Type: text/html`, and no `Set-Cookie` [10]. And because a new Worker deployment does not purge `caches.default`, a plain URL key would keep serving stale HTML for days after a fix ships [11]. Their answer is a compile-time build stamp, `Date.now().toString(36)` injected by Vite and appended to the key as `__ev` [12]. Note what that does: it orphans the old entries rather than deleting them.
For the number to transfer you need both halves of the original condition, an 11MB server bundle and traffic thin enough that isolates get evicted. Change either and the same dashboard blind spot still exists, but the hidden term is small enough to ignore.
What the write-up does not show is the after. It lists edge HTML caching, client bundle decoupling and reduced mobile hydration TBT [13], and claims a 95+ Lighthouse score [14]. Lighthouse is a lab run; the 3,128 ms that started this was field RUM from Cloudflare Observatory [1]. No post-change Observatory percentile appears, so the field improvement is unverified on this evidence.
Ranked by verification strength, evidence, and original report placement.
Cloudflare's internal Worker metrics showed a median CPU wall time of just 5 ms for the same application.
Cloudflare Worker CPU metrics only record active handler execution; they do not account for isolate creation, bundle downloading, or V8 script compilation.
With baseline traffic around 0.1 requests per second, Cloudflare edge PoPs frequently evicted idle V8 isolates.
Almost every new visitor, especially organic search traffic from Google, hit a cold isolate that had to load and compile the 11MB payload before the 5ms SSR handler ran, producing a roughly three-second cold-start penalty on first visit.
Cloudflare Observatory real-user monitoring for ScribeToAny showed a 75th-percentile TTFB of 3,128 ms, with over 57% of hits rated "poor".
The bundled worker script reached about 11MB because the app includes over 80 audio/video conversion and transcription SEO tool routes, markdown renderers and format converter utilities.
Publishers with included, body-backed reporting in this cluster.
1 article · September 7, 2026
Follow any of these and your For You feed starts watching them — no settings page required.
build
Cloudflare's send_email binding reaches only verified addresses until onboarding finishes1 publisher
build
Cloudflare's own researchers broke the Spectre defense it shipped in 20211 publisher
build
Flue 2 bets that agents are a rendering problem, not an orchestration one1 publisher
security
A JWT Walks Out of a Cloudflare Worker at 12 Bits a Second2 publishers
Evidence-backed comparisons of source perspectives and observed adoption signals. Read the methodology
Which Builder, Operator, and Investor concerns the observed source mix emphasized—not a truth score.
Evidence, demonstrated adoption, hype gap, incentives, and confidence are assessed independently, each on its own current evidence. How these are measured.
Two readings, one author
The diagnosis rests on figures taken two ways that agree: Cloudflare Observatory's real-user 75th percentile at 3,128 ms, and manual curl against cold edge nodes at 3.4s to 3.6s. The mechanism is checkable against how Workers actually bill CPU time, and the cache logic and Vite define are pasted in rather than described. What holds the score down is that every measurement belongs to the team that shipped the fix, and dev.to's text breaks off in the middle of the vendor-chunk configuration before any after-state number appears.
One quiet site
The pattern is live in production, but on a single property the team itself puts at roughly 0.1 requests per second, which is precisely why its isolates kept being evicted. Sub-45 ms cache hits and 24-hour s-maxage are reported by the operator; no other project, and no Cloudflare guidance, is shown adopting the build-id cache key.
Diagnosis measured, outcome asserted
Everything before the fix carries a number from a named tool, and the headline framing of a three-second compile ahead of a 5 ms handler is fair to the evidence. The 95+ Lighthouse score and the under-45 ms cache hits arrive as claims, with no run conditions attached, and the write-up never tests the obvious alternative that shrinking an 11MB bundle would have moved the same needle without a cache.
Founder writing up his own product
A performance post on dev.to about 80-plus SEO tool routes is also a shop window for those routes, and the author owns the product being praised. Cloudflare is the subject rather than a sponsor, and no payment or vendor review is disclosed. Pulling the other way: the piece admits a 3.5-second first visit was costing it search placement, which is not the kind of detail a pure marketing post volunteers.
Mechanism sturdier than the result
The chain of causation is ordinary serverless behaviour, sparse traffic evicting isolates so an 11MB compile lands in front of a fast handler, and the numbers are internally consistent with each other. Confidence sits mid-range because there is one author, one site and one unverified measurement of the fixed state, taken by the person who fixed it.