Автор:
Vlad Kononov
В этой статье мы расскажем, как добиться 100% точности отслеживания Shopify с помощью Stape и серверного GTM. Вы узнаете, как предотвратить потерю данных, улучшить атрибуцию и повысить эффективность маркетинга с помощью надежного и эффективного решения для отслеживания. Точная аналитика Shopify имеет решающее значение для достижения ваших бизнес-целей.
Вам нужны надежные данные, чтобы принимать решения о распределении бюджетов, оценивать эффективность кампаний и измерять окупаемость инвестиций. Знание того, какие KPI eCommerce отслеживать, помогает правильно интерпретировать эти данные и эффективно действовать. Потеря данных о конверсиях может привести к неполной картине и ошибочным решениям. К счастью, Stape предлагает решение, и в этой статье мы расскажем, как отслеживать 100% покупок на Shopify в любых ситуациях и отправлять все необходимые данные на аналитические и/или маркетинговые платформы, чтобы получать более ценные выводы, точные отчеты об атрибуции и эффективнее обучать ваши пиксели.
Хотя Shopify выпустила API веб-пикселей, который позволяет подписываться на различные события и отслеживать их точнее, вы могли заметить, что иногда часть заказов по-прежнему не передается на рекламные или аналитические платформы. Это может происходить по разным причинам - блокировщики рекламы, ограничения ITP, медленное интернет-соединение, сбой на устройстве пользователя или просто неудачное стечение обстоятельств. Любой из этих факторов может привести к потере данных о конверсиях.
Но не беспокойтесь, у Stape есть решение! С помощью серверного отслеживания для Shopify вы можете обойти эти распространенные проблемы.
Функция Data Store доступна на тарифах Pro и выше. Если вам нужно индивидуальное решение, вы можете связаться с нашим отделом продаж.
Избегайте ручной настройки событий
Stape Conversion Tracking для Shopify с Setup Wizard устанавливает серверный GTM за считанные минуты, автоматически создает основные события электронной коммерции и загружает готовые к использованию теги для Google, Meta, TikTok и других платформ. События проходят через платформу серверного отслеживания Stape, что помогает получать до 40% больше конверсий и повышать ROAS.
Кратко процесс внедрения выглядит следующим образом:
Перед тем как следовать приведенным ниже инструкциям, необходимо активировать Data Store:
1. Войдите в свой аккаунт Stape и выберите контейнер sGTM на панели управления.

2. Нажмите вкладку Data Store.
3. Нажмите Activate Data Store.

Stape Conversion Tracking app в Shopify позволяет легко установить Custom GTM and GA4 Loader и сделать отслеживание более устойчивым к блокировщикам рекламы. После того как вы установили GTM на Shopify, этот базовый уровень обеспечивает необходимый для вашего серверного контейнера сбор данных на стороне клиента. В сочетании с Cookie Keeper он также позволяет обходить ограничения ITP.
У нас есть отличные статьи и готовые шаблоны контейнеров, в которых объясняется, как реализовать этот шаг; ознакомьтесь с ними:
Отладка отслеживания Shopify с помощью веб- и серверного GTM: полное руководство – после запуска базовой настройки не пропускайте проверку. Изолированное оформление заказа Shopify означает, что теги могут выглядеть так, будто работают в режиме предварительного просмотра GTM, но незаметно переставать работать в рабочей среде.
Теперь нам нужно сохранить в Data Store файлы cookie, которые могут понадобиться нам в будущем.
В нашем примере мы будем сохранять файлы cookie Meta во время события «checkout_started» и отправлять их из веб-пикселя Shopify в sGTM. На этом этапе токен оформления заказа будет доступен, и мы сможем использовать его как параметр связывания, чтобы позже сопоставить вебхук с оформлением заказа и файлами cookie.
Аналогичный процесс можно применить к любой другой платформе, на которую вы хотите передавать данные.
Приведенный ниже фрагмент кода отправит данные запроса с токеном оформления заказа и файлами cookie Meta на URL серверного контейнера. Data Client обработает этот запрос; по умолчанию он принимает запросы по пути /data.
analytics.subscribe("checkout_started", (event) => {
setTimeout(() => {
async function getCookiesPayload() {
try {
const payload = {
"event": "store_cookies",
"cart_token": init.data.cart.id,
"fbp": await browser.cookie.get('_fbp'),
"fbc": await browser.cookie.get('_fbc')
};
return payload;
} catch (error) {
console.error('Error retrieving cookies:', error);
return null;
}
}
async function sendCookiesToSgtm() {
const payload = await getCookiesPayload();
if (payload) {
fetch("https://sst.example.com/data", {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify(payload),
keepalive: true
}).then(response => {
console.log('Payload sent successfully:', response);
}).catch(error => {
console.error('Error sending payload:', error);
});
}
}
sendCookiesToSgtm();
}, 1500);
});Теперь нам нужно сохранить эти cookie в Stape Store с помощью Stape Store Writer tag, доступного в галерее серверного GTM, чтобы позже получить их и передать в Meta через вебхук. Эти файлы cookie будут связаны с токеном корзины, доступным нам в событии «store_cookies», который также будет доступен в данных нативного вебхука, отправленного Shopify.
Вот пример того, как можно настроить тег Stape Store Writer:

Если применимо, также учитывайте требования законодательства о конфиденциальности и статус согласия на рекламу и/или аналитику магазина, чтобы позже можно было проверить, дал ли пользователь согласие и имеете ли вы право передавать эту конверсию. В качестве альтернативы, если ваш баннер согласия поддерживает Shopify Privacy API, вы можете настроить веб-пиксель так, чтобы он срабатывал только после получения необходимого статуса согласия.
Нам нужно сохранять в Data Store каждую покупку, переданную веб-контейнером обычным способом, чтобы позже проверить, была ли эта конверсия уже передана в Meta.
Используйте подход, аналогичный описанному на предыдущем шаге, но на этот раз используйте transaction_id в качестве ключа документа, который также будет доступен в данных вебхука Shopify.
Вот пример тега Stape Store Writer, который можно настроить для этой цели:

Лучше преобразовать тип переменной transaction_id «number» в строку, чтобы избежать конфликтов между типами данных, используемыми в sGTM, Shopify и Data Store. В галерее sGTM есть переменная, которая позволяет легко это сделать.
В Shopify можно настроить вебхук множеством способов. Один из самых простых вариантов - использовать Stape Conversion Tracking app: он содержит все необходимые данные запроса — токен корзины, правильно структурированную информацию о заказе и товарах, а также данные пользователя. Вы также можете использовать нативную функциональность вебхуков или любое другое приложение на ваш выбор.

Мы также рекомендуем использовать Request Delay Power Up, чтобы убедиться, что запрос из веб-контейнера достигнет серверного контейнера раньше, чем вебхук с серверной части. Это позволит нам явно контролировать последовательность запросов, что имеет решающее значение в нашем случае. Задержки в 1 минуту должно быть достаточно, чтобы запрос о покупке достиг серверного контейнера, позволив всем необходимым тегам сработать и обработать нужные запросы.
На этом этапе у нас уже есть следующее:
Теперь нам нужно проверить, следует ли обрабатывать входящие вебхуки и передавать их в Meta или игнорировать, поскольку заказ уже был обработан.
Для этого мы берем transaction_id из входящего вебхука и проверяем, доступен ли он в Data Store, используя Stape Store Lookup variable.

В результате наша переменная вернет ‘true’, если этот transaction_id найден в Data Store. Это означает, что вебхук нужно проигнорировать, поскольку транзакция уже была передана веб-контейнером.
Если переменная возвращает undefined или false, это означает, что по какой-то причине эта транзакция не была передана веб-контейнером и нам нужно обработать этот вебхук.
Настройте дополнительный Facebook tag для Shopify CAPI и заполните его основной информацией из вебхука, например value, currency, content_ids, user data и т. д.
Для максимально точной атрибуции также нужно передавать файлы cookie _fbp и _fbc из Data Store. Их можно получить с помощью Stape Store Lookup variable, связанной с токеном корзины, доступным в вашем вебхуке. Вот пример:

Stape Store Lookup variable для _fbp должна переопределять параметр Browser ID в Facebook tag, а Stape Store Lookup для _fbc должна переопределять параметр Click ID.
Этот Facebook tag должен срабатывать, когда проверка нашей Stape Store Lookup variable для transaction_id возвращает значение, отличное от true.
Если применимо, выполните дополнительную проверку статуса согласия аналогичным способом.
Этот подход позволяет добиться 100% точности отслеживания конверсий Shopify, чтобы не терять конверсии, которым можно корректно присвоить атрибуцию. Его можно расширить для любой необходимой маркетинговой/аналитической платформы; просто убедитесь, что на шаге 2 вы сохраняете все необходимые cookie. Затем на шаге 5 вы можете создать дополнительный tag для TikTok, Snapchat, GA4, Google Ads и т. д. Вам нужно лишь переопределить необходимые параметры значениями cookie, полученными из Data Store.
Для более сложных платформ, таких как Google Ads, Stape уже предлагает отличные решения с простым процессом аутентификации, включая Google Ads Offline Conversion tracking tag и Conversion Adjustment tag, если вам нужны такие возможности.
Не стесняйтесь обращаться к нам, если у вас есть вопросы.
Хотите начать использовать серверное отслеживание?
Попробовать бесплатно
Комментарии