CRM-система в Google Таблице (GTM + Measurement Protocol)

Поділитися
Вставка
  • Опубліковано 23 сер 2021
  • Отрывок из онлайн-курса по сквозной аналитике, где слушатели учатся практическим навыкам настройки CRM-системы и инструментов веб-аналитики для отслеживания пути клиента от клика по рекламе до его повторных продаж, а также созданию отчетов, позволяющих принимать верные решения и увеличат прибыль компании.
    В этом видео мы с помощью нестандартных приемов работы с Google Tag Manager создаем собственную CRM-систему на базе Google Таблиц, в которую будут поступать все обращения с сайта. А благодаря Measurement Protocol эти обращения мы привязываем к статусам сделок и передаем эту информацию обратно в Universal Analytics.
    На курсе используются такие инструменты, как: Яндекс.Метрика, Universal Analytics, Google Analytics 4, Google BigQuery, Google Tag Manager, AdPlanner, Google Data Studio, Microsoft Power BI, CRM-системы, различные готовые решения сквозной аналитики, коннекторы, чаты, коллтрекинги и многое другое.
    Хотите научиться настраивать сквозную аналитику?
    Тогда добро пожаловать 👉 learn.osipenkov.ru/end-to-end
    ---
    Мои контактные данные:
    Сайт: osipenkov.ru/
    ВКонтакте: yakov.osipenkov
    Facebook: yakov.osipenkov
    Telegram: @YakovOsipenkov
    Instagram: yakov.osipenkov
    Почта: ya.osipenkov@icloud.com

КОМЕНТАРІ • 19

  • @user-sw8ib6wz5x
    @user-sw8ib6wz5x Рік тому

    здравствуйте! а почему заявки приходят с десктопа, а с мобильного нет? я не ставила гугл аналитику и шаг с куки для id тоже пропустила. мне нужно отслежиdfть с какого реламного места пришла заявка и все.

    • @YakovOsipenkov
      @YakovOsipenkov  Рік тому

      Добрый день. К сожалению, так сказать не могу, нужно проводить диагностику вашего контейнера и кода

  • @user-kq4ef1yc3r
    @user-kq4ef1yc3r 2 роки тому

    Яков, привет! Подскажи пожалуйста, если транзакция была 1.10.2021, а событие refund через measurement protocol я отправил лишь 10.10.2021, должна ли транзакция исчезнуть в отчете за 1.10.2021? У меня эта транзакция фигурирует в отчете за 1.10.2021 и генерит доход, хотя мне нужно, чтобы доход по отмененной транзакции не учитывался. Как это можно реализовать?

    • @YakovOsipenkov
      @YakovOsipenkov  2 роки тому

      Добрый день. Удалять/изменять исторические данные в Google Analytics нельзя. В нем есть возможность создать запрос на удаление данных, но это вам не подойдет

    • @user-kq4ef1yc3r
      @user-kq4ef1yc3r 2 роки тому

      @@YakovOsipenkov Спасибо за ответ. Я вижу решение проблемы в том, чтобы передавать событие транзакция по MP при факте оплаты онлайн или получении товара в пункте выдачи. Подскажи пожалуйста, как можно записать транзакцию датой оформления заказа, а не датой доставки в другой город и оплаты при получении, ведь это могут быть разные месяца?

    • @YakovOsipenkov
      @YakovOsipenkov  2 роки тому +1

      @@user-kq4ef1yc3r это всегда так. Дата оформления заказа не равна дате получения заказа человеком по факту и его оплаты. Поэтому вам нужно определиться как вы должны смотреть в отчете в итоге - когда человек оформил заказ на сайте (условно 17.10.2021) или когда он оплатил и получил его (например, 31.10.2021). При передаче через MP дата не указывается, и передаваемое событие будет записано в ту дату, когда оно совершено

    • @user-kq4ef1yc3r
      @user-kq4ef1yc3r 2 роки тому +1

      @@YakovOsipenkov Спасибо за информацию. Пришел к тому, что буду мэтчить в data studio данные аналитикса и данные по реальным продажам. Сначала путем импорта из google sheets, а потом уже реализуем прокидывание данных из БД в Data Studio

    • @YakovOsipenkov
      @YakovOsipenkov  2 роки тому +1

      Да, такой вариант возможен. Я бы тоже делал сведение не на стороне Google Analytics

  • @vladtrokhanovsky2180
    @vladtrokhanovsky2180 Рік тому

    это мой код спионеренный, может в нем проблема((

  • @vladtrokhanovsky2180
    @vladtrokhanovsky2180 Рік тому

    если не трекает в СRM с MACов, что делать?

    • @vladtrokhanovsky2180
      @vladtrokhanovsky2180 Рік тому

      Заранее спасибо

    • @YakovOsipenkov
      @YakovOsipenkov  Рік тому

      сложно так сказать.. либо пренебрегать этими обращениями, либо пытаться найти причину. вполне вероятно, что на уровне браузера есть какая-то блокировка по трекерам

    • @vladtrokhanovsky2180
      @vladtrokhanovsky2180 Рік тому

      @@YakovOsipenkov я наверное неправильно выразился(. Я имел ввиду ваш метод CRM(GoogleSheets). я сделал так же как у вас на видео, но с маков заявки не заходят(

    • @YakovOsipenkov
      @YakovOsipenkov  Рік тому

      @@vladtrokhanovsky2180 вы уверены, что только с маков. а со всех остальных ОС приходят? Возможно, вы неверно настроили сам Google Tag Manager и его тег

    • @vladtrokhanovsky2180
      @vladtrokhanovsky2180 Рік тому

      @@YakovOsipenkov а в чем может быть неправильность?) Я правда функцию другую вставил в скрипт, но...

  • @vladtrokhanovsky2180
    @vladtrokhanovsky2180 Рік тому

    var SHEET_NAME = "";
    var SHEET_KEY = "";
    function doPost(e) {
    var lock = LockService.getPublicLock();
    lock.waitLock(30000); // Подождать до 30 секунд, пока завершатся другие процессы
    try {
    // Запись данных - вы можете использовать несколько альтернативных адресатов
    var doc = SpreadsheetApp.openById(SHEET_KEY);
    var sheet = doc.getSheetByName(SHEET_NAME);
    // Предполагается, что заголовок находится в строке 1, но вы можете переопределить header_row в данных GET / POST
    var headRow = e.parameter.header_row || 1;
    var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0];
    var nextRow = sheet.getLastRow() + 1; // Получаем следующую строку
    var row = [];
    // Перебираем столбцы заголовков
    for (i in headers) {
    if (headers[i] == "Timestamp") { // Особый случай, если вы используете столбец Timestamp
    row.push(new Date());
    } else { // Иначе используется имя заголовка для получения данных
    row.push(e.parameters[headers[i]]);
    }
    }
    // Наиболее эффективно устанавливать значения в виде массива []
    sheet.getRange(nextRow, 1, 1, row.length).setValues([row]);
    // Возвращаем успешный результат в виде JSON
    return ContentService
    .createTextOutput(JSON.stringify({ "result": "success", "row": nextRow }))
    .setMimeType(ContentService.MimeType.JSON);
    } catch (e) {
    // В случае ошибки вернуть это
    return ContentService
    .createTextOutput(JSON.stringify({ "result": "error", "error": e }))
    .setMimeType(ContentService.MimeType.JSON);
    } finally { // Снимаем блокировку, чтобы другие процессы могли продолжить работу
    lock.releaseLock();
    }
    }

  • @artemisfauls
    @artemisfauls Рік тому

    Походу CRM из Google Sheets больше не работает в 2023 для GA4, потому что нужно передавать (Секретный ключ API для Measurement Protocol) - У вас в коде он не указан. И у вас нет в GTM передачи события Status (ВЫПОЛНЕНО, В ОБРАБОТКЕ, ОТМЕНЕНО). В общем все работает, но статус в GA4 не передается. 🙅‍♂

    • @YakovOsipenkov
      @YakovOsipenkov  Рік тому

      да, потому что этот пример изначально был показан для Universal Analytics, на базе которой можно построить сквозную аналитику. В 2021 году сделать это для GA4 не представлялось возможным