Привет!
Если у вас посещаемый сайт (более 500 тысяч сессий за отчетный период) или вы строите какие-то сложные отчеты через интерфейс (сегментирование, подключение дополнительных параметров, частое изменение отчетного периода) — Google Analytics начинает экономить свои ресурсы и включает семплирование данных. Подробности хорошо описаны в официальной справке. То есть, чтобы подготовить вам отчёт, берутся не все данные, а какая-то часть, например 30%, и потом пропорционально показатели подгоняются под 100% и отображаются у вас в отчете.
Конечно, в таких случаях будет расхождение по количеству оплат, суммам транзакций и в количестве конверсий. Проверить легко — сравнить с цифрами из базы данных или CRM.
Избежать проблемы легко — подключить Google Analytics 360, но дорого.
Давайте научимся собирать сырые данные, используя бесплатный Google Analytics.
// эта инструкция — не решение всех ваших проблем, знакомимся с технологией!
https://www.google-analytics.com/collect?v=1&_v=j67&a=1998834664&t=pageview&_s=1&dl=https%3A%2F%2Fhabrahabr.ru%2Ftop%2F&ul=en-us&de=UTF-8&dt=%D0%9B%D1%83%D1%87%D1%88%D0%B8%D0%B5%20%D0%BF%D1%83%D0%B1%D0%BB%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B8%20%D0%B7%D0%B0%20%D1%81%D1%83%D1%82%D0%BA%D0%B8%20%2F%20%D0%A5%D0%B0%D0%B1%D1%80%D0%B0%D1%85%D0%B0%D0%B1%D1%80&sd=24-bit&sr=1920x1080&vp=1841x341&je=0&_u=SCCAgEADQ~&jid=&gjid=&cid=2098823486.1505375017&tid=UA-726094-1&_gid=1797204180.1524028566&cd1=habrauser&cd2=other&cd4=no&z=1479651106
v:1
_v:j50
a:643761009
t:pageview
_s:1
dl:https://habrahabr.ru/
ul:en-us
de:UTF-8
dt:Лучшие публикации за сутки / Хабрахабр
sd:24-bit
sr:1920x1080
vp:1109x966
je:0
fl:25.0 r0
_u:QCCAgEAB~
jid:1630561303
cid:774042187.1492148509
tid:UA-726094-1
cd1:guest
cd4:no
cd5:other
z:1998272259
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-XXXXXXXXX-X', 'auto');
ga('send', 'pageview');
</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-XXXXXXXXX-X', 'auto');
// определяем customTask
ga('set', 'customTask', function(tracker) {
// Сохраняем стандартную функцию sendHitTask.
var originalSendHitTask = tracker.get('sendHitTask');
// Вносим изменения в функцию sendHitTask
tracker.set('sendHitTask', function(model) {
// отправляем стандартный запрос на www.google-analytics.com/collect
originalSendHitTask(model);
// создаем новый запрос для отправки в своё хранилище
var custom_tracking_url = 'ССЫЛКА НА ВАШ ПРИНИМАЮЩИЙ СКРИПТ',
hitPayLoad = '?' + model.get('hitPayload'),
user_agent = '&user_agent='+ encodeURIComponent(navigator.userAgent),
referrer = '&referrer='+encodeURIComponent(document.referrer);
var final_tracking_url = custom_tracking_url + hitPayLoad + user_agent + referrer
document.createElement("img").src = final_tracking_url;
});
});
ga('send', 'pageview');
</script>
function () {
return function(tracker) {
// Сохраняем стандартную функцию sendHitTask.
var originalSendHitTask = tracker.get('sendHitTask');
// Вносим изменения в функцию sendHitTask
tracker.set('sendHitTask', function(model) {
// отправляем стандартный запрос на www.google-analytics.com/collect
originalSendHitTask(model);
// создаем новый запрос для отправки в своё хранилище
var custom_tracking_url = 'ССЫЛКА НА ВАШ ПРИНИМАЮЩИЙ СКРИПТ',
hitPayLoad = '?' + model.get('hitPayload'),
user_agent = '&user_agent='+ encodeURIComponent(navigator.userAgent),
referrer = '&referrer='+encodeURIComponent(document.referrer);
var final_tracking_url = custom_tracking_url + hitPayLoad + user_agent + referrer
document.createElement("img").src = final_tracking_url;
});
}
}
function doGet(e) {
record_data(e);
}
var SCRIPT_PROP = PropertiesService.getScriptProperties();
function setup() {
var doc = SpreadsheetApp.getActiveSpreadsheet();
SCRIPT_PROP.setProperty("key", doc.getId());
}
function record_data(e) {
try {
var doc = SpreadsheetApp.openById(SCRIPT_PROP.getProperty("key"));
var sheet = doc.getSheetByName('Sheet1'); // select the responses sheet
var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0];
var nextRow = sheet.getLastRow()+1; // get next row
var row = [ new Date() ]; // first element in the row should always be a timestamp
// loop through the header columns
for (var i = 1; i < headers.length; i++) { // start at 1 to avoid Timestamp column
if(headers[i].length > 0) {
if(!e.parameter[headers[i]]) {
e.parameter[headers[i]] = '';
}
row.push(e.parameter[headers[i]]); // add data to row
}
}
sheet.getRange(nextRow, 1, 1, row.length).setValues([row]);
}
catch(error) {
Logger.log(e);
}
finally {
return;
}
}
К сожалению, не доступен сервер mySQL