Single Page Application (SPA) - это веб-приложение, которое загружает HTML-документ лишь однажды и затем обновляет его содержимое динамически, чаще всего через AJAX запросы без перезагрузки страницы.

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

В Universal Analytics отслеживание одностраничных приложений с помощью виртуальных pageview могло стать проблемой. При отправке виртуальных просмотров страниц из URL, как правило, исключались UTM-параметры, а Referrer оставался тем же самым. Это приводило к созданию нового сеанса и неверной атрибуции последующих конверсий.

В GA4 ситуация несколько упростилась – сеанс теперь не бьется, но атрибуция конверсий все также строится по последнему непрямому источнику (в случае если вы используете Last Click атрибуцию). То есть по сути органика Google может продолжать красть часть конверсий у платного трафика при работе в интерфейсе GA4.

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

1. Использовать сессионную атрибуцию на сырых данных в BigQuery и забирать данные источника из первого хита. Я так делаю для всех проектов, но для SPA эта штука особенно актуальна.

2. Можно сохранять оригинальный URL при первой загрузке страницы в массиве dataLayer и затем подменять им реальный в событиях виртуальных просмотров страниц. Будьте аккуратны с этой методикой – она может не включать корнер-кейсы вашего проекта.

3. Если URL включает в себя # и это для вас важно, переписывайте page_location с помощью JavaScript-переменной window.location.href.

4. Некоторые практики рекомендуют переписывать или обнулять page_referrer. Я бы был с этим ооооочень осторожен. Ни одной надёжной механики сохранения работы с синтетическим document.referrer я ещё пока не встречал.

Больше о работе с данными в продукте и маркетинге есть в Телеграм-канале "Модель атрибуции”