Как не дать Google Ads замедлить работу моего сайта (особенно мобильного)?
Я знаю, что многие веб-мастера считают, что скорость страницы ничего не значит. Тем не менее, я уверен, что этот фактор является одним из ТОП-3 в решении Google о ранжировании любого веб-сайта.
Я устал видеть, как собственные сервисы Google замедляют мои страницы. Я пишу чистый код. Когда я запускаю какой-либо веб-сайт / приложение, он получает оценку "А" в GTMetrix и Pingdom и 100/100 - в Google Page Speed (для мобильных устройств). Как правило, объявления Google не наносят вреда настольной версии.
Однако, как только я добавляю хотя бы одно объявление Google, мой рейтинг падает до "C" и 60-67/100 (для мобильных устройств).
Конечно, можно сказать, что Page Speed не является фактором ранжирования SEO. Хорошо, для NYT, WSJ, Bustle, HuffPost и т. Д. Может быть. Но для любого нового сайта скорость является решающим фактором.
Несправедливость в том, что Google указывает на свои собственные сервисы, которые замедляют мои (и ваши) проекты, такие как:
Есть 6 статических компонентов без даты истечения срока давности.
https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js
https://code.jquery.com/jquery-3.3.1.min.js (not Google)
https://adservice.google.ca/adsid/integrator.js?domain=xxx
https://adservice.google.com/adsid/integrator.js?domain=xxx
https://pagead2.googlesyndication.com/pub-config/r20160913/ca-pub-
xxx.js
https://fonts.googleapis.com/css?
family=Open+Sans:400,700|Roboto:700&lang=en
Сократите поиск DNS:
pagead2.googlesyndication.com: 6 components, 368.9K (136.4K GZip)
code.jquery.com: 1 component, 86.9K (30.2K GZip)
adservice.google.ca: 1 component, 0.1K (0.1K GZip)
adservice.google.com: 1 component, 0.1K (0.1K GZip)
googleads.g.doubleclick.net: 11 components, 173.4K (45.9K GZip)
fonts.googleapis.com: 1 component, 7.0K (0.6K GZip)
tpc.googlesyndication.com: 5 components, 153.0K (57.0K GZip)
www.google.com: 1 component, 0.2K
Избегайте перенаправлений URL:
https://www.google.com/pagead/drt/ui redirects to
https://googleads.g.doubleclick.net/pagead/drt/si
Сократить время выполнения JavaScript:
/pagead/ads?client=…(googleads.g.doubleclick.net)
/pagead/ads?client=…(googleads.g.doubleclick.net)
…js/adsbygoogle.js(pagead2.googlesyndication.com)
…r20100101/osd.js(pagead2.googlesyndication.com)
…r20180604/show_ads_impl.js(pagead2.googlesyndication.com)
…activeview/osd_listener.js(tpc.googlesyndication.com)
и тд и тд и тп...
Я знаю, что я не могу редактировать код на их стороне. Но, может быть, есть какой-то способ отложить рекламу Google или сделать какую-то другую хитрость, чтобы уменьшить вред от собственных служб Google? По крайней мере, есть кто-то, кто имеет 100/100 баллов на Google Page Speed (для мобильных устройств), имея 2-3 объявления Google на странице?
0 ответов
У меня были некоторые тесты и внимательное рассмотрение этих вопросов в последнее время. Так что есть некоторые решения и рекомендации, связанные с этим.
Основная цель состоит в том, чтобы минимизировать влияние на скорость вашего сайта и переместить все сценарии преобразования и сторонние сценарии для более низкой приоритетной загрузки, например, добавить их в нижний колонтитул, а не в заголовок, как предлагают все эти службы. Вы не потеряете много времени для загрузки этих сценариев с более низким приоритетом с точки зрения отслеживания и анализа. Возможно, вы немного увеличите вероятность того, что некоторые конверсии не будут отслеживаться и будут пропущены в ваших отчетах, но в то же время вы улучшите скорость сайта для всех пользователей. Исключением будет держать Google Analytics или Google Tag Manager в голове, поскольку это может иметь более высокий приоритет и важно с точки зрения функциональности и отслеживания.
Другой важной и полезной практикой является проверка и удаление всех тегов, в которых у вас нет активных кампаний, и сохранение на веб-сайте только этих сценариев отслеживания, что важно с точки зрения маркетинга и отслеживания, а также что имеет смысл.
Мой рекомендуемый метод управления всеми этими сторонними сценариями - использовать Google Tag Manager и управлять всеми этими тегами.
Как оптимизировать скорость сайта при использовании сторонних скриптов с Google Tag Manager:
- Расставьте приоритеты загрузки всех ваших скриптов и упорядочите их по приоритетам
Используйте триггер просмотра страниц Google Tag Manager для запуска тегов при загрузке страниц в веб-браузерах. Существует три типа триггеров, которые отслеживают события загрузки страницы, и у каждого типа есть немного разные критерии, чтобы определить, когда триггер должен запускать тег:
Просмотр страницы: срабатывает сразу, когда веб-браузер начинает загружать страницу. Используйте эту опцию, если вам нужны только данные, полученные из показов страницы.
DOM Ready: запускается после того, как браузер завершил построение полной страницы в HTML, и объектная модель документа (DOM) готова для анализа. Теги на основе просмотра страниц, которые взаимодействуют с DOM для заполнения переменных, должны использовать этот тип триггера, чтобы гарантировать, что правильные значения доступны для диспетчера тегов.
Window Loaded: запускается после полной загрузки страницы, включая любые встроенные ресурсы, такие как изображения и сценарии.
Чтобы создать новый триггер просмотра страницы:
- Нажмите Триггеры, а затем Новый.
- Нажмите Конфигурация триггера и выберите тип триггера просмотра страницы.
Необязательно, но рекомендуется для повышения производительности. Укажите условия (обычно шаблон URL) для страниц, на которых ожидается клик:
- Под заголовком "Этот триггер срабатывает", выберите "Некоторые события".
- В разделе "Запустить этот триггер, когда происходит событие и все эти условия выполняются", добавьте фильтр, чтобы включить этот триггер только на тех страницах, где он требуется, например, URL-адрес клика содержит /path/to/promo.
Сохраните триггер и опубликуйте.
Источник: https://support.google.com/tagmanager/answer/7679319?hl=en
Я рекомендовал использовать триггер просмотра страницы только для самых важных тегов, например, Google Analytics. Для всех остальных тегов вы должны использовать как минимум DOM Ready или, что более вероятно, триггеры Page Loaded. Использование триггера Page Loaded даст меньшее влияние на скорость вашего сайта для всех этих сторонних тегов, но вы увеличите вероятность того, что некоторые конверсии не будут отслеживаться, если пользователи закрывают страницу "Спасибо" раньше, чем загружается скрипт отслеживания.,
Иногда сценарии, такие как HotJar или аналогичные сценарии тепловых карт, должны использоваться вместе со сценарием просмотра страницы, чтобы повысить точность этих аналитических данных.
Если вы добавите некоторые чаты или средства поддержки на свой веб-сайт, то для этих сценариев следует также использовать триггер Page Loaded.
- Просмотрите и обновите сценарии по мере необходимости.
Вы должны просмотреть, изменить или поставить на паузу теги, которые вы не используете, или эти сторонние инструменты не имеют активных кампаний.
Используйте подсказки ресурса: предварительная выборка DNS и / или предварительное подключение
Кроме того, вы должны использовать эти подсказки ресурсов для всех ваших сторонних ресурсов, загружаемых из другого домена. Поскольку оба не поддерживаются для одних и тех же браузеров, я бы рекомендовал использовать оба из них.
Короче говоря, вы должны использовать их для всех доменов, упомянутых в разделе "Уменьшение числа поисков DNS".
Код, который вы должны добавить к своей голове, должен выглядеть так:
<!-- Prefetch DNS for external assets -->
<link rel="dns-prefetch" href="//fonts.googleapis.com">
<link rel="dns-prefetch" href="//www.google-analytics.com">
<link rel="dns-prefetch" href="//cdn.domain.com">
<!-- Preconnect for external assets -->
<link rel="preconnect" href="//fonts.googleapis.com" crossorigin>
<link rel="preconnect" href="//www.google-analytics.com" crossorigin>
<link rel="preconnect" href="//cdn.domain.com" crossorigin>
Особенно замечаю fonts.googleapis.com
на многих сайтах, которые вешают страницу, загружают до 10+ секунд. Это очень раздражает, потому что мой блокировщик рекламы uBlock Origin не блокирует это.
Некоторые вещи, которые вы можете сделать, это разместить контент на ваших собственных серверах (шрифты, JQuery), но тогда люди не будут кэшировать их для часто используемых библиотек. (Вероятно, у всех есть последняя версия JQuery в своем кеше уже из CDN, потому что все веб-сайты используют его.) Вы можете попробовать разместить рекламные сценарии, но Google, вероятно, часто их изменяет или включает хэш для каждого уникального пользователя, который будет сделать это невозможно. Если они не уникальны для каждого пользователя, вам может потребоваться их частое обновление в фоновом режиме, возможно, каждый час или день. Неуверенный.
Кроме того, поместите <script>
теги внизу страницы, даже после </body>
, но прежде </html>
, Это будет загружать сценарии последними и загружать объявления последними.
Еще одна вещь, которую вы можете сделать, это разместить JQuery $(document).ready() {...}
функция для вставки рекламы <script>
теги и <iframe>
(?) теги в соответствующих местах после загрузки документа. Тогда они не будут учитываться при загрузке вашей страницы. Использовать <div class="ad"></div>
заполнитель.