Имеет ли структура HTML значение для SEO?

Безусловно структура HTML имеет значение для SEO, но не в том смысле, в котором многие думают. Читайте дальше, чтобы узнать о реальной роли HTML для SEO.

Имеет ли структура HTML значение для SEO?

Если вы пропустили последний эпизод подкаста Search Off the Record, Гэри Иллиес (Gary Ilyes) из Google вызвал споры, когда сказал, что структура HTML не имеет большого значения для SEO. Позже он уточнил на Linkedin, что "не имеет большого значения" не означает "не имеет значения вообще". Тем не менее, это не остановило SEO-полемику.

Будучи не в состоянии избежать споров, я не мог не вмешаться в них - в попытке прояснить несколько общих моментов и заблуждений, которые я постоянно вижу.

Так имеет ли значение для SEO структура HTML?

Когда Иллиес говорил о структуре HTML, он, скорее всего, имел в виду некоторые моменты, на которых так любят зацикливаться SEO-специалисты:

  • Количество тегов H1 на странице.
  • Порядок тегов H.
  • Использовать <b> или <strong>.
  • Использовать таблицы или стилизовать все на CSS.
  • Как высоко в исходном коде располагается текст.

На протяжении уже многих лет я постоянно вижу, как SEO-специалисты обсуждают эти моменты и хотя некоторые из них имели значение в старые добрые времена SEO, сейчас все уже не так.

Прежде чем перейти к рассмотрению вопроса о том, когда HTML имеет и не имеет значения для SEO, нам нужно сделать несколько оговорок.

Структура HTML на 100% все еще имеет значение для доступности.

Однако доступность не является прямым фактором ранжирования, так что это немного выходит за рамки данной статьи.

Отмечу, что если ваш сайт не доступен, то меньше шансов, что люди будут ссылаться на него или кликать по нему в будущем, так что это может потенциально повлиять на ваши SEO-показатели.

В недавно обновленном руководстве Google SEO Starter Guide есть упоминание про то, какое влияние оказывают заголовки на доступность и SEO:

"Семантический порядок заголовков - это хорошая практика именно для удобства чтения текста, но с точки зрения поиска Google не имеет значения, если вы используете их не по порядку. Интернет в целом не является валидным HTML, поэтому Google Search редко может полагаться на семантические значения, скрытые в спецификации HTML.

Также не существует идеального количества заголовков, которое должно быть на странице. Однако если вам кажется, что заголовков слишком много, то, скорее всего, так оно и есть".

Но как быть с остальной структурой HTML?

Основная проблема здесь заключается в нашей ментальной модели работы поисковых систем. Для большинства людей эта модель не изменилась с 90-х годов, когда поисковые системы в основном использовали лексический поиск. То есть поиск документа с наибольшим количеством упоминаний запроса.

Эти поисковые системы имели функции оценки, которые придавали дополнительный вес запросу, выделенному жирным шрифтом, и учитывали H1 больше, чем H2, и т. д.

К сожалению для нашей ментальной модели, поиск отошел от лексического подхода и все больше приближается к семантическому.

В семантическом поиске контент преобразуется в векторы, а алгоритмы, такие как BERT, RankBrain и т. д., используют для интерпретации "смысла" запроса и контента, а не просто смотрят, какие слова он содержит. В процессе преобразования контента в векторы большая часть HTML теряется.

Но дело не только в векторах, но и в рендеринге. До того как поисковые системы получили возможность рендерить JavaScript и исследовать DOM, им приходилось полагаться на подсказки HTML, но эти времена прошли.

Так же как они могут использовать алгоритмы типа passage-bert для определения наиболее релевантного сниппета на странице, они также могут использовать различные алгоритмы для определения основного заголовка - даже если он не находится в теге.

Конечно, <h1> здесь является подсказкой - но также важны размер шрифта, размещение, соответствие содержанию, и само предложение. Мы все видели, как многие SEO-специалисты выделяют крошечную часть навигации тегом H1, несмотря на то, что в центре экрана находится гигантский 30px текст, который является всего лишь тегом <span>.

В прежние времена поисковые системы испытывали трудности, но в наши дни они чаще всего могут правильно определить этот гигантский тег <span> как "заголовок" страницы.

Это не значит, что вы не должны использовать правильные теги H и вложенные элементы. Помните, что доступность по-прежнему важна, чтобы дать поисковым системам подсказку. Если вы сделаете это, страница станет чище, проще, доступнее и в целом лучше. Я просто хочу сказать, что поисковые системы не обязаны полагаться на разметку.

Еще одно заблуждение - многочисленные теги H1.

С появлением HTML5 и различных элементов совершенно нормально (а в некоторых случаях и необходимо) иметь на странице несколько тегов H1. Это не повлияет на ваши SEO-показатели.

Итак, что же делают поисковые системы?

Они определяют тег заголовка, ключевые заголовки (которые могут быть, а могут и не быть H1, H2 и т. д.) и основной текст. Затем они проведут лексические (например, BM25) и семантические (например, косинусное сходство) измерения, чтобы определить релевантность этих разделов запросу, а затем передадут их в алгоритм машинного обучения и ранжирования. В итоге, скорее всего, им уже неважно, H1 это или H2 - главное, что алгоритм определил его как "заголовок" страницы.

То же самое касается жирного текста, тегов span и div и т. д. Все дело в том, считает ли алгоритм (например, BERT) его релевантным запросу.

Итак, какое значение имеет структура HTML?

Структура HTML может сделать или разрушить вашу SEO-стратегию во многих случаях. Например, если поместить канонический тег в <body>, а не в <head>, он не будет замечен.

Аналогично, если вы поместите <div> в тег <head>, то Googlebot решит, что вы забыли закрыть head и начать body, и сделает это за вас, потенциально перемещая некоторые важные SEO-теги в body, где они будут проигнорированы.

Вы не поверите, как часто я это вижу. Достаточно одному человеку случайно вставить код в неправильное место в Google Tag Manager, чтобы сломать весь ваш сайт. Только по этой причине я советую клиентам убедиться, что все их SEO-теги находятся выше в , чем любые другие теги.

Другие приемы HTML-кодирования тоже могут навредить SEO.

Например, если вместо тега <a> с атрибутом href на вашем сайте используется <span> с событием onclick=, поисковые системы не будут считать это ссылкой, хотя пользователи не заметят разницы. Это также приводит к проблемам с доступностью, поэтому, пожалуйста, перестаньте так делать.

Когда дело доходит до изображений, поисковые системы требуют наличия тега <img> с атрибутом src=. Вы будете удивлены, как много плагинов для ленивой загрузки опускают src= в пользу srcset=, который, по моим последним тестам, работает в современных браузерах, но не рассматривается Google как "изображение" для ранжирования изображений.

Я не думаю, что любой из этих примеров был тем, что имел в виду Иллиес, говоря о структуре HTML. Скорее всего, он имел в виду общие аргументы в виде вложенности заголовков, тегов жирного начертания и т. д.

P.S. Если вы хотите вывести свой сайт в ТОП, задать вопрос или просто посоветоваться, то можете написать мне в Телеграм @sd_madmen и я с радостью вам помогу.

11
6 комментариев

Штош, это же так легко — стянуть, когда некому за руку поймать )