「うちのシステム、Next.jsの何番で動いているか分かりますか」——この質問に即答できない場合、サポート期限を一度確認しておく価値があります。Next.js 15系のサポートは、当初の2026年10月21日から2027年1月31日まで延長されました。 公式のサポートポリシーが10月下旬に書き換えられています。
サポート終了(EOL)は「動かなくなる日」ではありません。動きはします。変わるのは、新しい脆弱性が見つかっても公式の修正パッチが出なくなるという一点です。そしてこれは想像上のリスクではありません。2026年9月22日と10月14日には、深刻度「Critical」のリモートコード実行の脆弱性が公表され、サポート中の版にだけ修正版が出ています。
本記事では、保守・発注を判断する立場の方に向けて、①延長で何が変わり、何が変わらないか、②自社のバージョンをどう確認するか、③延長後の期限までに何を決めるべきか、④移行の実作業は何にどれだけかかるのかを整理します。
先に結論を3つにまとめます(2026年11月3日確認)。
- Next.js 15.xのMaintenance LTSは2027年1月31日まで。公式のサポートポリシーに「当初の2026年10月21日から延長」と明記されている。16.xがActive LTSで、14.x以前はすでにサポート外
- 延長は約3ヶ月で、16系への移行が不要になったわけではない。15系に留まる間は、15.5.28(10月14日公開)など最新の15系パッチを当て続ける
- 移行コストの大半はバージョン番号を上げる作業ではなく、その後の動作確認。ここを見積もらずに着手すると想定が外れる

Next.jsのサポート期限はどう決まっているのか?
Next.jsはメジャーバージョンごとにLTS(長期サポート)の期間を決めており、原則はリリースから2年です。15系はこの原則から延長され、2027年1月31日までになりました。
公式のサポートポリシーでは、フェーズが2つに分かれています。
| フェーズ | 内容 |
|---|
| Active LTS | 次のメジャーが出るまで。新機能・通常のバグ修正・性能改善・セキュリティパッチのすべてを受け取る |
| Maintenance LTS | 次のメジャーが出た後の期間。重大なバグ修正と必須のセキュリティ更新のみ。原則は初回リリースから2年で終了 |
現在のバージョンに当てはめると、次のようになります。15系の終了日は、公式のサポートポリシーの表に掲載されている日付です。
| バージョン | リリース日 | 状態 | サポート終了 |
|---|
| 16.x | 2025年10月21日 | Active LTS | 未定(次のメジャー公開でMaintenance LTSへ移行) |
| 15.x | 2024年10月21日 | Maintenance LTS | 2027年1月31日(当初は2026年10月21日) |
| 14.x | 2023年10月26日 | サポート外 | 終了済み |
| 13.x | 2022年10月26日 | サポート外 | 終了済み |
(出典:Next.js Support Policy。2026年11月3日確認)
16.xは現時点でActive LTSのため、サポート終了日はまだ確定していません。次のメジャーバージョンが公開された時点でMaintenance LTSに移行し、そこから「初回リリースから2年」のルールが適用されます。
注意点として、Maintenance LTS期間中の修正は、破壊的変更を含んでいてもマイナーバージョンとして配信されます。 「マイナーアップデートだから安全」という前提が成り立たないため、15系に留まる場合もパッチ適用時の動作確認は必要です。
15系のサポート延長で、何が変わった?
変わったのは15系に修正版が出る期間で、2027年1月31日まで約3ヶ月延びました。16系への移行が必要なことと、16系では最新のマイナー版に修正が出ることは変わりません。
延長は、Next.jsのメンテナーが10月下旬に公式のサポートポリシーを更新して明らかになりました。ポリシーの表には「15.x:Maintenance LTS、Jan. 31, 2027(当初の2026年10月21日から延長)」と書かれています。バージョンの期限をまとめているendoflife.dateでも、メンテナー自身の提案で、10月28日に「延長・終了日は未定」、10月29日に「2027年1月31日」へ更新されています(endoflife.dateのNext.jsのページ)。延長の理由は「移行の時間を確保するため」と説明されています。
| 項目 | 延長の前(9月時点の想定) | 延長の後(11月3日確認) |
|---|
| 15系に修正版が出る期間 | 2026年10月21日まで | 2027年1月31日まで |
| 15系の最新の修正版 | 15.5.27(9月30日) | 15.5.28(10月14日。画像最適化のCriticalなど2件を修正) |
| 16系への移行 | 必要 | 必要(期限が約3ヶ月延びただけ) |
| 16系の修正版が出る系列 | 16.3系 | 16.4系。10月14日の修正は16.4.1に入り、16.3系には出ていない |
15系で運用している場合、延長で得た期間は「移行をやめる」ためではなく、検証を省かずに移行するために使います。延長の間も15.5.28のような修正版が出るので、15系の最新版を当てながら、16系への移行を計画します。
16系で運用している場合も、期限の心配がないとは言い切れません。16系の中で修正版が出るのは最新のマイナー版の系列だけで、10月14日の修正(Critical 2件、High 1件)は16.4.1に入り、16.3系には出ていません。16.3系から16.4系へ上げるときの判断は、Next.js 16.4.1・15.5.28の脆弱性3件で整理しています。
EOLを過ぎると、具体的に何が起きるのか?
システムは今日と同じように動き続けます。変わるのは、新しく見つかった脆弱性が修正されないまま残る点です。
この違いが実務でどう効くかは、直近の事例が分かりやすいので挙げます。
2026年9月22日、Next.jsは緊急のセキュリティリリースを公開しました。内容は next/og の画像生成機能(ImageResponse)におけるリモートコード実行の脆弱性です。
- 識別子:GHSA-vcvr-r3jv-pc5j / CVE-2026-94545
- 深刻度:Critical(CVSS 9.5)
- 影響範囲:Next.js 16.2.0以上 16.3.6未満
- 修正版:16.3.6(15系には関連する堅牢化のみが
15.5.26 で提供。15.xはこのRCEの影響を受けない)
- 原因:SVG生成に使っている上流ライブラリ(Satori)のエスケープ処理の不備
- 条件:画像生成のSVGの内容・属性・スタイルに、攻撃者が操作できる値を渡している場合に成立する
- 回避策:アップグレードできるまでの間、
next/og のNode.js実装に信頼できない入力を渡さない。Edge実装を使っている場合は影響を受けない
(出典:Next.js公式のセキュリティ告知)
その後、2026年9月30日にも追加のセキュリティリリースが出ています。画像最適化のサーバーサイドリクエストフォージェリ(SSRF、深刻度High)を含む7件の修正で、修正版は16系が16.3.8、15系が15.5.27です。9月22日の対応で16.3.6に上げた環境も、改めて16.3.8以上への更新対象になります。15系もMaintenance LTSの期間中は、このように修正版が提供されます(出典:Next.js公式のセキュリティリリース告知)。10月14日には、画像最適化のリモートコード実行(Critical)などの修正が16.4.1と15.5.28で出ました(Next.js公式の告知)。
この事例が示しているのは、サポート対象のバージョンにいたからこそ、公表と同時に修正版を適用できたということです。EOLを過ぎたバージョンで同種の問題が出た場合、選択肢は「自力でパッチを当てる」「有償の延長サポートを買う」「該当機能を止める」のいずれかになり、どれも当日に判断できるものではありません。
なお、この脆弱性は「Next.jsを使っていれば全員が危険」という性質のものではない点も押さえてください。成立条件はnext/ogのNode.js実装にユーザー由来の値を渡していることです。OG画像を静的に生成している、そもそもnext/ogを使っていない、Edge実装で動かしている、といった構成であれば、このCVEについては直接の影響はありません。まず「使っているか」を確認し、その上でバージョンを上げる、という順番が現実的です。
自社のバージョンはどう確認すればいいのか?
開発会社に聞くのが一番早いですが、手元でも確認できます。
社内に開発環境がある場合は、プロジェクトのフォルダで次のコマンドを実行します。
# インストールされている実際のバージョンを表示する
npx next --version
ソースコードだけ手元にある場合は、package.json というファイルを開き、"next" の行を探してください。
{
"dependencies": {
"next": "^16.3.3"
}
}
ここで注意したいのが、package.json の表記と実際に動いているバージョンは一致しないことがある点です。^16.3.3 は「16.3.3以上、17未満」という範囲指定で、実際にインストールされるのはその時点の最新版になります。逆に言えば、この表記のままでも、依存関係を再インストールした環境では16.4.4(2026年11月3日時点の16系の最新版)が入っている可能性があります。
正確に知りたい場合は、範囲指定ではなく実際の値を確認します。
# 実際に入っているバージョンを確認する
npm ls next
開発会社に確認を依頼する場合は、「Next.jsのバージョンを教えてください」だけだとpackage.jsonの表記が返ってくることがあります。「本番環境で実際に動いているNext.jsのバージョン」 と伝えると認識がずれにくくなります。
移行の判断:いま15系なら、何を決めるべきか?
延長後の期限(2027年1月31日)まで約3ヶ月です。この期間で移行を完了させることにこだわるより、15.5.28の適用と、現状把握・計画の合意を先に済ませるほうが実務的です。
判断の材料として、状況別に整理します。
| 現在の状況 | 推奨する動き | 緊急度 |
|---|
| 16系で稼働中 | 16.4系の最新の修正版を当てているか確認する。16.3系のままなら16.4.1以上へ上げる | 低〜中 |
| 15系・社内利用のみ・外部非公開 | 15.5.28を当て、2027年1月末までに16へ移る計画を立てる | 中 |
| 15系・インターネット公開・個人情報を扱う | 15.5.28を先に当て、優先的に移行を進める。間に合わない場合の暫定策も併せて決める | 高 |
| 14系以前 | すでにサポート外。EOLを過ぎた状態で運用している認識を持ち、移行を計画する | 高 |
「間に合わない場合の暫定策」とは、たとえば次のようなものです。移行そのものを急がせる代わりに、EOL後に脆弱性が出た場合の対応方針を先に決めておく、という考え方です。
- 脆弱性情報の監視担当を決めておく(誰が気づくのかを明確にする)
- 該当した場合に一時的に止められる機能を洗い出しておく
- 外部公開している範囲を減らせないか検討する(社内からのみアクセス可能にする等)
EOLを「絶対に間に合わせなければならない締切」と捉えて無理な短期移行を行うと、検証不足のまま本番に反映してしまうリスクのほうが大きくなります。 期限は判断のきっかけであって、品質を落としてよい理由にはなりません。
15から16への移行では、何にコストがかかるのか?
バージョンを上げるコマンド自体は数分で終わります。コストの大半は、その後の動作確認です。
Next.jsには移行を補助する自動変換ツール(codemod)が用意されています。
# 公式の移行支援ツール。変更が必要な箇所を自動で書き換える
npx @next/codemod@latest upgrade latest
ただし、これで全部が終わるわけではありません。実際に工数がかかるのは次の領域です。
- React 19への追従:Next.js 16はReact 19系を前提とします。UIライブラリがReact 19に対応していない場合、その差し替えや代替検討が必要になります
- Pages RouterからApp Routerへの移行:これは15→16の必須要件ではありませんが、古い構成のまま残している場合、このタイミングで判断を求められることがあります。規模によっては移行本体より大きな工数になります
- 全画面の動作確認:自動テストが整備されていない場合、ここが最大の工数です。画面数と業務パターンの数に比例します
- 外部連携の再確認:決済・認証・外部APIとの連携部分は、フレームワーク更新の影響を受けることがあり、個別の確認が必要です
つまり 見積もりの精度を左右するのは「テストがどれだけ自動化されているか」 です。自動テストがある環境では移行後の確認が短時間で済み、ない環境では人手で全画面を触ることになります。AI駆動開発でテストを書く現実的な範囲については、中小企業のNext.jsフルスクラッチで、テストをどこまで書くかで整理しています。
バージョンアップ対応を保守契約の中でどう扱うか(月額に含めるのか、都度見積もりなのか)は、契約形態によって変わります。確認すべき項目はNext.js保守運用の費用と契約にまとめました。
脆弱性が公表されたとき、誰が動くのか?
バージョン管理を継続的に回すには、「気づく人」と「判断する人」を事前に決めておく必要があります。
EOL対応は一度きりのイベントですが、セキュリティパッチへの追従は毎回発生します。2026年だけでも、Next.jsは5月・7月・8月・9月・10月にセキュリティリリースを行っており、11月3日(米国時間)にも定期リリースが予告されています。
必要な役割は3つです。
- 検知:脆弱性情報が公開されたことに気づく。GitHubのセキュリティアラートや公式ブログの購読で自動化できます
- 影響判定:自社の構成が該当するかを判断する。前述のCVEのように「特定の機能を特定の方法で使っている場合のみ」という条件付きのものが多く、ここに技術的な判断が要ります
- 適用:検証環境で確認してから本番に反映する
このうち2と3は技術的な判断を伴うため、社内に担当がいない場合は保守の委託範囲に含まれているかを確認しておくべき項目です。検知・判定・適用の分担をどう決めるかは、Next.jsのCVE対応は誰がやるのかで実際のパッチ事例に沿って整理しています。
まとめ
- Next.js 15.xのサポートは2027年1月31日まで延長(当初は2026年10月21日)。16.xがActive LTS、14.x以前はサポート外(出典:公式サポートポリシー、2026年11月3日確認)
- 延長は約3ヶ月。15系は15.5.28を当てながら16への移行を計画する。16系も、修正版が出るのは16.4系で、16.3系には10月14日の修正が出ていない
- EOLはシステムが止まる日ではなく、新しい脆弱性が修正されなくなる日。2026年9月22日公表のCritical RCE(CVE-2026-94545、CVSS 9.5)や10月14日の修正のような事例に、公式パッチで対応できなくなる
- 確認は
npx next --version または npm ls next。package.json の ^ 付き表記は実際のバージョンと一致しないことがある
- 移行コストの中心はバージョン変更ではなく移行後の動作確認。自動テストの有無で見積もりが大きく変わる
- 延長後の期限に間に合わない場合も、無理な短期移行より現状把握と暫定策の合意を優先する
私たちは、Next.jsのバージョン移行とその後の保守運用を、現状調査から移行計画・実装・検証まで一貫してお手伝いしています。「今のバージョンが分からない」「移行にどれくらいかかるのか知りたい」という段階からのご相談を歓迎します。Next.jsの調査・保守について、15分のカジュアルな相談も受け付けています(要件が固まっていなくても大丈夫です/営業はしません)。
※本記事に記載したバージョン・サポート期限・脆弱性情報は、2026年11月3日時点の公開情報(Next.js Support Policy・2026年10月14日のセキュリティ告知・2026年9月22日のセキュリティ告知・2026年9月30日のセキュリティリリース告知)に基づく整理です。サポート方針や脆弱性の状況は変わることがあるため、実際の判断にあたっては必ず公式情報で最新の内容をご確認ください。
技術仕様・対象バージョンは本文と参照先をご確認ください。
最終更新:2026年11月3日