ウェブサイトの表示速度が遅くて、ユーザーがすぐに離脱してしまう…そんな経験はありませんか?
2021年6月、Googleは「Core Web Vitals」という新しい指標を検索順位の決定要因に追加しました。その中でも特に重要なのが、今回解説する「LCP(Largest Contentful Paint)」です。
LCPは、ユーザーがあなたのサイトで「意味のある情報を得られるまでの時間」を測る重要な指標です。この数値が悪いと、SEOで不利になるだけでなく、ユーザー体験も大幅に悪化してしまいます。
でも大丈夫です。この記事では、LCPの基本概念から具体的な改善方法まで、初心者の方でも理解できるよう詳しく解説していきます。
表示速度改善のプロとして、数多くのサイトを高速化してきた経験をもとに、実際に効果のある改善手法を惜しみなくお伝えします。
目次
LCPとは?基本概念を理解しよう
LCPの定義
LCP(Largest Contentful Paint)とは、ウェブページの主要なコンテンツ(最も視覚的に大きな要素)がブラウザ上に表示されるまでの時間を測る指標です。
「最大コンテンツの描画」という意味で、ユーザーがそのページで最も重要だと感じる部分が、どれだけ早く表示されるかを数値化したものです。
なぜLCPが重要なのか?
LCPが重要な理由は主に2つあります。
1. ユーザー体験の向上
- ユーザーは「意味のある情報」を求めてサイトを訪れます
- メインコンテンツが早く表示されることで、ユーザーの満足度が向上します
- 離脱率の低下、コンバージョン率の向上につながります
2. SEO(検索エンジン最適化)への影響
- GoogleのCore Web Vitalsの一部として、検索順位に直接影響します
- 2021年6月以降、LCPは検索ランキングの決定要素の一つになりました
- 競合他社より表示速度が遅いと、検索結果で不利になる可能性があります
LCPの判定基準
Googleは以下の基準でLCPを評価しています:
- 良好(Good): 2.5秒以内
- 要改善(Needs Improvement): 2.5秒~4.0秒
- 不良(Poor): 4.0秒超
理想的には2.5秒以内に抑えることが推奨されています。
LCPの仕組み:4つのサブパートを詳しく解説
LCPの時間は、以下4つのサブパートの合計で決まります。それぞれの仕組みを理解することで、効果的な改善策を立てることができます。
1. Time to First Byte(TTFB)
定義: ユーザーがページにアクセスしてから、ブラウザがサーバーから最初のデータを受信するまでの時間
影響する要因:
- サーバーの処理速度
- ネットワークの遅延
- リダイレクト回数
- DNS解決時間
2. リソース読み込みの遅延
定義: TTFBが完了してから、LCPリソースの読み込みが開始されるまでの時間
影響する要因:
- CSS・JavaScriptの読み込み順序
- レンダリングをブロックするリソース
- 不要なHTTPリクエスト
3. リソースの読み込み時間
定義: LCPリソース(画像、動画等)自体のダウンロードにかかる時間
影響する要因:
- ファイルサイズの大きさ
- 画像・動画の最適化状況
- ネットワーク速度
4. 要素のレンダリングの遅延
定義: LCPリソースの表示処理(レンダリング)が完了するまでの時間
影響する要因:
- JavaScriptの実行時間
- CSSの複雑さ
- ブラウザの処理能力
LCPの測定対象となる要素
LCPの計測対象となる要素は、以下の4種類です:
1. 画像要素
<img>
タグで挿入された画像<svg>
要素内の<image>
要素- JPEG、PNG、WebP等の画像形式
2. 動画要素
<video>
タグで挿入された動画- ポスター画像がある場合はポスター画像
- 最初のフレームが表示されるまでの時間
3. テキスト要素
<div>
、<h1>
~<h6>
、<p>
等のブロックレベル要素- テキストを含む要素全体のサイズ
4. 背景画像を含む要素
- CSS
url()
関数で読み込まれた背景画像 - CSSグラデーションは対象外
LCPの測定方法:無料ツールを活用しよう
1. PageSpeed Insights(推奨)
使用方法:
- PageSpeed Insightsにアクセス
- 測定したいページのURLを入力
- 「分析」ボタンをクリック
- 結果を確認
メリット:
- 実際のユーザーデータと実験室データの両方を確認可能
- 改善提案も自動で表示される
- LCP要素の特定ができる
2. Google Search Console
使用方法:
- Google Search Consoleにログイン
- 「ウェブに関する主な指標」を選択
- 「モバイル」「PC」それぞれの結果を確認
メリット:
- サイト全体の傾向を把握できる
- 問題のあるページを一覧で確認可能
3. Chrome DevTools
使用方法:
- Chrome で対象ページを開く
- F12キーでDevToolsを開く
- 「Performance」タブを選択
- 「Web Vitals」にチェックを入れて測定
メリット:
- 詳細な分析が可能
- LCP要素の特定が容易
LCPが低下する原因:よくある5つの問題
1. 画像の最適化不足
問題:
- ファイルサイズが過大(1MB以上など)
- 古い画像形式(JPEG、PNG)を使用
- 画像サイズが表示サイズより大きい
影響度: ★★★★★(非常に高い)
2. サーバーのスペック不足
問題:
- 処理速度の遅いサーバー
- 同時接続数の制限
- 古いサーバー環境
影響度: ★★★★☆(高い)
3. JavaScriptとCSSの最適化不足
問題:
- 不要なコードの存在
- レンダリングをブロックするリソース
- ファイルの圧縮不足
影響度: ★★★☆☆(中程度)
4. CDNの未使用
問題:
- 物理的な距離による遅延
- サーバーへの負荷集中
- 地域による表示速度のばらつき
影響度: ★★★★☆(高い)
5. キャッシュの未設定
問題:
- 毎回サーバーでの処理が発生
- 不要なリクエストの増加
- サーバー負荷の増大
影響度: ★★★★☆(高い)
LCPの改善方法:実践的な対策を徹底解説
基本戦略:サブパートごとの改善
LCPの改善で最も重要なのは、どのサブパートがボトルネックになっているかを特定することです。
PageSpeed Insightsの「最大コンテンツの描画」要素を確認し、以下の手順で改善を進めましょう。
1. TTFB(Time to First Byte)の改善
サーバーの高速化
具体的な対策:
- 高速なレンタルサーバーへの移行
- サーバーのスペックアップ
- SSD搭載サーバーの利用
推奨サービス:
- 法人向け:専用サーバー、VPS
- 個人向け:高性能共有サーバー
CDN(Content Delivery Network)の導入
効果:
- 世界中のサーバーからコンテンツを配信
- 物理的な距離による遅延を解消
- サーバー負荷の分散
推奨CDN:
- Cloudflare
- Amazon CloudFront
- Fastly
キャッシュの最適化
WordPress の場合:
- WP Rocket
- W3 Total Cache
- WP Super Cache
設定のポイント:
- ページキャッシュの有効化
- ブラウザキャッシュの設定
- オブジェクトキャッシュの利用
2. リソース読み込み遅延の改善
不要なCSS・JavaScriptの削除
確認すべき項目:
- 使用していないプラグイン
- 不要なライブラリ
- 重複する機能
具体的な作業:
Copy<!-- 不要なスタイルシートの削除 -->
<link rel="stylesheet" href="unused-style.css"> <!-- 削除 -->
<!-- 不要なJavaScriptの削除 -->
<script src="unused-script.js"></script> <!-- 削除 -->
レンダリングブロックの解消
CSS の最適化:
Copy<!-- 重要なCSSをインライン化 -->
<style>
/* ファーストビューに必要なCSSのみ */
.hero-section { display: block; }
</style>
<!-- 重要でないCSSを遅延読み込み -->
<link rel="preload" href="styles.css" as="style" onload="this.onload=null;this.rel='stylesheet'">
JavaScript の最適化:
Copy<!-- defer属性で遅延実行 -->
<script defer src="script.js"></script>
<!-- async属性で非同期実行 -->
<script async src="analytics.js"></script>
重要リソースの優先読み込み
画像の優先読み込み:
Copy<!-- LCP画像を優先的に読み込み -->
<img src="hero-image.jpg" fetchpriority="high" alt="メインビジュアル">
<!-- 重要な画像をプリロード -->
<link rel="preload" href="hero-image.jpg" as="image">
3. リソース読み込み時間の改善
画像の最適化(最重要)
ファイル形式の最適化:
- JPEG → WebP(約30%容量削減)
- PNG → WebP(約50%容量削減)
- アニメーション → WebP(GIFより高品質・小容量)
画像サイズの最適化:
Copy<!-- レスポンシブ画像の実装 -->
<img src="image-800.webp"
srcset="image-400.webp 400w,
image-800.webp 800w,
image-1200.webp 1200w"
sizes="(max-width: 600px) 400px,
(max-width: 1000px) 800px,
1200px"
alt="説明文">
圧縮の最適化:
- JPEG:品質80-90%が適正
- WebP:品質85-95%が適正
- PNG:可逆圧縮ツールを使用
おすすめ圧縮ツール:
- オンライン:TinyPNG、Squoosh
- デスクトップ:ImageOptim、GIMP
- WordPress:EWWW Image Optimizer
動画の最適化
コーデックの選択:
- H.264 → H.265(約50%容量削減)
- VP9、AV1コーデックの利用
最適化のポイント:
- ビットレートの調整
- 解像度の最適化
- プリロードの設定
4. レンダリング遅延の改善
JavaScriptの最適化
コードの最小化:
Copy// 圧縮前
function calculateTotal(price, tax) {
const total = price + (price * tax);
return total;
}
// 圧縮後
const calculateTotal=(e,t)=>e+e*t;
実行タイミングの最適化:
Copy// DOMContentLoaded後に実行
document.addEventListener('DOMContentLoaded', function() {
// 重要でない処理
});
// ページ完全読み込み後に実行
window.addEventListener('load', function() {
// さらに重要でない処理
});
CSSの最適化
未使用CSSの削除:
- Chrome DevToolsのCoverageタブで確認
- PurgeCSSツールの利用
- Critical CSSの抽出
CSS配信の最適化:
Copy<!-- インライン化による高速化 -->
<style>
/* ファーストビューに必要なCSSのみ */
.above-fold { display: block; }
</style>
表示速度改善の実用的なテクニック
WordPress での改善方法
推奨プラグイン:
- WP Rocket – 総合的な高速化
- Autoptimize – CSS/JS最適化
- EWWW Image Optimizer – 画像最適化
- W3 Total Cache – キャッシュ最適化
設定例(WP Rocket):
✓ ページキャッシュ
✓ CSS最適化
✓ JavaScript最適化
✓ 画像遅延読み込み(LCP画像は除外)
✓ WebP変換
高速化に効果的なサーバー設定
Gzip圧縮の有効化:
Copy# .htaccess
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/css text/javascript application/javascript
</IfModule>
ブラウザキャッシュの設定:
Copy# .htaccess
<IfModule mod_expires.c>
ExpiresActive on
ExpiresByType image/jpg "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/pdf "access plus 1 month"
ExpiresByType text/javascript "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
</IfModule>
高度な改善テクニック
Critical CSS の実装
Copy<head>
<!-- インライン化されたCritical CSS -->
<style>
/* ファーストビューに必要なCSSのみ */
body { font-family: Arial, sans-serif; }
.header { background: #333; color: white; }
.hero { height: 400px; background: url('hero.jpg'); }
</style>
<!-- 残りのCSSを遅延読み込み -->
<link rel="preload" href="styles.css" as="style" onload="this.onload=null;this.rel='stylesheet'">
</head>
Resource Hints の活用
Copy<!-- DNS prefetch -->
<link rel="dns-prefetch" href="//fonts.googleapis.com">
<!-- Preconnect -->
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<!-- Preload -->
<link rel="preload" href="hero-image.webp" as="image">
<link rel="preload" href="font.woff2" as="font" type="font/woff2" crossorigin>
よくある質問とトラブルシューティング
Q1: LCPが改善されないのはなぜ?
考えられる原因:
- 間違った要素を最適化している
- PageSpeed InsightsでLCP要素を正確に特定
- モバイルとデスクトップで異なる場合がある
- サーバーがボトルネックになっている
- TTFBが1秒以上の場合はサーバー改善が優先
- キャッシュの設定確認
- 複数の問題が重複している
- 一つずつ改善して効果を測定
- 優先順位を付けて取り組む
Q2: 改善効果をどう測定すればいい?
推奨測定方法:
- 改善前の数値を記録
- 1つずつ改善を実施
- 24時間後に再測定
- 複数のツールで確認
測定のポイント:
- 測定時間を統一(同じ時間帯)
- 複数回測定して平均値を算出
- 実際のユーザー環境での確認
Q3: どの改善から始めればいい?
優先順位:
- 画像最適化(効果が大きく、実装が簡単)
- キャッシュ設定(サーバー負荷軽減)
- CDN導入(グローバルユーザー対応)
- CSS/JS最適化(技術的な改善)
まとめ:LCP改善で競合に差をつけよう
LCP(Largest Contentful Paint)は、ユーザー体験とSEOの両方に直結する重要な指標です。
改善の要点:
- 現状把握:PageSpeed Insightsで数値とLCP要素を特定
- 原因分析:4つのサブパートのどこがボトルネックか確認
- 段階的改善:影響の大きい項目から順番に対策
- 継続的測定:改善効果を定期的に確認
最も効果的な改善策:
- 画像の最適化とWebP化
- 高速サーバーの利用
- CDNの導入
- 適切なキャッシュ設定
表示速度の改善は、一朝一夕で完了するものではありません。しかし、着実に取り組めば必ず結果が現れます。
特に、LandingHubのような高速表示が求められるランディングページでは、LCPの改善が直接的にコンバージョン率の向上につながります。
ユーザーが快適に利用できるサイトを作ることで、SEOでの上位表示とビジネスの成功を実現しましょう。
まずは今日から、あなたのサイトのLCP測定から始めてみてください。改善の第一歩は、現状を知ることから始まります。