GoogleAnalyticsでPDFクリックのイベントの計測漏れを防ぐ

投稿日:

GoogleAnalyticsをユニバーサルAnalyticsにアップグレードした場合、PDF等へのリンクのクリック数をイベント トラッキングするコードも変更する必要があります。

従来(ga.js)
<a href="リンク先URL" onClick="_gaq.push(['_trackEvent', 'カテゴリ', 'アクション', 'ラベル',値]);">リンクテキスト</a>
ユニバーサルAnalytics(analytics.jp)
<a href="リンク先URL" onClick="ga('send', 'event', 'カテゴリ', 'アクション', 'ラベル', 値);">リンクテキスト</a>

しかしそれをリアルタイムモニタで検証中、計測漏れが結構発生していることが分かりました。
(最初はコードの記述ミスかと思ってた)

調べてみると、

リンク先のサイトの動作が速ければ速いほど計測漏れが出てしまう
Googleアナリティクスでの外部リンククリック計測3つの手法の利点と欠点を整理してみた」より引用

とのこと。

対策はいくつかありますが、それぞれ一長一短あるようです。

そこで弊社では、setTimeoutなどは使わず、別ウィンドウ(タブ)で開くよう a 要素に targret 属性を付けることにしました。
(<a href=”link.pdf” target=”_blank” onClick=”ga(‘send’, ‘event’, ‘カテゴリ’, ‘アクション’, ‘ラベル’, 値);”>…</a>)

こうすることで、検証する限りは計測漏れは発生しませんでした。

targret 属性を使うことの是非について

targret 属性はHTML5から非推奨ではなくなりました。

参考:「第2回 HTML5で使い方が変更されたタグをまとめよう」MdN Design Interactive

また個人的に、ユーザービリティの点からも、PDF等は別ウィンドウ(タブ)で開くほうが利便性が高いように思います。主要なブラウザではPDFをクリックした際、ダウンロードするのではなくブラウザ内で表示することができる現在、PDF閲覧後についうっかりとウィンドウ(タブ)を閉じてしまうことが何度もありました。

ただしリンク元テキストには、別ウィンドウで開くことをアイコン等で明示しておく必要があるでしょう。

Yukawa