Power BI для SEO — удобный мониторинг видимости сайта

Продвижение сайта является сложны процессом, который требует постоянного мониторинга его видимости по заданной тематике в категории, подкатегории и сайта в целом. Отслеживание ранжирования сайта дает возможность своевременно влиять на локальные изменения, выбирать наиболее удачные категории для эффективного продвижения.

Давайте рассмотрим, как бесплатные инструменты Power BI и Google Sheets позволяют сформировать удобную платформу для мониторинга изменений видимости ресурса.

Далее мы расскажем:

  • что собой представляет Power BI;
  • что лучше применять для отслеживания метрики;
  • что нужно сделать с данными перед отправкой в Power BI;
  • как посредством Power BI получать, обрабатывать и визуализировать полученную информацию.

Что такое Power BI?

Данный инструмент набирает популярность в сфере бизнес-аналитики, он предоставляет возможность получать, обрабатывать и визуализировать информацию, полученную из различных источников: файлов, баз данных, разнообразных API.

Существует два вида приложений:

  • Power BI Desktop — десктопное приложение, чаще применяется для структурирования отчетов.
  • Power BI Service — онлайн-приложение, подходящее для анализа онлайн-отчетов.

Оценка видимости

В работе применяются следующие метрики:

  1. Абсолютное значение запросов в ТОП-10 / ТОП-5 (условное обозначение TOП10);
  2. Относительное значение запросов в ТОП-10 / ТОП 5 (%ТОП10);
  3. Абсолютное значение частоты, которая находится в ТОП-10 / ТОП 5 (WS-ТОП10);
  4. Относительное значение частоты, которая находится в ТОП-10 / ТОП 5 (WS%-ТОП10).

Приведенные метрики можно применять к ресурсу, группе файлов, выбранным запросам и документу.

Пример отчета по категориям:

Из отчета можно понять, что у категории GIGI низкая видимость (всего 17% запросов в ТОП-10), при этом лишь 6% от Wordstat в ТОП-10. Это говорит о том, что в ТОПе находятся низкочастотные запросы.

У категории TIGI обратная ситуация: хорошая видимость (78% запросов в ТОП-10) за счёт высокочастотных/низкочастотных запросов (91% от Wordstat в ТОП-10).

Категория Kerastase имеет среднюю видимость, но основная часть запросов находится за пределами ТОП-10.

Как подготовить информацию для отправки в Power BI?

Чтобы сформировать отчет, потребуются следующие данные:

  • Структурированное семантическое ядро в файле Google Sheets;
  • Позиции по датам — удобно получать через API, но можно выгружать в Google Sheets. В статье использован API сервис съема позиций Seolib.ru;
  • Отдельный список продвигаемых URL в Google Sheets — необходимо для группировки страниц, на которых были произведены изменения.

Отдельный список URL

Предположим, на некоторых страницах добавилось вхождение в Title и ссылки, а текст убрали. Далее мы отслеживаем в Power BI, как изменения оказали влияние на видимость URL. Для этого нужно сгруппировать страницы по типу вносимых изменений.

Создаем файл, где присваиваем нужному URL тег, который соответствует корректировке: изменен Title, удален текст, добавлено вхождение в ссылку. В дальнейшем это позволит объединить страницы по заданным тегам.

Следует, чтобы в файле были приведены следующие столбцы:

Структура семантического ядра в Google Sheets

Семантическое ядро следует добавить в Google Sheets и структурировать следующим образом:

Категория —> Подкатегория —> Запрос —> URL | Изменение 1 | Изменение 2 | Изменение 3 / WS / “WS” / !WS (где WS — частоты по Яндекс. Вордстату).

В столбцы Изменение 1, Изменение 2, Изменение 3 следует перенести теги из файла, который мы сформировали ранее. Для этого понадобится следующая формула:

=IFERROR(VLOOKUP($D2;IMPORTRANGE(«id-файла-с-тегами»;»$A$1:$D$10000″);2;FALSE);»Без группы»)

Где

  • $D2 — ячейка с нужным URL;
  • “id-файла-с-тегами” — id файла, из которого мы импортируем теги;
  • $A$1:$D$1000 — диапазон таблицы с тегами;
  • 2 — номер столбца с необходимым тегом.

Далее мы публикуем файл в интернете в формате CSV:

  • нажимаем Файл = > Опубликовать в интернете;
  • выбираем: Весь документ = > Формат CSV;
  • сохраняем полученный URL.

Позиции по датам

Лучший метод получения данных по позициям — использование API сервиса. API позволяет напрямую отправлять данные в Power BI, минуя экспорт в интерфейсе сервиса.

Чаще всего работа с API включает в себя следующие процессы:

  • получение уникального токена;
  • формирование и отправка запроса;
  • получение данных.

Сформированный запрос по API сервиса SEOlib должен выглядеть примерно так:

https://api.seolib.ru/v1/project/history/positions/by/daterange.json?access_token={уникальный-токен}&construct=rel&project_id={id-проекта}&filter_range=30.05.2017-31.05.2017

Если у вас отсутствует доступ по API, позиции следует выгрузить в Google Sheets и опубликовать в формате CSV.

Загружать информацию в Power BI необходимо по полученной ссылке.

Подключение и форматирование данных в Power BI

Непосредственно перед загрузкой информации в Power BI, нужно отключить политику конфиденциальности: Файл -> Параметры и настройки -> Параметры -> Конфиденциальность -> Игнорировать уровни конфиденциальности

Следующий этап – загрузка и обработка данных.

Загрузка семантики из Google Sheets

Чтобы загрузить сформированную в пункте структуру, следует:

  • Получить данные: нажать в ленте навигации Получить данные => Интернет. В появившееся поле вставить сохраненную ссылку на файл с семантикой;
  • Изменить кодировку: выбираем кодировку UTF-8 и нажимаем на кнопку Изменить.

Результат:

Загрузка позиций

Данная процедура происходит следующим образом:

  1. Создаем источник: следует выбрать в ленте навигации Создать источник = > Интернет, вставить в него сформированный запрос.

  2. Преобразуем данные в таблицу: для работы необходимо трансформировать полученный набор данных в обычную таблицу.

    Нажимаем Record:

    Перевести текст в таблицу:

    Развернуть нужные столбцы:

    В результате мы получаем:

  3. Добавляем столбец с индексом: этот столбец поможет нам с вычислением метрик.

    Выбрать в ленте навигации Добавить столбец => Столбец индекса -> Настроить:

    Начальный индекс — 1; Инкремент — 0:

  4. Заменить значения: зачастую сервисы проверки ставят позиции, находящиеся за пределами ТОПа, такие как ноль или прочерк.

    Приводим их к виду [максимальная глубина съёма] + 1.

    Например, если мы снимаем позиции с глубиной 100, значит, заменяем ноль или прочерк числом 101.

    Кликаем правой кнопкой мыши на столбце с позициями и в контекстном меню выбираем пункт Замена значений.

    У меня глубина парсинга 150 позиций, значит, я заменяю 0 числом 151.

  5. Объединяем данные: подтягиваем данные из таблицы со структурой в таблицу с позициями:

    • в таблице с позициями в ленте навигации выбрать Главная -> Слияние запросов;
    • в появившемся окне в нижнем выпадающем списке выбрать таблицу, из которой нужно получить данные;
    • теперь необходимо выбрать общие сущности в обеих таблицах, т. к. по этим сущностям будет осуществляться объединение. В наших таблицах — Поисковые запросы;
    • нажать «Ок» — и мы получим столбец со свёрнутыми таблицами;
    • развернуть нужные столбцы.
  6. Преобразование типов данных: в Power BI нужно очень внимательно следить за тем, какой тип данных имеет каждый из столбцов. Часто бывает так, что числовые данные имеют текстовый тип, а это приводит к ошибке при моделировании данных.

    Типы данных отображаются в иконках в заголовках таблиц:

    Чтобы преобразовать тип данных, стоит лишь кликнуть по этой иконке и выбрать нужный тип:

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

После того как мы загрузили все данные и произвели нужные манипуляции, можно загружать их в рабочую область:

В навигационной ленте нужно нажать «Закрыть и применить».

Моделирование данных

Чтобы отследить видимость, следует вычислить все нужные метрики. В этом вам помогут данные, которые вычисляются при помощи DAX.

DAX — это коллекция функций, операторов и констант, которые можно применять в формуле или выражении для вычисления и возврата одного или нескольких значений.

Для создания меры необходимо в ленте навигации выбрать Моделирование => Новая мера и в поле формулы с помощью языка DAX написать меру:

Можно создать такие меры, как:

  • ТОП10 — абсолютное значение запросов в ТОП-10;
  • %ТОП10 — относительное значение запросов в ТОП-10;
  • WS-ТОП10 — сумма частоты по Яндекс. Wordstat в ТОП-10;
  • %WS-ТОП10 — доля частоты по Яндекс. Wordstat в ТОП-10.

ТОП10

Считаем число запросов в ТОП-10 за последнюю дату в заданном диапазоне.

Формула DAX:

CALCULATE(SUM(‘ ваш-набор-данных'[Индекс]);FILTER(‘ваш-набор-данных’;’ваш-набор-данных'[Дата]=MAX(‘ваш-набор-данных'[Дата]));’ваш-набор-данных'[Позиция]<=10)

Здесь мы складываем значения столбца Индекс, если значение столбца Позиция меньше или равно 10. Значения суммируются только в том случае, если в столбце Дата число соответствует крайней дате в заданном диапазоне.

%ТОП10

Достаточно разделить количество запросов в ТОП-10 на общее количество запросов.

Формула DAX:

[ТОП-5]/CALCULATE(SUM(‘ваш-набор-данных'[Индекс]);FILTER(‘ваш-набор-данных’;’ваш-набор-данных'[Дата]=MAX(‘ваш-набор-данных'[Дата])))

WS-ТОП10

Аналогично мере ТОП-10, только здесь мы будем суммировать не значения поля «Индекс», а значения поля частот по Яндекс. Вебмастеру.

Формула DAX:

CALCULATE(SUM(‘ваш-набор-данных'[«!WS»]);FILTER(‘ваш-набор-данных’;’ваш-набор-данных'[Дата]=MAX(‘ваш-набор-данных'[Дата]));’ваш-набор-данных'[Позиция]<=10)

%WS-ТОП10

Формула DAX:

[WS-ТОП10]/CALCULATE(SUM(‘ваш-набор-данных'[«!WS»]);FILTER(‘ваш-набор-данных’;’ваш-набор-данных'[Дата]=MAX(‘ваш-набор-данных'[Дата])))

Аналогично следует сделать и для ТОП-5, ТОП-100.

Также нам нужна отдельная мера по позициям за крайнюю дату. Она позволит сформировать отчёт с разницей позиций за крайнюю и первую даты по каждому запросу.

Позиция сегодня:

CALCULATE(SUM(‘ваш-набор-данных'[Позиция]);FILTER(‘ваш-набор-данных’;’ваш-набор-данных'[Дата]=MAX(‘ваш-набор-данных'[Дата])))

Помимо этого, имеет смысл сделать меры, отображающие, насколько изменился процент запросов в ТОП-10 по сравнению с предыдущим периодом.

Обозначим эти меры следующим образом:

  • d-Позиций — разница запросов за крайнюю и первую даты;
  • d-%ТОП10 — разница % запросов в ТОП-10;
  • d-%WS-ТОП10 — разница доли частоты в ТОП-10.
  • D-Позиций

Формула DAX:

CALCULATE(SUM(‘ваш набор данных'[Позиция]);FILTER(‘ваш-набор-данных’;»ваш-набор-данных'[Дата]=MAX(‘ваш-набор-данных'[Дата]))) — CALCULATE(SUM(‘ваш-набор-данных'[Позиция]);FILTER(‘ваш-набор-данных’;’ваш-набор-данных'[Дата]=MIN(‘ваш-набор-данных'[Дата])))

d-%ТОП10

Разницу вычисляем по формуле: [% запросов в ТОП крайняя дата] — [% запросов в ТОП первая дата].

Формула DAX:

[%ТОП-10] — CALCULATE(SUM(‘ваш-набор-данных'[Индекс]);FILTER(‘ваш-набор-данных’;’ваш-набор-данных'[Дата]=MIN(‘ваш-набор-данных'[Дата]));’ваш-набор-данных'[Позиция]<=10)/CALCULATE(SUM(‘ваш-набор-данных'[Индекс]);FILTER(‘ваш-набор-данных’;’ваш-набор-данных'[Дата]=MIN(‘ваш-набор-данных'[Дата])))

d-%WS-ТОП10

Формула DAX:

[%-WS-ТОП-10]-CALCULATE(SUM(‘ваш-набор-данных'[«!WS»]);FILTER(‘ваш-набор-данных’;’ваш-набор-данных'[Дата]=MIN(‘ваш-набор-данных'[Дата]));’ваш-набор-данных'[Позиция]<=10)/CALCULATE(SUM(‘ваш-набор-данных'[«!WS»]);FILTER(‘ваш-набор-данных’;’ваш-набор-данных'[Дата]=MIN(‘ваш-набор-данных'[Дата])))

Визуализация данных

Теперь можно приступать к визуализации данных и созданию отчетов.

Отчет в Power BI может состоять из визуализаций, которые основаны на полученных наборах данных. Обработка и фильтрация данных могут быть разными.

Основные поля для работы включают в себя:

  • Страницу — на ней формируется отчет;
  • Визуализацию — различные графики и таблицы;
  • Поля — данные, на основе которых формируются визуализации;
  • Фильтры — удобная фильтрация данных на различных уровнях.

Посмотрим, как можно создать небольшой отчет:

  1. Добавить фильтр по датам.

    Выберите в панели «Визуализации» иконку с фильтром, а в панели «Поля» — поле «Дата»:

  2. Таким же образом добавить фильтр по полю «Изменение 1».
  3. Сформировать таблицу с нашими метриками.

    Выберите визуализацию «Таблица» и сформированные меры из набора данных.

  4. Добавьте таблицу с запросами.
  5. С помощью визуализации HierachySlicer сформируйте навигацию по категориям и подкатегориям.

В конце работы мы получили удобный отчет, с помощью которого можем отследить изменения видимости за интересующий нас период по категории и запросам. Данный метод позволяет моментально переключаться на нужную категорию и просматривать позиции запросов. Фильтр по изменениям предоставляет возможность отдельно отслеживать позиции запросов страниц, на которых были корректировки.

Следовательно, вы имеете возможность создавать свои отчёты и всегда контролировать видимость сайта. Основное преимущество Power BI в том, что проделать все эти шаги необходимо раз, в дальнейшем все данные будут обновляться при нажатии кнопки Обновить.