[レベル: 中級]
Search Off the Record ポットキャストのエピソード 105 では、ブラウザが HTML をどのようにパース(解析)するか、そして SEO やウェブサイトのパフォーマンスにとってそれが何を意味するかをテーマに Google のMartin Splitt(マーティン・スプリット)氏と Gary Illyes(ゲイリー・イリース)氏がディスカッションしました。
概要
このディスカッションはもともと、HTTP クライアント(ブラウザ)に送信する情報をマーティンが取り上げたいという動機から始まりました。
そこで、まず必要な基礎知識として HTML パースの基本に立ち返りました。
HTML 標準は要素の配置場所を定義しています。一方で、ブラウザや検索エンジンは、ウェブの現実的な複雑さに対応するために追加のルールを適用しています。
このディスカッションで強調されたのは、厳密な HTML の妥当性は多くの開発者が考えるほど重要ではないという点です。
しかしそれでも、meta タグや link タグなどのメタデータの正しい配置は、特に検索エンジンにとって依然として重要です。
主要ポイント
マーティンとゲイリーによるディスカッションの主要点をまとめます。
- HTML パースは複雑で寛容である:
ブラウザはウェブの互換性を維持するために不完全なマークアップを受け入れるため、HTML を厳密にパースすることは難しい。 - HTML の妥当性はランキング要因ではない:
検索パフォーマンスに完全に有効な HTML は必要ない。終了タグの欠落などの軽微なエラーは、通常ブラウザや検索エンジンに影響を与えない。 - メタデータは
headに属する:metaタグ(例:robots meta)や canonicallinkタグなどの要素はhead内に配置されることが想定されている。HTML Living Standard によると、名前付きmeta要素およびメタデータを持つlink要素は、メタデータコンテンツが想定される場所、すなわちheadにのみ配置できる。body内に配置された場合、無視される可能性がある。 bodyに挿入されたメタデータは曖昧さやリスクを生む可能性がある:rel=canonicalのような重要なシグナルをbody内で許容してしまうと、たとえばエスケープ処理が不十分なサイトのブログコメントを通じた挿入など、悪用を招く恐れがある。そのため、より厳密な配置の解釈に検索エンジンは依存している。- JavaScript で変更されたシグナルは混乱を招く可能性がある:
初期ロード後にcanonicalやメタデータの値を変更すると、曖昧さが生じる可能性がある。初期 HTML における明確で一貫したシグナルが望ましい。技術的に必要な場合に JavaScript でメタデータを追加することは許容されるが、初期 HTML とレンダリング後の出力の間で相反するシグナルが生じると解釈が困難になる。 - リソースヒントは検索エンジンよりもユーザーに役立つ:
preload、prefetch、preconnect、DNS プリフェッチはブラウザにおける体感パフォーマンスを向上させる。Googlebot のフェッチは非同期で行われ、リソースは Google 側でキャッシュされるため、検索クロールへの直接的な影響は限定的である。なお、preloadは Cookie リークに関するプライバシー上の懸念からブラウザで一時的に無効化されており、これが中間レイヤーとして AMP キャッシュが導入された理由のひとつでもある。 - 検索エンジンは HTML をブラウザとは異なる方法で処理する:
クロールおよびレンダリングのワークフローはブラウザのリアルタイムの動作とは異なるため、すべてのブラウザパフォーマンス最適化が検索処理に関連するわけではない。 - セマンティック HTML が SEO に与える直接的な影響は限定的である:
article、section、複数のh1タグなどの構造化要素を使用することはアクセシビリティやユーザーにとって有益だが、それ単体では意味のあるランキング向上にはつながらない。HTML の妥当性は「正・誤」の二元的な概念であるため、「ほぼ正しい」HTML にランキングシグナルを与えることは現実的ではない。 - 厳密な完璧さよりも明確な意図が重要である:
バリデーションの細部にこだわるよりも、一貫性、適切なメタデータの配置、相反するシグナルの回避の方が重要である。
—
今回のエピソードは、ことさら新しい情報が含まれたディスカッションではありませんでした。
それでも、テクニカル SEO に携わる実務者にとって再確認すべき大切なポイントが含まれています。
HTML の完全なバリデーションやセマンティック マークアップに過度にこだわるよりも、meta タグや link タグなどの重要なシグナルを適切に head 内に配置し、検索エンジンにとって解釈しやすい一貫した構造を保つことのほうが実務上は重要です。
また、preload や prefetch などの最適化は直接的なランキング要因ではないものの、ユーザー体験の向上を通じて間接的に成果へ影響し得る点も、SEO を広義で捉えるうえではおろそかにできません。
