Я делаю следующим образом. При заходе пользователя на сайт я проверю, есть ли у него utm-метка. Если нету, проверяю через javascript, чему равно поле referrer. Если referrer = yandex.ru или google.com - значит органика. Также через это поле проверяю еще важные мне источники. Дальше эту инфу добавляешь к себе в форму в скрытые поля и они будут отправляться в crm.
Лично у меня интеграция тильды с битриксом. Для сквозной аналитики битриксу проще понимать информацию об источниках из ютм меток. Данные ютм меток тильда пишет в куки и передает куки в битрикс. Тоесть чтобы у меня была красивая сквозная аналитика, я делаю так:
function set_cookie ( name, value, exp_y, exp_m, exp_d, path, domain, secure ){
var cookie_string = name + "=" + escape ( value );
if ( exp_y )
{
var expires = new Date ( exp_y, exp_m, exp_d );
cookie_string += "; expires=" + expires.toGMTString();
}
if ( path )
cookie_string += "; path=" + escape ( path );
if ( domain )
cookie_string += "; domain=" + escape ( domain );
if ( secure )
cookie_string += "; secure";
document.cookie = cookie_string;
}
function get_cookie ( cookie_name ){
var results = document.cookie.match ( '(^|;) ?' + cookie_name + '=([^;]*)(;|$)' );
if ( results )
return ( unescape ( results[2] ) );
else
return null;
}
$(document).ready(function() {
ref = null;
if (document.referrer) {
url = document.referrer;
ref = url.match(/:\/\/(.[^/]+)/)[1];
}
if(ref){
if (!get_cookie("TILDAUTM")){
var current_date = new Date;
var cookie_year = current_date.getFullYear()+1;
var cookie_month = current_date.getMonth();
var cookie_day = current_date.getDate()+1;
set_cookie ( "TILDAUTM", "utm_source="+ref+"|||", cookie_year, cookie_month, cookie_day );
}
}
});
Потом в сквозной аналитике добавляю источники нужные мне (органика гугла, яндекса и. т.д.) и все.