ТЗ
ПавелСхема следующая:
Забираем первый CID при авторизации
Когда юзер авторизуется первый раз (соврешает транзакция, заходит в личный кабинет и др.) мы забираем у него CID (Google Client ID) и сохраняем в базе данных, как атрибут юзера.
Получить CID можно так ga.getAll()[0].get('clientId').
Важно, что мы забираем CID именно во время создания нового юзера в базе данных, далее будем называть его FirstCID
Забираем последний CID при последующих авторизациях
Аналогично первому забираем CID и присваиваем новому пользовательскому атрибуту LastCID, то есть сценарий
Пользователь первый раз зашел на сайт, авторизовался и купил (присваиваем CID в FirstCID и LastCID) > сбросил куки и через месяц снова зашел, авторизовался и купил (присваиваем CID в LastCID, то есть перезаписываем) > сбросил куки и через год снова зашел, авторизовался и купил (присваиваем CID в LastCID, снова перезаписываем)
Отправляем данные в Google Analytics
Во время каждой транзакции мы отправляем 2 measurement protocol с выручкой FirstCID и LastCID, но когда отправляем MP в FirstCID, то выручку отправляем не в revenue метрику, а в пользовательскую метрику (CM)
Что нам это даст
Сможем анализировать актуальные транзакции по последним кампаниям.
Сможем смотреть когорты LTV за счет CM, считать показатель возврата
Сможем наблюдать рост/отток постоянных клиентов, так как у нас будет показатель новые и старые юзеры.