結論
サイトが遅いときに最初にやることは、原因を回線・端末・タグの3つに切り分けることです。
ここを飛ばすと、画像を小さくしても速くならない、という時間の使い方になります。
このメディア自身のページを、条件を1つずつ変えて測った結果です(モバイル相当・3回の中央値・基準はLCP 916ms)。
- 遅延だけ速くする(150ms → 40ms):−232ms
- 帯域だけ上げる(1.6Mbps → 9Mbps):−264ms
- CPUの制限だけ外す:−172ms
つまり、いまのこのページは回線側の2つがほぼ同じだけ効いていて、端末性能はその半分という状態です。片方だけ直しても半分しか戻りません。
ここを2つ同時に変えて測ると、原因を取り違えます。実際、最初に測ったときは帯域と遅延を一緒に速くしてしまい、「帯域が効いている」と読みかけました。変数は1つずつです。
この記事で扱う範囲
遅い原因の切り分けと、測り方に絞ります。
ページの中身の作りは広告のリンク先ページは何でできているかと長く回り続けるLPの要素、計測タグが入っているかの確認は計測タグは入っているか。
合格ラインは、実際のユーザーの数字で決まる
GoogleはCore Web Vitalsとして、3つの目安を示しています。
| 指標 | 何の尺度か | 目安 |
|---|---|---|
| LCP(Largest Contentful Paint) | 読み込みパフォーマンス | 2.5秒以内 |
| INP(Interaction to Next Paint) | 応答性 | 200ミリ秒未満 |
| CLS(Cumulative Layout Shift) | 視覚的安定性 | 0.1未満 |
出典: Google 検索セントラル(2026-08-30確認)
同じページには、Core Web Vitalsが「その他のページ エクスペリエンス要素とともに、Google のコア ランキング システムがランキングを決定する際に考慮する要素」だと書かれています。順位のためだけに追う数字ではありませんが、無関係でもありません。
測るときは、条件を固定する
今回の測定条件は次のとおりです。数字の絶対値ではなく、条件をそろえた比較のために置いています。
- 画面 390×844(スマートフォン相当)
- 4G相当の回線(下り1.6Mbps・遅延150ms)
- CPUは4倍遅くする(実機のスマホに寄せるため)
- 各条件3回測って中央値
3回の中央値を取るのは、1回だけだと外れ値を拾うためです。平均ではなく中央値にすると、たまたま重かった1回に引っ張られません。
実測1: 効いているのは回線か、端末か
同じページを、条件を1つずつ変えて測りました。
| 条件 | LCP | 基準との差 | メインスレッドの詰まり |
|---|---|---|---|
| A 4G + CPU4倍(基準) | 916 ms | — | 365 ms |
| B 遅延だけ 150→40ms | 684 ms | −232 ms | 365 ms |
| C 帯域だけ 1.6→9Mbps | 652 ms | −264 ms | 236 ms |
| D 回線を両方(9Mbps・40ms) | 444 ms | −472 ms | 309 ms |
| E CPUだけ等倍に | 744 ms | −172 ms | 0 ms |
| F 制限なし | 124 ms | −792 ms | 0 ms |
出典: 自社サイトの実測(2026-08-30・3回の中央値)。生データと再現手順は社内に残しています
読み方は単純です。条件を1つ外したときに、いちばん数字が動いたものがボトルネックです。
- 帯域(−264ms)と遅延(−232ms)は、ほぼ同じだけ効いています。 どちらか片方を直しても半分です
- 両方を速くすると−472msで、単独の差の合計(496ms)とほぼ一致します。おおむね足し算で効きます
- CPUは−172ms。回線側の1つぶんより小さい
- ただし、メインスレッドの詰まりはCPUを等倍にすると0ms。ここは回線をいくら速くしても消えません
読み込みの時間は回線側で決まっていて、操作の重さは端末の性能で決まっている、という状態です。前者はファイルの大きさと数、後者はJavaScriptの量の話になります。
実測2: 計測タグはどれだけ重いか
GA4とMicrosoft Clarityを入れているページで、タグを遮断しながら測りました。上の表とは別の実行です。設定は同じにそろえてありますが、同じ「4G + CPU4倍」でも基準値は916msと932msでずれます(約2%)。比べるのは同じ実行の中の差だけにしてください。
| モード | LCP | CLS | メインスレッドの詰まり |
|---|---|---|---|
| ① 現状(GA4 + Clarity) | 932 ms | 0.027 | 356 ms |
| ② Clarityだけ止める | 916 ms | 0.027 | 310 ms |
| ③ 両方止める | 928 ms | 0.027 | 97 ms |
出典: 自社サイトの実測(2026-08-30・3回の中央値)
LCPで見ると、タグの影響はほとんど出ません。 932ms・916ms・928msで、上下の幅は実行ごとのばらつきと同じ程度です。「計測タグを入れても遅くならない」と言えそうに見えます。
ところが、メインスレッドの詰まりは 356ms → 97ms。タグが約260ms分の処理を足しています。ここはLCPには出にくく、タップしたときの反応(INP)の側に出ます。
実際に効いた修正
このサイトで実際に入れて、数字が動いた修正は次のとおりです。
計測タグの読み込みを、ページの表示が終わったあとに回した。 GA4とClarityが、画面を組み立てているいちばん混む時間に動いていました。当時のコードには「CPU4倍でLCPが4.6秒あった」という記録が残っています。いまの同じ条件での実測は916〜932msです。その間に画像とフォントの見直しも入っているので、この差のすべてがタグの移動によるもの、とは言えません。
ただしトレードオフがあります。読み込み完了後にタグが動くので、1秒以内に離脱した人はGA4に記録されません。 集計の目的によっては、この差が問題になります。速度と計測は、どちらかを選ぶ場面があるということです。
そのうえで、削れなかったものもあります。JavaScriptの大半はサイトの土台(フレームワーク)そのもので、記事の側から減らせません。フォントも、読ませたい書体を捨てる判断になります。「全部速くする」ではなく、動かせるところを動かすのが実務です。
中小企業のサイトで、最初に見る3つ
測る道具がない段階でも、当たりを付けられる項目があります。
- いちばん大きい画像。トップの主役画像が数MBのまま置かれていることがあります。表示している大きさに合わせて書き出し直すだけで、通信量が桁で変わります
- タグの数と読み込み方。広告・解析・チャット・フォーム・SNSの埋め込みを足し続けていないか。使っていないタグは外します
- フォント。日本語のWebフォントは容量が大きく、種類を増やすほど重くなります。太さ違いを何種類も読み込んでいないか
この3つは、制作会社に依頼するときも「どれを直したいか」を指定しやすい項目です。
確認項目
直しにかかる前に、切り分けが済んでいるかを確かめます。
- 実ユーザーの数字(Search ConsoleのCore Web Vitalsレポート)を見た
- 自分のパソコンの体感ではなく、条件をそろえて測った
- 3回以上測って中央値を取った
- 回線(遅延・帯域)とCPUを、1つずつ外して数字が動くかを確かめた
- 計測タグを入れる前後で、同じ条件で測り比べた
- LCPだけでなく、メインスレッドの詰まり(操作の反応)も見た
- 直したあと、もう一度同じ条件で測り直した
今日やること
まず、Search Consoleの「Core Web Vitals」レポートを開いて、不良と判定されたURLがあるかだけを見てください。ここが空なら、体感の遅さは別の場所(サーバーの応答や特定の端末)にあるかもしれません。
不良のURLがあるなら、そのページでいちばん大きい画像のファイルサイズを確認します。ブラウザでその画像を直接開けば分かります。数MBあれば、そこが最初の1手です。
計測タグを足す予定があるなら、足す前の数字を控えておいてください。あとから「重くなった気がする」を検証する方法が、それしかありません。タグが入っているかどうかの確かめ方は計測タグは入っているか。





