Build1 distinct publisher3 min readUpdated
One production app, taken from 16.2.3 to 16.3.1 with readings recorded on both sides, is the first published independent test of Vercel's "90% less RAM" figure. The useful win came from elsewhere.
The Engineer · Build desk
Compiled by The EngineerSomething wrong?How this is made
Next.js 16.3 shipped on August 3, 2026 with a headline number about memory: long development sessions, Vercel says, now use up to 90% less RAM [1]. A developer writing on dev.to has now published what appears to be the first before-and-after measurement of that claim on a real application, and reports that the memory claim did not survive contact with the app while the unheadlined TypeScript 7 type-check handoff cut two thirds off the build [5].
Why this matters is the gap between the two. "Up to 90%" was measured on Vercel's workloads, and two weeks after release nobody had published independent numbers from a real app [3]. The release notes carried more than the memory line: repeat builds that read unchanged artifacts straight from cache, type checking that can hand off to TypeScript 7, a server handling roughly 22% more requests under load, and a set of navigation primitives called Instant Navigations [2].
The test subject is a production app that builds 142 static pages on the App Router with Turbopack, chosen over a scaffold because a scaffold has almost no dependency graph and the dependency graph is what consumes memory [6]. Baseline is 16.2.3 with React 19.2.4, target is 16.3.1, and only the framework version changes between runs, on Windows 11 Pro with Node v24.13.1, npm 11.8.0 and TypeScript 5.9.3 [7]. Three runs each side, same machine, same procedure [4].
The methodology is where this becomes usable rather than anecdotal. Windows does not expose RSS, so the author uses PeakWorkingSet64 summed across the three Node processes the dev server spans, on the grounds that a single-process reading discards most of the footprint [9]. Sampling is every 10 seconds from a PowerShell script that confirms the port is free and no stray Node processes are alive first [10]. Builds run twice with .next deleted beforehand, cold then immediately warm, because the distance between the two is itself one of the release's claims [8].
The baseline numbers are the sharpest thing in the writeup. An idle dev server is close to a flat line: roughly 351 MB on a 30-second smoke run, 355.7 MB after ten minutes of sitting still, growth of about 1.3% [14]. The same server with five single-line edits to a mounted client component over the same ten minutes reached 564.8 MB, 209 MB of growth, a 59% increase [15]. That is about 41.8 MB per edit [17], and an active session growing roughly 45 times faster than an idle one [18]. The author's point is that five edits is nothing and a real morning is a few hundred [19], which is also why an idle-only reading would have been the wrong measurement dressed up as the right one [11].
One caveat on the build win: TypeScript 7 was tested on a throwaway branch, with and without experimental.useTypeScriptCli, then removed, and the shipped tree stayed on 5.9.3 [12]. So the two-thirds cut sits behind an experimental flag and a compiler the project did not adopt.
Watch for whether the two-thirds type-check figure holds on codebases with different type surface areas, and for a second independent memory run on Linux where RSS is available [9]. The raw data, scripts and upgrade log are published, which makes both checkable [16].
Follow any of these and your For You feed starts watching them — no settings page required.
Ranked by verification strength, evidence, and original report placement.
Each build runs twice with .next deleted beforehand: the first cold, the second immediately after with the OS file cache warm and Next.js able to read unchanged artifacts from its own cache; both are reported because the distance between them is itself one of the release's claims.
Next.js 16.3 shipped on August 3, 2026, and its headline number is memory: Vercel says long development sessions now use up to 90% less RAM.
The 16.3 release notes also list repeat builds that read unchanged artifacts straight from cache, type checking that can hand off to TypeScript 7, a server handling roughly 22% more requests under load, and a new set of navigation primitives called Instant Navigations.
The author upgraded a single production app from Next.js 16.2.3 to 16.3.1, recording every build time and memory reading before and after, same machine and same procedure on both sides, three runs each.
The subject is a production Next.js app that builds 142 static pages on the App Router with Turbopack, not a scaffolded demo, because a scaffold has almost no dependency graph and the dependency graph is what eats memory.
Environment: Windows 11 Pro, Node v24.13.1, npm 11.8.0, TypeScript 5.9.3; baseline Next.js 16.2.3 with React 19.2.4, target 16.3.1, with only the framework version changing between runs.
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.
Detailed, replicable baseline; conclusion's numbers absent
Methodology quality is high for a single-author test: pinned toolchain versions with only the framework changing, cold-and-warm builds with .next deleted, an idle control scenario, process-tree PeakWorkingSet64 summation with documented reasoning for the Windows RSS substitution, scripted 10-second sampling, pre-run hygiene checks, baseline project health recorded, and raw data plus scripts published. What holds the score down is that the supplied text carries only the 16.2.3 baseline readings and stops before the 16.3.1 tables, so the headline conclusion is asserted rather than shown here, and the sample is one app on one machine and one OS with five edits per session.
One release plus one independent upgrade test
Adoption evidence in the cluster is thin and precisely bounded: the 16.3 release itself, a single production app upgraded to 16.3.1, and one published benchmark of that app. The TypeScript 7 path was tried only on a throwaway branch and reverted, and no other deployments, user counts, or third-party reproductions appear anywhere in the supplied sources.
Vendor headline unverified; rebuttal generalises from n=1
Overstatement runs in both directions but nets positive. Vercel's 'up to 90% less RAM' is a vendor-measured figure on vendor workloads with no independent confirmation in this cluster, and the release's '22% more requests' claim is repeated untested. The corrective is itself pitched broadly — a framework-level memory claim declared not to hold, and a two-thirds build cut credited to a TypeScript handoff — on one app, one machine, one OS, five edits, with the supporting post-upgrade numbers not present in the supplied text. The author's explicit caveats about sample size and the published raw baseline keep the gap moderate rather than large.
Vendor-measured headline versus single-author verification post
Two clear incentive structures are visible in the material. Vercel authored and measured the promotional figure being tested, on its own workloads, which is a direct commercial interest in the number's favourability. The counterweight is an individual developer publishing a verification post on a personal-blogging platform, where a headline contradicting a major vendor carries obvious attention value; that pressure is partly mitigated by publishing scripts and raw data and by conceding the sample's limits. No sponsorship, employment relationship, or other financial tie is disclosed in the source, so nothing beyond these two is assessed.
Strong method, single publisher, truncated results
Confidence is mid-range. The measurement design and baseline figures are documented well enough to trust as reported, and the raw data is public. But the cluster has exactly one publisher who is also the experimenter, no vendor or third-party corroboration, no cross-platform or second-app replication, and the supplied text ends before the post-upgrade tables that carry the story's headline finding.
build
Next.js's architecture is working. Its operating manual isn't keeping up.1 distinct publisher
build
Flue 2 bets that agents are a rendering problem, not an orchestration one1 distinct publisher
build
A build step instead of a backend: 1,025 records, 8 locales, no runtime API1 distinct publisher
build
A GAN beauty filter is a device budget allocation, not a feature toggle1 distinct publisher
Distinct publishers with included, body-backed reporting in this cluster.
dev.to
1 article · August 18, 2026