でぶててのWEB録

PPC広告とか!タグマネジメントとか!WEB解析とか!だいたいそこらへん。

Googleユニバーサルアナリティクス/カスタムキャンペーンを日本語で表示したい問題

f:id:debutete:20141119171243j:plain

GoogleアナリティクスでGoogleAdWords以外のプロモーションを効果測定するときに、誰もがぶち当たる

「カスタムキャンペーンを日本語で表示したい問題」

例に漏れなく、でぶててもぶち当たりました。
そして、どうにか回避できないかと思ったらできちゃった話です。
※ユニバーサルアナリティクスのコードを設定したアカウントが多重エンコードに非対応になったことがそもそもの原因。改悪。

  • 対象:GAカスタムキャンペーンを日本語で見たい人、もしくはGTMが好きな人
  • 材料:Googleタグマネージャ、ユニバーサルアナリティクス
  • 費用:0円

<目次>

  1. GAカスタムキャンペーンって何?
  2. 本題)日本語で表記されるようにするには?
    1. キャンペーンパラメータを取得するマクロを作成
    2. デコードするマクロを作成
    3. ユニバーサルアナリティクスの設定調整
  3. 結果は・・・?

GAカスタムキャンペーンって何?

公式ページが何だかんだいって一番わかりやすいです。

その上で、いざ設定しようとすると「utm_~ が長いっ!何か嫌だ!」「他のパラメータ(クエリ)と揃えたい!」と欲もでてきます。GTMがあれば、対応可。

細かい説明や補足もありますが、それはまた別にまとめます(気が向いたら(オイ


本題)日本語で表記されるようにするには?

今回は、Yahoo!リスティング広告でパラメータをUTF-8で二重エンコードした場合と仮定。
カスタムキャンペーンのキャンペーンパラメータは、「utm_campaign」のままとします。

キャンペーンパラメータを取得するマクロを作成

キャンペーンパラメータの右辺(utm_campaign=××× の×××の部分)の文字列を取得します。

  • マクロ名: 任意 ※例)query_parameter_campaign
  • マクロのタイプ: URL
  • コンポーネントのタイプ: クエリ
  • クエリキー: utm_campaign


設定すると、こんな感じ。

f:id:debutete:20141119165240p:plain


デコードするマクロを作成

utm_campaignの右辺の文字列をデコードします。(今回は2回デコード)

  • マクロ名: 任意 ※例)decondeURL
  • マクロのタイプ: カスタムJavaScript
  • カスタムJavaScript: 下記参照
function() {
var str = {{query_parameter_campaign}}; //{{}}内には上で設定したマクロ名を入力する
str = decodeURI(str);
str = decodeURI(str);
return str;
}


設定すると、こんな感じ。

f:id:debutete:20141119165250p:plain


ユニバーサルアナリティクスの設定調整

ユニバーサルアナリティクスにデコードした文字列を渡す設定をすれば、完了!
場所は、タグ > ユニバーサルアナリティクス > 設定するフィールド

  • フィールド名: campaignName
  • 値: {{decodeURL}} ※デコードするマクロのマクロ名を入力


設定すると、こんな感じ。

f:id:debutete:20141119165218p:plain


結果は・・・?

これで、日本語化が【完了】です。

もともとクラシックアナリティクス(ユニバーサルアナリティクスの前のバージョン)では、URLの多重エンコードに対応していたが、ユニバーサルアナリティクスから対応しなくなったことが原因です(2回目)。GTMを使うことで回避できるので、使わない手はないでしょう。
※画像を載せようと思いましたが、クライアントさんのアカウントなのでやめました。


ストレス軽減に繋がりますかね?

GA側で自動デコードされる訳ではなく、GTM上に設置したjavascriptでデコードするので文字化けは起きにくいと思います。無理矢理感はあるので完璧ではないでしょう。それでも日本語で見られるほうがストレスは軽減されるはず。この記事で、読者の八つ当たりの回数が減ることを期待します。




copy right 2012 でぶてて