[英]Google Adwords saving Server Side conversion Tracking through Measurement Protocol
我在用:
https://developers.google.com/analytics/devguides/collection/protocol/v1/
用于服务器端跟踪。
这是设置:
我在 adwords 中创建一个广告,用户点击广告,用户访问第三方网站,第三方网站向来自 adwords 的访问者 gclid 发出 https POST 请求。 这存储在 mysql 数据库中。
在 google adwords 帐户中,我创建了一个转换事件。 (使用离线跟踪转换有效,但我更喜欢使用测量协议的唯一原因是离线跟踪仅接受 90 分钟后的转换。)
我以这种方式发送页面浏览量和转换:
/**
* @param $gclid
* @param $clientId
* @return \TheIconic\Tracking\GoogleAnalytics\AnalyticsResponse
*/
private function sendPageView($gclid, $clientId){
$this->analytics
->setProtocolVersion(1)
->setTrackingId(self::GLOBAL_TRACKING_ID)
->setGoogleAdwordsId($gclid)
->setAnonymizeIp(true)
->setClientId($clientId);
return $this->analytics->sendPageview();
}
/**
* @param $gclid
* @param $clientId
* @return \TheIconic\Tracking\GoogleAnalytics\AnalyticsResponse
*/
private function sendConversion($gclid, $clientId, $url){
$this->analytics
->setProtocolVersion(1)
->setTrackingId(self::GLOBAL_TRACKING_ID)
->setGoogleAdwordsId($gclid)
->setAnonymizeIp(true)
->setClientId($clientId)
->setEventAction('s2s')
->setEventCategory('Lead')
;
return $this->analytics->sendEvent();
}
回复:
object(TheIconic\Tracking\GoogleAnalytics\AnalyticsResponse)#1008 (3) {
["httpStatusCode":protected]=>
int(200)
["requestUrl":protected]=>
string(164) "https://ssl.google-analytics.com/collect?v=1&tid=UA-1XXXXX-1&gclid=EAIaIQobChMInvrxopLZ5gIVXXXXXXXXXXXXXXXXXXXX_BwE&aip=1&cid=1&ea=s2s&ec=Lead&t=event"
["responseBody":protected]=>
string(35) "GIF89a�����,D;"
}
所以响应是 200,但是转换没有记录在任何地方,我不确定是否应该发送任何其他参数,或者如何调试问题。
要了解您在 google 方面的查询会发生什么,可以选择调试测量协议。 为此,只需在 URL 的/collect
部分之前添加/debug
前缀。 它应该看起来像: https://ssl.google-analytics.com/debug/collect?v=1&tid=UA-1XXXXX-1
: https://ssl.google-analytics.com/debug/collect?v=1&tid=UA-1XXXXX-1
之后,如果您的请求有效,您将看到详细信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.