AdSenseのアンカー広告がCLSを悪化させていた

運営中のサイトで AdSense の自動広告をオンにしているのですが、アンカー広告が CLS(Cumulative Layout Shift)を悪化させていました。CLS を含む Core Web Vitals(コアウェブバイタル)は、Google の検索順位に影響するため改善したいです。

CLS を改善するためには、アンカー広告をオフにするか、アンカー広告を下部にのみ表示させる対応が必要になります。この記事では、アンカー広告をオフにするまでの顛末についてご説明します。

サーチコンソールのページエクスペリエンス「改善が必要」を消したい

コアウェブバイタル対応として WordPress テーマを修正し、LCP/FID については十分に速度を確保できました。CLS についても画像のサイズを明示するなどの対応を実施し、Lighthouse で計測して CLS がゼロと表示されるところまで漕ぎ着けました。

しかし、Lighthouse では CLS がゼロなのにもかかわらず、Google サーチコンソールでは CLS が 0.15 前後のまま減りません。「改善が必要」のままです。

コアウェブバイタルが検索順位に与える影響は小さいらしいですが、改善が必要と言われ続けるのは気になりますよね。対応したいところです。

PageSpeedInsights のラボデータとフィールドデータの結果が一致しない

PageSpeedInsights で Core Web Vitals を計測してみると、ラボデータ(推定値)の CLS はゼロと表示されます。

しかし、フィールドデータ(実測値)では CLS が 0.15 前後で黄色信号になっています。この数値はサーチコンソールの CLS の数値と一致します。

ラボデータとは、計測を行なったとき指定の URL を読み込んだ結果から作成した推定値です。フィールドデータとは、実際にたくさんのユーザがページを表示したときに計測された実測値です。

なので、フィールドデータが改善されなければ意味がありません。Google サーチコンソールの「ページエクスペリエンス」の判断基準として使われているのもフィールドデータだと思います。

モバイル版のみで悪化する原因はアンカー広告?

改善が必要なのはモバイル版のみで、PC 版はすべて良好 URL です。

なぜ CLS がモバイル版のみ要改善なのか考えつつ Chrome でパフォーマンス計測などやってみたところ、アンカー広告が原因ではないかという仮説が出てきました。

アンカー広告はモバイル版でのみ表示されます。そして、広告が読み込まれたタイミングで画面全体が動くため、CLS が悪化している可能性があります。

ラボデータで CLS が 0 になるのは、おそらくアンカー広告が遅れて表示される時点まで評価できていないのではと考えました。

アンカー広告を下部表示にするかオフにするか

アンカー広告を下部表示にすることは可能です。Google AdSense ヘルプページに記載があり、広告コードを修正すれば OK です。

しかし、AdSense の広告コードは 2021 年 7 月に新しくなっており、新しい広告コードでアンカー広告を下部表示する方法については探しても見つかりませんでした。

このたび Google は、新しいバージョンの AdSense コードをリリースしました。この新しい AdSense コードを使用すると、AdSense で最適化機能がトリガーされるタイミングが従来よりも早くなるため、サイトに掲載された広告のパフォーマンスが向上します。新しい広告コードは、自動広告と広告ユニッ トの両方に対応しています。

新しい広告コードに差し替えることで広告のパフォーマンスアップが見込めるなら、古い広告コードに戻すのは微妙な印象です。

また、アンカー広告を使わないように変更するのは AdSense の管理画面からオフにするだけで簡単。更に、もしアンカー広告をオフにしても CLS が改善しない場合、元に戻すのも手間がかかりません。

アンカー広告は、CLS を悪化させている可能性あり

アンカー広告をオフにしてしばらく待っていたところ、無事にサーチコンソールから「改善が必要」の表示が消えました。

PageSpeedInsights の計測結果を見ても、フィールドデータの CLS が 0.13 -> 0.09 と大幅に改善しています。

ただし、アンカー広告が CLS へ常に悪影響を与えるかどうかは断定できません。サイトの HTML や JavaScript、WordPress であればどのテーマを使っているかによって変わる可能性があります。

アンカー広告をオフにするのは、サイトのパフォーマンスを Chrome で観察してからにしたほうが良いと思います。