Google アナリティクスの e コマース トラッキングで奇妙な問題が発生し、このサイトや Google で自分自身の実験を行っても解決策を見つけることができませんでした。
当社のサイトでのすべての購入は、javascript の単一ページ Web アプリの一部として行われ、ユーザーがサイト内の他のページに特にアクセスしない限り、通常、ページのリロードは購入の間に発生しません。私たちのサイトでは、ページビューとイベントの追跡に Google アナリティクスを使用し、購入の e コマース追跡も使用しています。これは長い間正常に機能しており、現在も機能していますが、開発者の 1 人が最近、trackTrans 呼び出しを行うときに、trackTrans への以前の送信からのトランザクションとアイテムが再含まれていることに気付きました。これは、Google Chrome のネットワーク タブ (__utm requests) で確認され、Chrome 用の Google 独自の GA デバッグ拡張機能を使用して検証されています。
行われた呼び出しとログ出力を使用して問題を説明しましょう (プライバシー上の理由から特定の情報が削除されていることに注意してください)。
ページ読み込みの最初の購入:
_gaq.push(['_addTrans', 872, (removed), 0.10, , , (removed), null, (removed)]); F3085D20782A2AC201B3D564B205E01B.cache.html:32780
_gaq.push processing "_addTrans" for args: "[872,(removed),0.10,,,(removed),,(removed)]": [VM] ga_debug.js (4049):24
_gaq.push(['_addItem', 872, Id#11474748#GameId#17, (removed), (removed), 0.10, 1]); F3085D20782A2AC201B3D564B205E01B.cache.html:32769
_gaq.push processing "_addItem" for args: "[872,Id#11474748#GameId#17,(removed),(removed),0.10,1]": [VM] ga_debug.js (4049):24
_gaq.push(['_trackTrans']); F3085D20782A2AC201B3D564B205E01B.cache.html:32813
_gaq.push processing "_trackTrans" for args: "[]": [VM] ga_debug.js (4049):24
Track Transaction [VM] ga_debug.js (4049):24
Tracking beacon sent!
utmwv=5.4.4d&utms=13&utmn=1580365368&utmhn=(removed)&utmt=tran&utmtid=872&utmtst=(removed)&utmtto=0.10&utmttx=&utmtsp=&utmtci=(removed)&utmtrg=null&utmtco=(removed)&utme=8(ageGender)9(M%2065%2B)11(2)&utmcs=UTF-8&utmsr=2560x1440&utmvp=2560x1352&utmsc=24-bit&utmul=en-gb&utmje=1&utmfl=11.8%20r800&utmdt=(removed)&utmhid=1366812599&utmr=-&utmp=(removed)&utmht=1378732665904&utmac=(removed)&utmcc=__utma%3D162785085.187708818.1377079516.1378725565.1378732612.33%3B%2B__utmz%3D162785085.1377079516.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B&utmu=6xCL~ [VM] ga_debug.js (4049):24
Account ID : (removed)
Page Title : (removed)
Host Name : (removed)
Page : (removed)
Referring URL : -
Hit ID : 1366812599
Hit Type : tran
Visitor ID : 187708818
Session Count : 33
Session Time - First : Wed Aug 21 2013 11:05:16 GMT 0100 (BST)
Session Time - Last : Mon Sep 09 2013 12:19:25 GMT 0100 (BST)
Session Time - Current : Mon Sep 09 2013 14:16:52 GMT 0100 (BST)
Campaign Time : Wed Aug 21 2013 11:05:16 GMT 0100 (BST)
Campaign Session : 1
Campaign Count : 1
Campaign Source : (direct)
Campaign Medium : (none);
Campaign Name : (direct)
Custom Var 1 : label:'ageGender' value:'M 65 ' scope:'2'
Order ID : 872
Billing City : (removed)
Billing Region : null
Billing Country : (removed)
Affilliation : (removed)
Total : 0.10
Shipping Cost :
Tax :
Language : en-gb
Encoding : UTF-8
Flash Version : 11.8 r800
Java Enabled : true
Screen Resolution : 2560x1440
Browser Size : 2560x1352
Color Depth : 24-bit
Ga.js Version : 5.4.4d
Cachebuster : 1580365368 [VM] ga_debug.js (4049):24
Tracking beacon sent!
utmwv=5.4.4d&utms=14&utmn=2121074133&utmhn=(removed)&utmt=item&utmtid=872&utmipc=Id%2311474748%23GameId%2317&utmipn=(removed)&utmiva=(removed)&utmipr=0.10&utmiqt=1&utme=8(ageGender)9(M%2065%2B)11(2)&utmcs=UTF-8&utmsr=2560x1440&utmvp=2560x1352&utmsc=24-bit&utmul=en-gb&utmje=1&utmfl=11.8%20r800&utmdt=(removed)&utmhid=1366812599&utmr=-&utmp=(removed)&utmht=1378732665904&utmac=(removed)&utmcc=__utma%3D162785085.187708818.1377079516.1378725565.1378732612.33%3B%2B__utmz%3D162785085.1377079516.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B&utmu=6xCL~ [VM] ga_debug.js (4049):24
Account ID : (removed)
Page Title : (removed)
Host Name : (removed)
Page : (removed)
Referring URL : -
Hit ID : 1366812599
Hit Type : item
Visitor ID : 187708818
Session Count : 33
Session Time - First : Wed Aug 21 2013 11:05:16 GMT 0100 (BST)
Session Time - Last : Mon Sep 09 2013 12:19:25 GMT 0100 (BST)
Session Time - Current : Mon Sep 09 2013 14:16:52 GMT 0100 (BST)
Campaign Time : Wed Aug 21 2013 11:05:16 GMT 0100 (BST)
Campaign Session : 1
Campaign Count : 1
Campaign Source : (direct)
Campaign Medium : (none);
Campaign Name : (direct)
Custom Var 1 : label:'ageGender' value:'M 65 ' scope:'2'
Product Code : Id#11474748#GameId#17
Product Name : (removed)
Unit Price : 0.10
Quantity : 1
Item Variation : (removed)
Order ID : 872
Language : en-gb
Encoding : UTF-8
Flash Version : 11.8 r800
Java Enabled : true
Screen Resolution : 2560x1440
Browser Size : 2560x1352
Color Depth : 24-bit
Ga.js Version : 5.4.4d
Cachebuster : 2121074133 [VM] ga_debug.js (4049):24
ページのリロードなしの 2 回目の購入 (同じセッション):
_gaq.push(['_addTrans', 873, (removed), 0.10, , , (removed), null, (removed)]); F3085D20782A2AC201B3D564B205E01B.cache.html:32780
_gaq.push processing "_addTrans" for args: "[873,(removed),0.10,,,(removed),,(removed)]": [VM] ga_debug.js (4049):24
_gaq.push(['_addItem', 873, Id#26113584#GameId#17, (removed), (removed), 0.10, 1]); F3085D20782A2AC201B3D564B205E01B.cache.html:32769
_gaq.push processing "_addItem" for args: "[873,Id#26113584#GameId#17,(removed),(removed),0.10,1]": [VM] ga_debug.js (4049):24
_gaq.push(['_trackTrans']); F3085D20782A2AC201B3D564B205E01B.cache.html:32813
_gaq.push processing "_trackTrans" for args: "[]": [VM] ga_debug.js (4049):24
Track Transaction [VM] ga_debug.js (4049):24
Tracking beacon sent!
utmwv=5.4.4d&utms=20&utmn=2023058614&utmhn=(removed)&utmt=tran&utmtid=872&utmtst=(removed)&utmtto=0.10&utmttx=&utmtsp=&utmtci=(removed)&utmtrg=null&utmtco=(removed)&utme=8(ageGender)9(M%2065%2B)11(2)&utmcs=UTF-8&utmsr=2560x1440&utmvp=2560x1352&utmsc=24-bit&utmul=en-gb&utmje=1&utmfl=11.8%20r800&utmdt=(removed)&utmhid=1366812599&utmr=-&utmp=(removed)&utmht=1378733392697&utmac=(removed)&utmcc=__utma%3D162785085.187708818.1377079516.1378725565.1378732612.33%3B%2B__utmz%3D162785085.1377079516.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B&utmu=6xCL~ [VM] ga_debug.js (4049):24
Account ID : (removed)
Page Title : (removed)
Host Name : (removed)
Page : (removed)
Referring URL : -
Hit ID : 1366812599
Hit Type : tran
Visitor ID : 187708818
Session Count : 33
Session Time - First : Wed Aug 21 2013 11:05:16 GMT 0100 (BST)
Session Time - Last : Mon Sep 09 2013 12:19:25 GMT 0100 (BST)
Session Time - Current : Mon Sep 09 2013 14:16:52 GMT 0100 (BST)
Campaign Time : Wed Aug 21 2013 11:05:16 GMT 0100 (BST)
Campaign Session : 1
Campaign Count : 1
Campaign Source : (direct)
Campaign Medium : (none);
Campaign Name : (direct)
Custom Var 1 : label:'ageGender' value:'M 65 ' scope:'2'
Order ID : 872
Billing City : (removed)
Billing Region : null
Billing Country : (removed)
Affilliation : (removed)
Total : 0.10
Shipping Cost :
Tax :
Language : en-gb
Encoding : UTF-8
Flash Version : 11.8 r800
Java Enabled : true
Screen Resolution : 2560x1440
Browser Size : 2560x1352
Color Depth : 24-bit
Ga.js Version : 5.4.4d
Cachebuster : 2023058614 [VM] ga_debug.js (4049):24
Tracking beacon sent!
utmwv=5.4.4d&utms=21&utmn=428191029&utmhn=(removed)&utmt=item&utmtid=872&utmipc=Id%2311474748%23GameId%2317&utmipn=(removed)&utmiva=(removed)&utmipr=0.10&utmiqt=1&utme=8(ageGender)9(M%2065%2B)11(2)&utmcs=UTF-8&utmsr=2560x1440&utmvp=2560x1352&utmsc=24-bit&utmul=en-gb&utmje=1&utmfl=11.8%20r800&utmdt=(removed)&utmhid=1366812599&utmr=-&utmp=(removed)&utmht=1378733392698&utmac=(removed)&utmcc=__utma%3D162785085.187708818.1377079516.1378725565.1378732612.33%3B%2B__utmz%3D162785085.1377079516.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B&utmu=6xCL~ [VM] ga_debug.js (4049):24
Account ID : (removed)
Page Title : (removed)
Host Name : (removed)
Page : (removed)
Referring URL : -
Hit ID : 1366812599
Hit Type : item
Visitor ID : 187708818
Session Count : 33
Session Time - First : Wed Aug 21 2013 11:05:16 GMT 0100 (BST)
Session Time - Last : Mon Sep 09 2013 12:19:25 GMT 0100 (BST)
Session Time - Current : Mon Sep 09 2013 14:16:52 GMT 0100 (BST)
Campaign Time : Wed Aug 21 2013 11:05:16 GMT 0100 (BST)
Campaign Session : 1
Campaign Count : 1
Campaign Source : (direct)
Campaign Medium : (none);
Campaign Name : (direct)
Custom Var 1 : label:'ageGender' value:'M 65 ' scope:'2'
Product Code : Id#11474748#GameId#17
Product Name : (removed)
Unit Price : 0.10
Quantity : 1
Item Variation : (removed)
Order ID : 872
Language : en-gb
Encoding : UTF-8
Flash Version : 11.8 r800
Java Enabled : true
Screen Resolution : 2560x1440
Browser Size : 2560x1352
Color Depth : 24-bit
Ga.js Version : 5.4.4d
Cachebuster : 428191029 [VM] ga_debug.js (4049):24
Tracking beacon sent!
utmwv=5.4.4d&utms=22&utmn=2054976501&utmhn=(removed)&utmt=tran&utmtid=873&utmtst=(removed)&utmtto=0.10&utmttx=&utmtsp=&utmtci=(removed)&utmtrg=null&utmtco=(removed)&utme=8(ageGender)9(M%2065%2B)11(2)&utmcs=UTF-8&utmsr=2560x1440&utmvp=2560x1352&utmsc=24-bit&utmul=en-gb&utmje=1&utmfl=11.8%20r800&utmdt=(removed)&utmhid=1366812599&utmr=-&utmp=(removed)&utmht=1378733392698&utmac=(removed)&utmcc=__utma%3D162785085.187708818.1377079516.1378725565.1378732612.33%3B%2B__utmz%3D162785085.1377079516.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B&utmu=6xCL~ [VM] ga_debug.js (4049):24
Account ID : (removed)
Page Title : (removed)
Host Name : (removed)
Page : (removed)
Referring URL : -
Hit ID : 1366812599
Hit Type : tran
Visitor ID : 187708818
Session Count : 33
Session Time - First : Wed Aug 21 2013 11:05:16 GMT 0100 (BST)
Session Time - Last : Mon Sep 09 2013 12:19:25 GMT 0100 (BST)
Session Time - Current : Mon Sep 09 2013 14:16:52 GMT 0100 (BST)
Campaign Time : Wed Aug 21 2013 11:05:16 GMT 0100 (BST)
Campaign Session : 1
Campaign Count : 1
Campaign Source : (direct)
Campaign Medium : (none);
Campaign Name : (direct)
Custom Var 1 : label:'ageGender' value:'M 65 ' scope:'2'
Order ID : 873
Billing City : (removed)
Billing Region : null
Billing Country : (removed)
Affilliation : (removed)
Total : 0.10
Shipping Cost :
Tax :
Language : en-gb
Encoding : UTF-8
Flash Version : 11.8 r800
Java Enabled : true
Screen Resolution : 2560x1440
Browser Size : 2560x1352
Color Depth : 24-bit
Ga.js Version : 5.4.4d
Cachebuster : 2054976501 [VM] ga_debug.js (4049):24
Tracking beacon sent!
utmwv=5.4.4d&utms=23&utmn=900028249&utmhn=(removed)&utmt=item&utmtid=873&utmipc=Id%2326113584%23GameId%2317&utmipn=(removed)&utmiva=(removed)&utmipr=0.10&utmiqt=1&utme=8(ageGender)9(M%2065%2B)11(2)&utmcs=UTF-8&utmsr=2560x1440&utmvp=2560x1352&utmsc=24-bit&utmul=en-gb&utmje=1&utmfl=11.8%20r800&utmdt=(removed)&utmhid=1366812599&utmr=-&utmp=(removed)&utmht=1378733392699&utmac=(removed)&utmcc=__utma%3D162785085.187708818.1377079516.1378725565.1378732612.33%3B%2B__utmz%3D162785085.1377079516.1.1.utmcsr%3D(direct)%7Cutmccn%3D(direct)%7Cutmcmd%3D(none)%3B&utmu=6xCL~ [VM] ga_debug.js (4049):24
Account ID : (removed)
Page Title : (removed)
Host Name : (removed)
Page : (removed)
Referring URL : -
Hit ID : 1366812599
Hit Type : item
Visitor ID : 187708818
Session Count : 33
Session Time - First : Wed Aug 21 2013 11:05:16 GMT 0100 (BST)
Session Time - Last : Mon Sep 09 2013 12:19:25 GMT 0100 (BST)
Session Time - Current : Mon Sep 09 2013 14:16:52 GMT 0100 (BST)
Campaign Time : Wed Aug 21 2013 11:05:16 GMT 0100 (BST)
Campaign Session : 1
Campaign Count : 1
Campaign Source : (direct)
Campaign Medium : (none);
Campaign Name : (direct)
Custom Var 1 : label:'ageGender' value:'M 65 ' scope:'2'
Product Code : Id#26113584#GameId#17
Product Name : (removed)
Unit Price : 0.10
Quantity : 1
Item Variation : (removed)
Order ID : 873
Language : en-gb
Encoding : UTF-8
Flash Version : 11.8 r800
Java Enabled : true
Screen Resolution : 2560x1440
Browser Size : 2560x1352
Color Depth : 24-bit
Ga.js Version : 5.4.4d
Cachebuster : 900028249 [VM] ga_debug.js (4049):24
最初の購入では、2 つの追跡ビーコンが送信されます。
- オーダーID「872」のヒットタイプ「tran」のいずれか
- 「872」の注文 ID と「Id#11474748#GameId#17」の製品コード (SKU) を持つヒット タイプ「item」の 1 つ
正解です。
2 回目の購入では、4 つの追跡ビーコンが送信されます。
- オーダーID「872」のヒットタイプ「tran」のいずれか(前回の取引)
- オーダーIDが「872」でプロダクトコード(SKU)が「Id#11474748#GameId#17」のヒットタイプ「item」の1つ(前のアイテム)
- オーダー ID「873」のヒットタイプ「tran」の 1 つ (新規トランザクション)
- オーダーIDが「873」、プロダクトコード(SKU)が「Id#26113584#GameId#17」のヒットタイプ「item」の1つ(新規アイテム)
後者のトラッキング ビーコンは正しいですが、最初の 2 つは最初の購入の複製であり、これは誤りです。
その後の購入では、6、8、10 などのトラッキング ビーコンが送信されます。最初のビーコンは、最近の購入だけでなく、以前のすべての購入からのものです。
製品コード (SKU) は、アプリケーション内の定義により、すべての購入に対して一意です。私たちのコードは、余分な JavaScript e コマース トラッキング呼び出しを行っていないことが確認されています。これは、JavaScript の e コマース コールを Chrome コンソールで直接実行することによっても確認されており、以前のトランザクションが最新のトランザクションの一部として再送信され、アプリケーションとは無関係に見えるという同じ問題が見られます。
重複した購入 (同じ SKU での複数の購入) があることを生産分析で確認したため、これがレポートに影響を与えています (ありがたいことに、財務レポートの大部分は、Google アナリティクスではなくデータベースからのレポートを介して行われます)。
また、ドキュメントで指定されているように、e コマース トラッキング コードが実行される前に、ページ ビューが確実にトラッキングされることにも注意してください。
問題を特定するための助けをいただければ幸いです。
- アップデート
以下の html を使用して、アプリケーションの外部で実行する単純なテスト ケースで問題を再現しました (実行する前に Google アナリティクス アカウント ID を入力する必要があります。単純な apache サーバーからファイルを実行しました)。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=9;IE=8"/>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
<meta name="viewport" content="maximum-scale=1.0, width=device-width"/>
<script type="text/javascript">
/*<![CDATA[*/
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXXX-X']); /* REPLACE WITH YOUR OWN ACCOUNT ID */
_gaq.push(['_setDomainName', 'none']); /* Must be set to none when running from localhost, but normally set to auto in Prod */
_gaq.push(['_setAllowLinker', false]); /* set to true in Prod but doesn't seem to have any effect on the issue */
(function() {
var ga = document.createElement('script');
ga.type = 'text/javascript';
ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();
/*]]>*/
</script>
<script type="text/javascript">
/*<![CDATA[*/
var orderId = 1;
var sku = 200;
makePurchase = function() {
console.error("...NEW PURCHASE HAPPENING..."); /* Error level just so it's easy to see in the console when a new purchase starts */
_gaq.push(['_trackPageview', '/purchase/complete']);
console.log("Tracking purchase for order with id " + orderId + " and SKU " + sku);
_gaq.push(['_addTrans', orderId, 'Acme Clothing', '11.99', '1.29' , '5', 'San Joes', 'California', 'USA']);
_gaq.push(['_addItem', orderId, sku, 'T-Shirt', 'Green Medium', '11.99', '1']);
_gaq.push(['_trackTrans']);
incrementOrderIds();
}
var incrementOrderIds = function() {
orderId = orderId + 1;
sku = sku + 10;
}
/*]]>*/
</script>
<title>Google Analytics Ecommerce Test Page</title>
</head>
<body>
<h1>Google Analytics Ecommerce Test</h1>
<div>
<a href="#" onclick="makePurchase()">Make Purchase</a>
</div>
</body>
</html>