Сайт красивый, работает быстрее, юзабилити на высоте — конечно, все считают, что это идеальное решение. Но почему SEO у SPA не ладится? На это есть несколько причин — о них ниже.
Роботы не справляются с рендерингом — и страница превращается в «пустышку»
Основная проблема в том, что основной контент SPA-сайтов формируется на JavaScript, а если его убрать, страничка превращается в «шаблон» — полную копию остальных.
Чтобы этого не происходило, скрипты нужно предварительно рендерить. ПС это умеет, но делает это не всегда.
Да, еще в далеком 2015 году Google объявлял, что теперь-то он понимает JS и достаточно открыть скрипты для индексации. Но что происходит на деле? Боты просто не рендерят страницы: то из-за большой нагрузки на сервер, то из-за экономии ресурсов.
Эти проблемы всплывают, когда роботы обходят сайты.
Сначала робот сканирует исходный код и смотрит, как выглядит страница. Он должен понимать, что на сайте есть все, что необходимо пользователю. Но в SPA-версии он не видит основную часть контента, поэтому может просто не понять, что содержится на странице. Чтобы увидеть больше, боту нужно выполнять скрипты и рендерить их. И тут остается два варианта: бот уходит и помечает страницу как неинтересную или дает сайту шанс и приглашает второго бота.
И даже если второй робот все-таки пришел — справляется не всегда. Если на сайте одновременно много пользователей и время загрузки увеличилось — человек может немного подождать или даже не заметить изменений. Но у бота все четко: не загрузили страницу за пять секунд — до свидания. Бывает, что он отрендерил первую страницу и увидел, что на ней все как положено — значит, можно переходить к следующей. Но на второй нужно рисовать все по новой, а у бота уже не остается на это ни времени, ни сил, ни желания. Тогда он уходит, и сайт остается непроиндексированным.
Короче говоря:
Продвигать SPA - это боль, кровь и слезы. Сеошник не может достучаться до бекэнда напрямую и обычно появляется лишнее звено в коммуникациях, у которого более высокие полномочия, но много других дел. В итоге, вместо квартала оптимизация растягивается на полтора года. Зато дорого и богато в плане технички.
Чтобы не было проблемы «достучаться», для этого в агентствах есть отдельный специалист по достукиваниям - Аккаунт Менеджер
Как подметили выше, технологию чаще используют толковые команды с адекватным бюджетом (что в общем-то не помогает решить проблему ранжирования без SEO специалиста). Поэтому, либо выделяется бюджет на работу команды, либо внедряется SSR, который позволяет забыть о годовых задержках на беке и оптимизировать SPA в те же сроки, что и любой другой сайт.
Хороший текст.
Справедливости ради: проблемы встречаются не очень часто, поскольку технологию используют компании с нормальным бюджетом, и как правило, делают их толковые команды, имеющие представление и о рендеринге, и о кэшировании.
А в продвижении какие результаты? Индексация-то увеличилась. А позиции? Охват?
Ну так решение ж давно есть, а-ля vk, facebook, даже я у себя на хобби-проекте еще лет 10 назад сделал вариант без перегрузки страницы и с таким же seo как если он был обычным
Это ж в целом легко, обычный сайт грубо говоря, в случае тыка по внутреммним ссылкам просто подгружаем контент, меня урл и все (через history). Получается для поисковиков обычный сайт, для юзера без перезагрузок