パフォーマンス診断から4年、モバイルのLCPは2.1秒
実質3つのサイト、約25のURL、そしてLighthouseで速く見えていただけのブログ。
WordPress、プロフィール用の別アプリ、そしてブログ
Voicesのサイトは、実質3つのサイトで構成されていました。WordPressによるマーケティングサイト、声優プロフィール用の別アプリ、そしてブログとポッドキャストです。全体で約25のURLを調査しました。

ホームページでのレイアウトシフト、プロフィールの遅延、そして訪問者には届いていなかったブログの94点
開発チームと直接話し合い、最初に着手すべき修正点を伝え、必要な知識も共有しました。チームは迅速に動きました。しばらくして開発マネージャーから、実装した項目リストがメールで届きました。重要な画像に対するfetchpriorityの指定に至るまで、徹底した内容でした。

マーケティング担当エンジニアのTomは、チームを離れる前に私のアドバイスの多くを実装してくれました。そのおかげで2022年3月には、PageSpeedでプロフィールがグリーンになる場面も増えていました。しかしその後、サイト全体で新機能が一斉にリリースされ、プロフィールのパフォーマンスは再び悪化してしまいました。5月、開発マネージャーのJayme Cousinsから「もう一度見てほしい」とメールがありました。翌週の月曜日、すぐに効果が出る3つの改善策を送りました。CloudflareのRocket Loaderを無効化したことで、GoogleとAppleのサインインスクリプトがrender blockingになっていたため、deferを付与してbodyの末尾に移動する必要がありました。ロゴにはwidthとheightの指定が必要でした。そしてLCP要素がCSSの背景画像になっていたため、preloadを指定した通常の画像に置き換える必要がありました。先方のビクトリアデーとこちらの昇天祭(休日に仕事をすると妻に嫌がられます)の合間となる水曜日に時間を合わせ、その日のうちに簡易的なページキャッシュを含むサンプルコードも送りました。
8月までに、プロフィールのheadサイズは251 kBから40 kBに縮小しました。
- 251 kB
- headサイズ
- 28
- @font-faceルール
- 2
- ブロッキングスクリプト
- 40 kB
- headサイズ
- 0
- @font-faceルール
- 0
- ブロッキングスクリプト
デスクトップ環境では、この2回目の改善の効果がはっきりと確認できます。新機能リリース後の4月には、TTFBが一時1.1秒まで悪化していました。それが10月には0.8秒に改善してグリーンとなり、LCPも3月の1.8秒から1.5秒まで短縮されました。
4年後、この記事のためにCrUXでVoicesを改めて確認したところ、すべての指標がグリーンでした。モバイルではLCPが2.0〜2.3秒、INPが150〜200msに収まり、CLSはここ1年間毎月0を維持しています。この成果はすべて、先方の開発チームによるものです。
「ArjenはCore Web Vitalsの改善において極めて重要な役割を果たしてくれました。重要なプロフィールページを、PageSpeedで再びグリーンに戻してくれたのです。何より評価しているのは、彼の実践的な姿勢です。単にボトルネックを指摘するにとどまらず、修正が実際に本番適用されるまで、私たちの開発チームと直接連携して動いてくれました。」
Jayme Cousins、Voices.com 開発マネージャー
スクリプトを遅延させるプラグインはLighthouseを欺く
テストは検知できたものだけを採点します。遅延されたスクリプトはテストの目に入りませんでした。しかし、訪問者のスマートフォンはそのすべてをダウンロードして実行しています。
1回に見えたレイアウトシフトの正体は3回
レポートに表示されるCLSの数値は1つだけです。しかしトレースを見ると3回連続でシフトが発生しており、それぞれに個別の対応が必要でした。
開発チームにノウハウを共有すれば、グリーンは維持できる
パフォーマンス診断を実施したのは2022年です。開発チームがグリーンを維持し続け、現在もモバイルのCrUXに合格しています。
Lighthouseではグリーンなのに、Search Consoleではレッドになっていませんか?
訪問者にとって何がなぜ遅いのかを特定し、開発チームが実装すべき順序で修正策を提示します。
その他の実績はクライアント実績ページをご覧ください。