Google Analytics の Event Tracking で(つまらなく)ハマったお話

Google Analytics の Event Tracking で(つまらなく)ハマったお話

「人生ハマってばかり」が座右の銘ですがいかがお過ごしでしょうか。

みんなこっそり仕込んで、こまめにチェックして、ニヤニヤしたりしてるGoogle Analyticsですが、その中の機能の一つとして Event Tracking という物があります。
簡単に言えば普通のGoogle Analyticsはサイト内のページを「閲覧した」情報を収集してくれますが、この Event Tracking はサイト内でユーザの起こした任意の行動に任意の名前を付けて収集させるための機能です。
例えばですが、ページ内でどのくらいスクロールしたか(スクロールイベントで送信)や、埋め込まれた動画を再生したか(クリックイベントで送信)などが考えられます。

この Event Tracking 、非常に有効なのですが、使い方を失敗していても「失敗したよ」とは教えてくれるものの、どうして失敗したのかは教えてくれないのがちょっと残念です。
そんなわけで今回の失敗例を惜しげも無く公開してみようと思います。

ga('send', 'event', 'button', 'click', 'nav buttons', 4);

細かい使い方は本家や他のサイトに譲るとして、基本的にはこんな感じのコードになります。
本家にサンプルとして書かれてるのをそのまま持ってきました。
意味的には「ナビボタンというボタンが4回押された」的なサンプルだそうです。

今回このイベントトラッキングを仕込みたかったのがここで言う「ナビボタン」だけだったのでこんな感じのコードに書き直しました。

ga('send', 'event', 'button', 'click', 4);

まぁそのままですね。「ボタンが4回押された」的な感じです。
ところがこう書き換えた途端にイベントトラッキングができなくなってしまいました。

さて、聡明な読者ならすでに気付いてるのかもしれませんがもう少し茶番にお付き合いください。
「send」と「event」までは固定値となっていますが、その後以下のように続きます。

Category String 必須
Action String 必須
Label String 任意
Value Number 任意

引数の5番目は「Label」で「String」で「任意」なんですよ。
"4"」とか「'4'」なら良かったんですが「4」はダメなんです。

分かってしまえばなんてことはない問題ですが、型を(さほど)意識しないことが多いJavaScriptならではのハマり方をしたなーという事案でしたとさ。

同様に6番目の引数は好きな値ならなんでも渡せるわけではなく、Numberに限定されているので使いドコロが案外難しいかもしれないですね。

TAG

  • このエントリーをはてなブックマークに追加
やまま
スペシャリスト やまま yamama

マンガとアニメとゲームから錬成された宇宙大好きエンジニア。 軌道エレベーターで行ける静止軌道上のコロニーに住まいを移し、ゲームやってマンガ読んでアニメ見て爆睡、ゲームやってマンガ読んでアニメ見て爆睡、という生活を夢見ながら今日もコードを書き続けるのだった。