Сезонная распродажа: сайт не выдержал наплыва, а реклама продолжала тратить бюджет

Магазин домашнего текстиля готовился к осенней распродаже два месяца, закупил товар, запустил рекламу в Яндекс Директе и в первый же час получил то, о чём мечтал: людской поток. Но сайт не выдержал. Страницы открывались по минуте, корзина зависала, заказ не отправлялся, а реклама продолжала тратить бюджет и приводить новых посетителей на сломанную витрину. История вымышленная, но сценарий хорошо знаком тем, кто хоть раз устраивал большую акцию.
Подготовка к распродаже
Компания продавала постельное бельё, пледы, подушки и полотенца через интернет-магазин на базе 1С-Битрикс и через небольшой офлайновый шоурум. Раз в год проводилась большая осенняя распродажа со скидками до сорока процентов. В прошлые годы она давала до трети годовой выручки, поэтому к ней готовились серьёзно.
Маркетолог заранее составил график: за две недели начать разогревающие публикации, за три дня запустить рекламу на подписчиков и прошлых покупателей, в день старта включить Яндекс Директ на широкую аудиторию. Бюджет на рекламу составил около четырёхсот тысяч рублей на неделю. Менеджер по складу подготовил остатки, дизайнер сделал баннеры, контент-менеджер загрузил новые цены.
Всё внимание было направлено на рекламу и товар. Вопрос, выдержит ли сайт десятикратно возросшую нагрузку, никто не задавал. В прошлом году сайт справлялся, а за год в магазин добавили много новых товаров с большими фотографиями, подключили дополнительные модули и установили виджеты, которые тянули сторонние скрипты. Серверный тариф остался прежним.
В карточках на Яндекс Картах и в 2ГИС тоже подготовились: обновили фото, указали акцию в описании, добавили ссылку на страницу распродажи. В шоуруме повесили плакаты с объявлением. По плану три канала должны были подталкивать друг друга, а покупатель мог выбрать, где ему удобнее купить.
Как всё начиналось
Старт был назначен на десять утра в пятницу. В девять сорок пять маркетолог проверил сайт: всё открывалось быстро. В десять включили рекламу, разослали письма и сообщения подписчикам, выложили объявление в соцсетях. К десяти пятнадцати на сайте было около трёхсот одновременных посетителей, что в пять раз больше обычного.
Первые тревожные признаки появились в десять двадцать. Главная страница открывалась по десять секунд, каталог — по двадцать. Менеджеры, которые сами оформляли тестовый заказ, не смогли добавить товар в корзину. Страница оформления зависла на шаге ввода адреса. Один из менеджеров воскликнул: «Сайт лежит!»
Маркетолог связался с хостингом и услышал, что нагрузка на сервер превысила допустимые пределы и процессор работает на пределе. Запросы к базе данных выстраивались в очередь. Страницы, которые раньше собирались за доли секунды, теперь собирались по полминуты, а многие вообще не успевали и показывали ошибку.
Реклама продолжала работать
Самое болезненное состояло в том, что реклама продолжала приводить людей. Яндекс Директ не знает, что сайт не отвечает: он считает клики, а клики шли исправно. Каждый клик стоил около двадцати рублей, и в первые два часа ушло больше сорока тысяч рублей. Посетители доходили до сайта, ждали, закрывали вкладку и уходили. Часть из них потом искала товар у конкурентов.
Менеджер по рекламе заметил это не сразу. В кабинете Директа статистика выглядела прекрасно: показов много, кликов много, средняя цена клика даже ниже плана. Отчёт Яндекс.Метрики показывал другое: показатель отказов взлетел почти до девяноста процентов, а число завершённых заказов за два часа составило три штуки при обычных тридцати-сорока.
В обеденное время стало ясно, что без вмешательства ситуация не изменится. Решение отключить рекламу далось тяжело: акция работает один раз в год, каждый час дорог. Но продолжать платить за клики на недоступный сайт было ещё хуже. Кампании приостановили в двенадцать сорок. К этому моменту потрачено уже около девяноста тысяч рублей.
Почему сайт не выдержал
Разбор занял два дня. Причин, как обычно, оказалось несколько, и ни одна не была экзотической. Первая: тариф хостинга был рассчитан на обычные будни и не имел запаса. Когда число одновременных посетителей выросло в пять-десять раз, процессор и память упёрлись в потолок.
Вторая причина: страницы каталога собирались при каждом заходе заново. Не было кэширования, то есть сохранения готовых страниц, которые можно отдавать мгновенно. Каждый посетитель заставлял сервер заново делать десятки запросов к базе данных. Для небольшой нагрузки это незаметно, для большой губительно.
Третья: страницы были перегружены. Огромные фотографии товаров весили по несколько мегабайт, на каждой странице грузились сторонние виджеты, счётчики и скрипты, из-за чего даже на хорошем соединении страница открывалась медленно. В пиковый момент всё это умножилось на сотни одновременных пользователей.
Четвёртая: акцию никто не тестировал под нагрузкой. Ни разработчики, ни маркетолог не проверили, что произойдёт, когда на сайт придёт в несколько раз больше людей. Разработчик, сопровождавший магазин, не знал о дате акции, а маркетолог не знал, что серверу нужен запас. Эти два человека просто не общались, и каждый считал, что другой обо всём позаботился.
Цена ошибки
Подсчёт финансовых потерь был неприятным. За первые три часа распродажи было оформлено около двенадцати заказов вместо ожидаемых ста двадцати. Средний чек в акцию составлял около четырёх тысяч рублей, значит, недобор только за эти три часа составил примерно четыреста тысяч рублей. Если бы сайт работал весь день, по плану предполагалась выручка около миллиона рублей.
К этому добавились потраченные рекламные деньги. Девяносто тысяч рублей ушли на клики, которые не принесли заявок. Стоимость одного заказа за эти часы составила почти семь тысяч рублей при среднем чеке четыре тысячи, то есть реклама работала в убыток. Ещё около пятидесяти тысяч рублей ушло на рассылки и размещения, которые привели людей на недоступный сайт.
Есть и скрытый ущерб. Часть покупателей, не дождавшись загрузки, ушла к конкурентам, и вернуть их удалось не всем. Несколько человек написали в социальных сетях, что сайт «лежит» в день акции. Несколько позвонили и жаловались менеджеру. Часть заказов приходилось принимать по телефону и записывать вручную, что вызвало ошибки в остатках и путаницу.
Как выкручивались в первый день
Менеджеры решили спасать ситуацию с помощью каналов, которые не зависели от сайта. В карточках в Яндекс Бизнесе и 2ГИС срочно добавили информацию: «В связи с большим спросом оформить заказ можно по телефону или в магазине, скидки действуют так же». Номер телефона был в карточках, и поток звонков действительно вырос.
Из шоурума в чат поставили двух сотрудников, которые отвечали на вопросы и принимали заказы по телефону. Те, кто звонил, получали подтверждение в мессенджере и ссылку на оплату. Это удержало часть выручки. По итогам первого дня телефоном и в шоуруме удалось продать почти на двести тысяч рублей.
Параллельно хостинг-провайдер увеличил ресурсы сервера. К пяти вечера сайт уже открывался, но реклама оставалась отключённой до утра следующего дня, пока разработчик не включил кэширование и не облегчил самые тяжёлые страницы. Утром в субботу рекламу включили заново, уже с ограничением суточного бюджета.
Что исправили после распродажи
Во-первых, перенесли сайт на более мощный тариф с запасом по ресурсам и с возможностью быстро наращивать мощность в дни акций. Во-вторых, включили кэширование страниц и результатов запросов, чтобы часто открываемые страницы отдавались без обращения к базе. В-третьих, сжали изображения и убрали ненужные виджеты. Время открытия каталога сократилось с двадцати секунд в пик до двух.
В-четвёртых, выстроили регламент подготовки к акциям. Маркетолог теперь сообщает разработчику дату и ожидаемую нагрузку за месяц до старта. Разработчик проверяет сервер, проводит тест на нагрузку и подтверждает готовность. Без подтверждения рекламу не запускают.
В-пятых, настроили автоматическую остановку рекламы. Если время ответа сайта превышает порог или число ошибок растёт, система присылает уведомление, а при серьёзном сбое реклама ставится на паузу. В кабинете Яндекс Директа ограничили суточные бюджеты и добавили правило, по которому расходы приостанавливаются, если за час нет ни одной заявки.
В-шестых, в Яндекс.Метрике завели уведомления о резком падении числа заказов и о росте отказов. Вместо того чтобы ждать сообщения от менеджера, команда теперь узнаёт о проблеме за несколько минут. Для магазинов на ХостСМС, 1С-Битрикс и ВордПресс принцип один и тот же, различаются только инструменты кэширования, но у каждой из этих систем они есть.
Как это связано с подходом 3 в 1
В этой истории спасли ситуацию именно те каналы, которые не зависели от сайта. Когда он перестал отвечать, у магазина остались карточки в Яндекс Бизнесе и 2ГИС, телефон и шоурум. Покупатели, которые искали магазин на карте, видели обновлённую информацию и звонили. Если бы эти карточки были заброшены, с устаревшим телефоном и без описания акции, потери оказались бы заметно больше.
Подход «3 в 1» как раз и строится на том, что три канала страхуют друг друга. Сайт и поиск, включая ответы нейропоиска, приводят основную массу людей. Карточка в Яндекс Бизнесе отвечает на вопрос «где и как купить прямо сейчас». Карточка в 2ГИС ловит тех, кто ищет магазин рядом в приложении. Заявки из каждого канала считаются отдельно, и по ним видно, где сейчас идёт основной поток.
Во время сбоя это стало особенно заметно. Число заказов с сайта упало почти до нуля, а число звонков по номеру из карточки на картах выросло в несколько раз. Если бы отдельного номера не было, менеджеры не поняли бы, что звонки идут из карточки, и не догадались бы обновить в ней сообщение. Отдельные номера и метки позволили увидеть картину вовремя.
Урок для планирования акций: готовить нужно все три точки входа. На сайте — мощность и быстрые страницы. В карточках — описание акции, актуальные часы работы и номер, по которому быстро ответят. В рекламе — ограничения бюджета и условия остановки. Если одна точка выйдет из строя, две другие должны удержать поток.
Хронология кратко
В десять утра включили рекламу и рассылки. В десять пятнадцать на сайте было втрое больше посетителей, чем в обычный пик. В десять двадцать каталог начал открываться по двадцать секунд. В одиннадцать оформление заказа перестало работать у большинства. В двенадцать менеджеры поняли масштаб проблемы. В двенадцать сорок остановили рекламу. В четырнадцать подключили дополнительные ресурсы сервера. В семнадцать сайт заработал стабильно, но реклама оставалась выключенной до утра.
Между первой тревогой и остановкой рекламы прошло два с половиной часа, и именно эти два с половиной часа стоили больше всего. Если бы существовал заранее оговорённый порог остановки и человек, который решает вопрос без согласований, потери были бы заметно меньше.
Чек-лист подготовки к распродаже
Сообщите разработчику и хостингу дату акции и ожидаемое число посетителей минимум за месяц. Проведите проверку нагрузки: смоделируйте в несколько раз больше посетителей, чем обычно. Включите кэширование и проверьте, что оно не мешает работе корзины и личного кабинета. Сожмите изображения и уберите ненужные сторонние скрипты.
Подготовьте запасной канал приёма заказов: телефон, мессенджер, форму обратного звонка, которая не зависит от тяжёлых модулей. Обновите карточки в Яндекс Бизнесе и 2ГИС, укажите акцию, часы и актуальные номера. Установите суточные лимиты в Яндекс Директе и задайте правило остановки при отсутствии заявок. Назначьте дежурного, который в первые часы акции следит за скоростью сайта, числом заказов и расходом рекламы. Заранее договоритесь, кто и при каких условиях имеет право выключить рекламу.
Подготовьте заготовленное сообщение для клиентов на случай сбоя: на сайте, в карточках и в мессенджерах. Проверьте, что оплата проходит, а письма с подтверждением уходят. Сделайте пробный заказ за час до старта. И после запуска сделайте ещё один, а потом повторяйте каждые полчаса.
Что осталось в памяти команды
Через месяц команда провела разбор и записала три правила. Первое: акция — это общий проект маркетинга и разработки, и без подтверждения технической готовности она не стартует. Второе: реклама никогда не работает без наблюдателя, который в любой момент может её остановить. Третье: карточки на картах считаются полноценными каналами продаж и обновляются перед каждым большим событием.
Следующая распродажа весной прошла спокойно. Сайт выдержал в несколько раз большую нагрузку, заказы шли без задержек, а вечером команда сравнила результаты: выручка по сайту выросла, а доля заказов, пришедших по звонкам из карточек, составила почти пятую часть. Эта цифра стала аргументом для того, чтобы продолжать вкладываться в карточки, а не считать их мелочью.
Вывод
Сайт, который не выдерживает наплыва посетителей, превращает успешную рекламу в расходы без отдачи. Потери этой вымышленной компании измерялись сотнями тысяч рублей, а причина состояла в том, что никто не отвечал за связку «реклама плюс сайт плюс сервер». Исправления были несложными и недорогими: запас мощности, кэширование, облегчённые страницы, пороги остановки рекламы и обновлённые карточки.
Если вы готовитесь к акции, сезонному пику или большой рекламной кампании и хотите убедиться, что сайт и карточки на картах выдержат нагрузку, обратитесь за бесплатной консультацией к специалистам компании «Сайты Профессионально»: мы проверим готовность сайта, настроим учёт обращений по трём каналам и поможем выстроить схему, при которой реклама не тратит деньги впустую.
Хотите получить бесплатную диагностику сайта?
Получите бесплатную экспресс-диагностику за 24 часа. Проверим ошибки, сбои, скорость, безопасность и скрытые ошибки — пришлём отчёт с рекомендациями.
- Скорость загрузки и мобильная версия
- Уязвимости, вирусы, взломы
- Битые ссылки, дубли, SEO-ошибки
- Статус домена, SSL, хостинга
Популярные решения наших клиентов:

До 10 часов работ в мес.
Ежедневная диагностика
Продление домена
Продление хостинга/сервера

До 40 часов работ в мес.

До 100 часов работ в мес.
