Все статьи
3 мин чтения#performance#instagram#tiktok

Ссылка в био открывается внутри Instagram, а не в Chrome

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

Что такое браузер внутри приложения

Когда человек жмёт ссылку в профиле Instagram, iOS и Android отдают приложению WebView — движок браузера, встроенный в другую программу. Движок рендеринга у него общий с Safari или Chrome, но на этом сходство и заканчивается. У него собственное хранилище, собственные куки, собственный жизненный цикл, и его могут убить в ту же секунду, когда пользователь свайпнет обратно в ленту.

Этот разрыв важен вот почему: страница, которую вы собрали и проверили на десктопе с быстрым интернетом, — это не та страница, которую получает ваша аудитория. Им достаётся холодный WebView, запущенный на сотовой связи и вынужденный бороться за память с видеолентой, которая всё ещё играет где-то позади.

Четыре вещи, которые ломаются

1. JavaScript приходит поздно или не приходит вовсе

Страница, которая рисует себя в браузере, обязана скачать фреймворк, разобрать его, выполнить и только потом что-то показать. На холодном WebView со слабым соединением это секунды пустого экрана. Некоторые браузеры внутри приложений вдобавок блокируют или задерживают сторонние скрипты, а на iOS блокировщики контента работают и внутри WebView. Если ваши ссылки появляются только после того, как отработает JavaScript, часть посетителей не увидит их никогда.

Лечится это не оптимизацией, а порядком действий. Рендерите страницу на сервере, чтобы в приходящей разметке ссылки уже были, и относитесь к JavaScript как к улучшению, которое может отвалиться, не утащив за собой всю страницу.

2. Хранилище изолировано и живёт недолго

Куки и local storage, выставленные внутри WebView приложения, часто не сохраняются и не разделяются с системным браузером. Всё, что завязано на то, чтобы узнать посетителя в следующий раз, здесь работает ненадёжно. Это одна из причин, по которым аналитика на клиентских куках недосчитывает трафик из приложений: посетитель каждый раз выглядит новым.

Подсчёт на сервере, в момент клика, обходит проблему целиком и не требует вообще никаких кук.

3. Картинки съедают всю загрузку

Фоновая фотография прямо с камеры телефона обычно весит от трёх до шести мегабайт. На хорошем соединении это пауза, на перегруженной соте — уход со страницы. А поскольку фоновая картинка почти всегда самый крупный элемент на экране, именно её измеряет метрика Largest Contentful Paint.

  • Уменьшайте до ширины, которую телефон реально показывает: около 1080px более чем достаточно.
  • Перекодируйте в AVIF или WebP, а не отдавайте исходный JPEG.
  • Слегка размывайте фон перед сжатием. Файл становится меньше, а текст поверх — читаемее.
  • Задайте жёсткий бюджет в байтах и снижайте качество шагами, пока файл в него не влезет, а не пропускайте сжатие, когда не влезло.
  • Вырезайте EXIF. В фотографиях с телефона лежат координаты GPS, и публичная страница — не место для них.

4. Кастомные URL-схемы не открываются

Ссылки вида tg:// или whatsapp:// внутри WebView ведут себя непредсказуемо, а иногда молча игнорируются. Используйте формы на https — t.me и wa.me: они открываются в браузере и уже оттуда передают управление приложению, если оно установлено.

Как проверить честно

  1. Откройте собственную страницу изнутри приложения Instagram, а не с десктопа.
  2. Сделайте это на мобильном интернете, отключив Wi-Fi.
  3. Выключите JavaScript в мобильном браузере и загрузите страницу снова. Все ссылки должны остаться на месте и работать.
  4. Посмотрите общий объём загрузки. Странице со ссылками в био нечем оправдать больше пары сотен килобайт.

Почему это ограничение дизайна, а не техническая мелочь

За каждое визуальное решение на странице со ссылками в био платит временем загрузки аудитория с телефонов. Градиентная сетка с размытием подложки отлично смотрится на ноутбуке и роняет кадры в WebView. Встроенный плеер с автозапуском стоит нескольких сотен килобайт ещё до того, как посетитель решит, нужен ли он ему вообще.

Это не значит, что страница обязана быть скучной. Это значит, что интересное должно жить в типографике, вёрстке и цвете, передача которых не стоит ничего, а не в эффектах, которые стоят очень дорого. Лучше всего в таких условиях работают страницы, которые выглядят продуманными, а не украшенными.

Читать дальше