以前にSearch ConsoleのデータをGoogleスプレッドシートに自動反映で、
サーチコンソールのデータをスプレッドシートへ出力する方法をまとめました。
今回はその続きとして、スプレッドシートをデータソースとしてTableauに接続して
表やグラフを作成する作業を行いました。
スプレッドシート上のサーチコンソールのデータをTableauに接続
まずTableauを開いて、データソースで該当のスプレッドシートを選択して接続します。
データソースが表示されたら、「ユニオンの編集」を選択して
複数のデータソースが選べる状態にします。
次に該当月のデータソースをドラック&ドロップで選択して、結合ファイルを作成します。
上記の場合は前回記事「Search ConsoleのデータをGoogleスプレッドシートに自動反映」において、ワークシート内の1つのシートが1カ月分のデータ量で出力されて、かつシート名にも表示されるように設定しています。
このようにしてデータソースの結合が完了したら、ワークシートを開いてディメンションと指標を確認します。
Tableauのディメンションと指標の整理
今回出力されたのは上記の指標ですが、CTR、Positionは集計式として定義し直す必要があります。
データソースの値をそのまま使うものと、新たに作成して使うものを分けると下記のとおりです。
■ディメンション
1.データソースのデータをそのまま使うもの:Query、Page、Sheet
2.新たに作成した計算フィールド:(1)mmyyyy、(2)年月、(3)ページ分類、(4)クエリ分類
■メジャー
3.データソースのデータをそのまま使うもの:Impressions、Clicks(CTR, Positionは(4)で作り直す)
4.新たに作成した計算フィールド:(11)クリック率、(12)掲載順位
作成したフィールド式、計算指標の一覧
上述の新たに作成した計算フィールド(1)~(4)、(11)~(12)は下記のとおりです。
(1)mmyyyy
IF REGEXP_MATCH([Sheet],”Jan”)= TRUE THEN REGEXP_REPLACE([Sheet],”Jan “,”01″)
ELSEIF REGEXP_MATCH([Sheet],”Feb”)= TRUE THEN REGEXP_REPLACE([Sheet],”Feb “,”02″)
~~中略~~
ELSEIF REGEXP_MATCH([Sheet],”Dec”)= TRUE THEN REGEXP_REPLACE([Sheet],”Dec “,”12”)
END
「mmyyyy」はフィールド式の名前で、他の名前でも大丈夫です。
(2)年月
MAKEDATE(FLOOR(FLOAT(MID([mmyyyy],3,4))),FLOOR(FLOAT(MID([mmyyyy],1,2))),1)
「(1)mmyyyy」「(2)年月」の2段階によって、データソースのタブ名を日付形式に変換しました。
(例:Aug19→2019年8月)
(3)ページ分類
if REGEXP_MATCH([Page],[ページ1]) = true then [ページGr1]
elseif REGEXP_MATCH([Page],[ページ2]) = true then [ページGr2]
~~中略~~
END
「ページ1」「ページGr1」などは、中身が分かりやすい表記に変更して設定します。
(4)クエリ分類
if REGEXP_MATCH([Query],[クエリ1]) = true then [クエリGr1]
elseif REGEXP_MATCH([Query],[クエリ2]) = true then [クエリGr2]
~~中略~~
END
ページ分類と同様に分かりやすい名前で設定します。
ここまでがディメンションで、次が計算指標のフィールド式です。
データソースのCTRは集計式、Average Positionは加重平均でない為、
それぞれTableau側で新たに計算指標を作り直す必要があります。
(11)クリック率
SUM(Clicks)/SUM(Impressions)
(12)掲載順位
SUM(Impressions*Position)/SUM(Impressions)
「Impressions」「Position」を用いた加重平均のフィールド式を作成しました。
Tableau×Search Consoleの図表ビジュアライズ
実際に作成した表とグラフをいくつか紹介します。
サーチコンソールの月別サマリ
クエリ別の月別推移
クエリ(Query)別の結果を月別に並べた結果です。
管理画面ではこのように分かりやすく見れないですし、Googleデータポータルでもここまで見やすく可視化することもできません。
掲載順位が高いクエリ
Tableauのフィルタで「掲載順位が1-3位」のクエリで抽出しました。
この中でクリック率(CTR)が低い語句は訴求文に問題があるかもしれないですし、
クリック率が高く掲載順位も高い語句は広告出稿もする必要がないという判断もできます。
特定キーワードを含むQueryのみの今月/先月の結果
Tableauのフィルタによって、Queryに特定の語句を含む語句だけ抽出した結果です。
(”|”による正規表現で複数の単語を指定可)
このように管理画面だけでは分かりづらい傾向も
Tableauで可視化することですぐに分かる部分も結構ありそうですね。
おわりに:Tableau-サーチコンソールデータの自動化の次に目指すこと
このようにすることで、Big Queryなどのデータプラットフォームを使わずに
大量のデータを短時間で結果表示して分析することができるようになりました。
今後はこれをさらに応用させて、下記のことにも繋げていけます。
サーチコンソールとGoogleアナリティクスの統合
→特定のキーワード×ページで表示回数、掲載順位、セッション、直帰率、目標完了数を横一線で見れるようにする
サーチコンソールとGoogle広告の統合
→キーワードごとに両者でどのくらい表示回数、クリック数に差があるか比較する
TableauとSearch Consoleの機能も年々進化していますし、
今後も成果改善やビジネスに活かせるような分析が数多くできることを期待しましょう。