Все записи
6 мин

Собрал свой Wordstat через Яндекс.Директ API: 6845 ключей и перестройка сайта под SEO

конверсияАвтоматизациявайбкодинг

Если совсем коротко, то вышло вот что. Я получил доступ к Яндекс.Директ API (со второй попытки, первую заявку отклонили), через него докрутил Wordstat и собрал свою обновляемую базу ключей, и первый же прогон выдал 6845 фраз без единого дубля, а дальше я на этом спросе перестроил всю информационную архитектуру сайта по схеме хаб, потом SEO-лендинг под фичу, потом флоу-страница. То есть я не пошёл покупать чужую выгрузку ключей, которая протухнет через месяц, а написал коллектор, который сам ходит в API, складывает фразы в базу и умеет считать, как меняется спрос со временем. И вот про это всё дальше и расскажу, честно, без прикрас.

Зачем вообще свой Wordstat, если есть сервисы

Тут надо понимать узкую боль. Когда вы чуть более углублённо начинаете лезть в SEO, вы довольно быстро упираетесь в то, что готовые сервисы дают вам срез на сегодня и всё, а вам-то нужно видеть динамику, то есть какие ключи где сколько раз искали, как растут запросы со временем, что было месяц назад и во что это превратилось сейчас. И платить за это каждый месяц, чтобы данные всё равно жили в чужой панели, мне как-то совсем не улыбалось. У меня в рабочей сессии так и записано почти дословно: вордстат надо свой какой-то в базе формировать чтобы обновлять его, какие ключи где сколько раз юзали, как растут запросы. Вот ровно это я и делал.

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

Доступ к API со второй попытки

Первую заявку на Директ API мне отклонили, причём формулировка была примерно в духе «опишите детальнее», то есть от меня хотели, чтобы я расписал, какие методы дёргаю, с какой частотой и как обрабатываю ошибки. Со второго раза, когда я всё это нормально описал, доступ дали. И тут случился приятный бонус, потому что вместе с Директом открылся ещё и Wordstat. У меня в переписке прямая реакция так и осталась: ого, они ещё и вордстатом дадут пользоваться что ли, если так то ШИК. Вот примерно с таким лицом я и сел писать коллектор.

Сам код, как обычно, я руками не писал, а оркестрировал Claude Code прямо с телефона. Поставил задачу, разложил на шаги, проверял каждый кусок по дороге. На выходе получился скрипт-коллектор и пара таблиц, одна под ключи, другая под историю объёмов, плюс набор сидов по тематике, 37 штук по семи направлениям, и к каждому сиду я ещё добавил синонимы, потому что без синонимов половину спроса вы просто не увидите.

Первый прогон и дыра на полтора миллиона

Первый запуск выдал 6845 ключей, ноль дублей, и всё идемпотентно, то есть повторный прогон не плодит мусор, а аккуратно обновляет то, что уже есть. И вот тут синонимы окупились с лихвой. Цифры спроса оказались такие: «знаки зодиака» это 3,5 миллиона показов, «гороскоп на сегодня» 1,43 миллиона, «матрица судьбы» 924 тысячи, «гадание онлайн» 702 тысячи, «карты таро» 659 тысяч. Это всё в той нише, в которой я кручу свой проект.

А теперь самое интересное и слегка обидное. «Матрица судьбы» суммарно по всем вариантам собрала около 1,3 миллиона спроса, и это спрос на фичу, которой у меня в продукте просто нет. Самая большая одиночная дыра, которую я нашёл. То есть люди миллион с лишним раз в месяц ищут конкретную штуку, а я им её не даю, потому что даже не подозревал, насколько это горячо. Без своей базы ключей я бы узнал об этом случайно и сильно позже, а тут оно вылезло на первом же прогоне. Вот вам, собственно, и ответ, зачем всё это вообще затевалось.

Хаб, а не натальная карта

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

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

Программные long-tail страницы

И последний слой это программная генерация long-tail. Когда у вас есть структурированный спрос, то грех не нагенерить страницы под предсказуемые хвосты. Берёте шаблон и комбинируете сущности: планета в знаке это примерно 120 страниц, пары совместимости около 144. Каждая такая страница ловит свой узкий запрос, которого по отдельности немного, но в сумме это уже приличный трафик. Контент под них, само собой, тоже не руками пишется, это автоматизация контента с помощью ии по заранее заданным шаблонам и голосу проекта. Про то, как нейросеть у меня за раз пишет сотни текстов, я уже подробно рассказывал отдельно, и тут ровно тот же подход, только теперь он ложится на нормальную SEO-структуру, а не в пустоту.

Грабли по дороге

Без них, понятное дело, не обошлось. Главная техническая засада в том, что версии Wordstat ведут себя по-разному. Четвёртая версия отдаёт нормальные числа показов, по ним и считаешь объём, а пятая на тот же самый запрос возвращает только булево hasSearchVolume, то есть есть спрос или нет его, а сколько именно непонятно. Для базы с цифрами это бесполезно, так что пришлось завязываться на ту версию, что отдаёт реальные числа.

Вторая засада это поле SearchedAlso, всякие «искали также». На широкой нормальной нише оно ещё может быть полезным, а на моей эзотерической оказалось чистым шумом и подтягивало кучу нерелевантного, что только засоряло базу. Я его для своих доменов просто выключил. И это, кстати, общий принцип работы с любым API: не глотать всё подряд, что отдаёт источник, а фильтровать под свою задачу, иначе утонете в мусоре и сами потом не разгребёте.

Что в итоге

По деньгам это вообще копейки, потому что доступ к API бесплатный, прогон коллектора стоит примерно ничего, а на написание всего этого через Claude Code ушло несколько часов моего вечера. А по результату у меня теперь есть своя обновляемая база на 6845 ключей, которая будет расти и показывать динамику спроса, перестроенная под этот спрос архитектура сайта и понимание, что одна непокрытая фича стоит мне около 1,3 миллиона показов каждый месяц. Это уже не гадание на кофейной гуще, а конкретные цифры, под которые можно нормально планировать разработку.

Мораль тут простая. Если вы строите что-то в интернете и хотите трафик из поиска, не покупайте чужую выгрузку ключей и не верьте на слово сервисам, а соберите свою базу через API, она и дешевле, и честнее, и показывает движение во времени. А дальше уже стройте сайт не как вам красиво, а как ищут люди: хаб, лендинги под фичи, программные хвосты. И не забывайте про антиканнибализацию, а то ведь сами у себя позиции и отъедите. Вот и делайте выводы.