배경 쓰던 Next.js 15 는 유지보수 LTS 로 2026-10-21 무렵 지원이 끝난다(16.x 가 Active LTS). 16 은 next build 기본 번들러를
Turbopack 으로 바꾸고, 빌드 출력에서 First Load JS 표를 없앴다(공식 업그레이드 안내). 이 저장소는 Pages Router · React 18 이고,
16 의 깨지는 변경(웹팩 설정 · middleware · next/image · 런타임 설정 · AMP · next lint) 중 해당하는 것은 없었다 — tsconfig 의 jsx 만 Next 가 react-jsx 로 바꿈.
^18.2 || ^19). 15.5.27 과 같은 날 나온 보안 패치 수준이고, 사흘 된 16.4.0 은 피함.npm run build)는 next build --webpack, 개발 서버는 기본(Turbopack).<script>(nomodule 제외)를 받아 gzip 바이트를 더해 잰다 — Next 15 의 First Load JS 표와
같은 값이 나오는 것으로 방법을 맞춘 뒤(예: / 100.4 vs 표 101 kB, 기업 상세 112.1 vs 113 kB) 15 · 16 을 같은 방법으로 비교.| 빌드 | 첫 로드 JS 중앙값 (gzip) | 기업 상세 | next build |
|---|---|---|---|
| Next 15.5.27 (webpack) | 100.4 KB | 112.1 KB | 22.0 s |
| Next 16.3.8 Turbopack(기본) | 115.6 KB (+15%) | 126.4 KB | 11.6 s |
| Next 16.3.8 webpack | 104.0 KB (+3.6%) | 115.4 KB | 17.3 s |
Turbopack 은 빌드가 빠르지만 화면마다 약 11.6 KB 를 더 받게 한다. 사용자가 매번 받는 크기를 빌드 시간보다 우선했다. 남은 +3.6 KB 는 Next 16 런타임 자체의 증가분(모든 화면에 같은 크기)으로, 지원 기간을 위해 받아들였다. E2E 27개 · 화면 15개의 콘솔 · CSP 오류 0 으로 확인.
Turbopack 운영 빌드의 크기가 webpack 수준이 되면 --webpack 을 뺀다(같은 측정으로 확인). React 19 로 올리는 것은 별도 결정.