Google Universal Analyticsで公式発表は無いものの「navigator.sendBeacon()」に対応

注意 : {useBeacon:true}の利用は非推奨に変わりました。

Googleからの公式発表は無いものの、Universal AnalyticsのJavascript APIにnavigator.sendBeacon()の設定が追加されているようです。

navigator.sendBeacon()」については、簡単に言うと解析用の小さな通信をブロッキング無しに非同期で行うというものです。
Universal Analyticsの場合、外部へ飛んで行くイベントだったり、PDF等のコンテンツダウンロードのイベントをcallbackを使って取得することが可能でしたが、今回の「navigator.sendBeacon()」への対応によって、callbackが必要無くなります。

実際にちょっとしかけてみました。
仕掛け方は簡単。

ga('send', 'event', 'Clicks', 'Outgoing', 'Google',  {useBeacon: true});

と「useBeacon」のプロパティを持たせてあげればOKです。
実際、Universal AnalyticsのJavascriptを見てみると、確かにパラメータを持っていました。


で、実際にイベントを発生さえた時のGoogle Chromeの「Network」がこちら。




Beacon APIの場合、Responseが返ってこないため「canceled」として表示されるようです
でも、実際にAnalytics側で見てみると、イベントが飛んできていることが分かります。


デバッグツールによっては、データが見えるものと見えないものが存在しているようです。


この「navigator.sendBeacon()」ですが、現在利用できるブラウザは

Chrome 37以上
Firefox 31以上
IE 非サポート
Opera 24以上
Safari 非サポート

となっているようです。
デジタルアナリティクス的には、データの欠損を防いだり、コンテンツに影響を及ぼさず、逆にコンテンツの影響を受けない状況を作り出す意味では、恐らく他のブラウザもサポートされるのではないかと期待しています。

Google Analyticsという意味では、恐らくON/OFF設定をサイト側に持つのか、Tag Managerのみで設定を開放するのか。そんな流れになるのでしょうね。

コメント

このブログの人気の投稿

ウェブサイトユーザビリティ評価のためのSUS(System Usability Scale)

離脱改善指標に関するメモ

Google AnalyticsのRealtime APIの結果を雑にSlackに流す