Google 広告の Hagakure を再解釈する

2015年頃からGoogleが自動入札の利用を促進することを目的に言い始めたのが「Hagakure」です。

「Hagakure」の構成要素は主に、自動入札の利用を推奨すること自動入札がよく仕事をしてくれるように機械学習が促進されやすいアカウトの構造にすること機械学習を阻害する要因を減らすことの3点です。

たまにGoogleの推奨の変遷を誤解して「「Hagakure」はもう古い」という人がいますけれども、誤りです。「Hagakure」は自動入札を利用したGoogle・Yahoo!の検索広告運用の基礎なので、Google・Yahoo!の検索広告に携わるのでしたらいまでも、「Hagakure」は正しく理解することを強くおすすめします。むしろ、自動入札の存在感が高まっている今だからこそ、改めてしっかり理解する必要があります。

2020年にあえて「Hagakure」を改めて解説する意味

「Hagakure」は、Googleの検索広告のアカウントの構造の作り方について、Googleが推奨をしたものです。2013年頃から少しずつ情報が出始め、2015年ころから広く認知されるようになってきました。

当時、多くの運用者がこの「Hagakure」について語りたがりましたが、実は「Hagakure」はGoogleの日本法人が、限られた代理店向けに行った教育プログラムでした。なので、「Hagakure」に関しては公式の情報に直接触れられた人は限られています。

当時でも、情報発信をしていた人の中には少なくない割合でGoogleから「Hagakure」の真意や理屈の説明を受けたわけではなく、「Googleに聞いた人から聞いた」、「Googleに聞いた人から聞いた人から聞いた」みたいな状態で話していた人がほとんどでした。なので、正直、インターネット上に存在している「Hagakure」の解説には正しくないものや、Googleの言ったことの劣化版受け売りのようなものが多かったのが実際です。

他の観点では、「海外の運用者はHagakureを信用していない」という情報発信が存在していますが、これも誤りです。「Hagakure」は日本で先行されたプロジェクトなので、このような記事が書かれたときにはまだ海外では「Hagakure」は話されていませんでした。実際のところは北米・ヨーロッパでも「Hagakure」の周知は進んでおり、2019年にアイルランドで開催されたプロダクトエキスパートサミットで聞いてきた話では、北部ヨーロッパの代理店向けへの周知はすでに終わっており、次は北米で話すと言っていました。

ところで、「Hagakure」はスマート自動入札を利用したGoogleの検索広告運用の基礎になっていますから、提唱されてからだいぶ時間が経過した今でも「Hagakure」を理解することはとても重要です。また、スマート自動入札を利用する運用が浸透してきた今だからこそできる、熟成された解釈・説明もありますので、このタイミングで改めて解説します。

なるべく、「機械学習を促進させる」とか「最適化が進む」と言ったような便利な言葉に逃げずに解説をしたいと考えていますので、説明が長くなる箇所もありますがお付き合いください。

Googleが「Hagakure」を推奨した背景:過剰細分化

「Hagakure」を正しく理解するためには、なぜ、Googleが「hagakure」をいい始めたのか、その背景を理解する必要があります。その背景とは「過剰細分化」です。

細分化はGoogleが言い始めたことではありませんでしたが、「Google 広告(当時の名称はGoogle AdWords)の運用においては、どんなキーワードのときに、いくらで入札して、どの広告を表示させるのか、アカウントの構造を細分化してキーワードごとに細かく設定することで、細かく出し分けができて最適化される」という考えから、「1広告グループ1キーワード」や「1キーワード1広告グループ」、英語圏では「Single Keyword Ad Groups(SKAGs)」と呼ばれる過剰に細分化された構造にすることが流行りました。

検索広告における最適化の説明は「検索広告の「最適化」を言語化する」、「SKAGs」についての説明は「細分化の究極系 SKAGs について考える」にそれぞれ詳しくまとめてあります。

「細分化したほうが最適化できる」という風潮と、「キーワードは多ければ多いほうがいい」という風潮、さらに「マッチタイプはすべて登録することで取りこぼしが防げる」という風潮が合わさり、数万キーワード・広告グループというアカウントが乱立していました。そして、当時はスマート自動入札(当時の名前は「コンバージョンオプティマイザー」)もなく、手動入札(いまの入札戦略では「個別クリック単価」)で調整せざるを得ませんでした。

当然のことながら、人力でそんなに膨大なキーワードを適切に管理することは不可能なので、毎日キーワードの入札価格の調整に追われて、広告の訴求やリンク先の改善に手がつけられていないアカウントが乱立していました。なお悪いことに、それだけ入札調整に手間を掛けても、まだ適切に入札調整がされておらずに、入札価格が低すぎて広告が表示されないまま放置されるキーワードが大量に発生していた状態でした。

つまり、「SKAGs」のような細分化は、コンセプトとしては間違ってはいないのですが人間の手には余るため、細かく出し分けをするどころか入札調整が適切にできずに広告を表示できていないキーワードが発生するなど、本末転倒な結果になりがちだったということです。

このような状況をどうにかしようとして、Googleが推奨したのが「Hagakure」です。「Hagakure」の真意を理解するためには、多くの運用者たちが過剰に細分化をしたがった風潮があったこと、そして過剰に細分化することのデメリットを理解する必要があります。

Googleが「Hagakure」で伝えたかったこと

過度な細分化を避けてスマート自動入札を利用すれば、機械学習が適切な出し分けをしてくれるから過剰な細分化で無理に出し分けようとしなくても大丈夫ですよ。むしろ、スマート自動入札は様々なシグナルを利用するから、過剰に細分化をして出し分けようとするよりも高精度ですよ。だから無駄な細分化で疲弊するのをやめて、入札調整ばっかりしてないで、もっと広告とかリンク先の事を考えなよ」これが「Hagakure」の真意です。

つまり、Hagakureはスマート自動入札を利用することを前提にしています。そして、スマート自動入札が良い仕事をしてくれるように、機械学習が促進されやすいアカウント構造にすること機械学習を阻害するインプレッションシェア損失を発生させないことを推奨しています。アカウント構造は集約化したけれどもスマート自動入札は利用しないのでは本来の目的を達成できませんし、管理が杜撰でインプレッションシェア損失を発生させっぱなしにしているのでは意味がありません。

「Hagakure」の意味は「余計な手間・余計な時間を掛けるのをやめましょう」という意味が強く、アカウントの構造を「SKAGs」から「Hagakure」っぽく変えたからと言ってそれだけで改善するとは限りません。もちろん、広告のセレクションの精度向上や入札調整の精度向上によって効率化が図られることもありますが、どちらかと言うと、余計な手間と時間を省いてその時間で広告やリンク先のことを考えて、広告やリンク先を改善することで広告効果を改善しましょうというのがGoogleの意図です。

構造を変えただけで表示回数が増えたりした場合、それは「SKAGs」では調整ができておらずに広告を表示できていなかった検索語句にも広告を表示できるようになった、などのマイナスがゼロに戻っただけなのが実際です。

「Hagakure」も「SKAGs」も目的は同じ

とどのつまり、検索広告の運用において「最適化」とは何をすればいいのかと言うと、どんなキーワードのときに、どの広告を表示して、どのリンク先に行ってもらうのか、そして有効なクリックをどれだけ低いクリック単価で獲得できるのか、これを追求していくことです。なお、検索広告の最適化については「検索広告の「最適化」を言語化する」で詳しく解説しています。

「SKAGs」でも「Hagakure」でも目指しているものは同じです。

「SKAGs」がなるべく細かく設定して細かく調整をすることで最適化を図ろうとしているのに対して、「Hagakure」ではスマート自動入札を利用することで細分化をしたり手間を掛けたりせずとも同等以上の結果を得ようとする試みです。なので、目指すものは同じで、それをどのような手段で実現しようとしているのか、そのアプローチの違いです。どちらの方が優れているのかというものではなく、どちらのほうが状況に適しているかで考えましょう。

真・「Hagakure」の解説

最後に、2020年になった今だからこそできる、「Hagakure」を正しく理解するための解説をします。

「Hagakure」の構成要素は主に3点です。

  • スマート自動入札を利用すること
  • スマート自動入札が良い仕事をしてくれるように、機械学習が促進されやすい状態にすること
  • 機械学習が阻害されないように、インプレションシェア損失を発生させないこと

それぞれについて掘り下げます。

スマート自動入札を利用すること

「Hagakure」は、「スマート自動入札を利用すれば機械学習がターゲティング・広告の選択・入札などを最適な状態にしてくれるので、SKAGsの様に過剰に細分化して人力で出し分けようとしなくても大丈夫ですよ。むしろ、オークションごとに最適化をするので人力では不可能な高精度な運用ができますよ」というのが趣旨ですから、スマート自動入札を利用するのが前提です。

広告をする内容やビジネスの特性的にスマート自動入札の利用が適さない場合は、そもそも「Hagakure」を意識する必要はなく、むしろ「SKAGs」的な運用をする必要があります。

機械学習が促進されやすい状態にすること

わたしは機械学習の専門家ではないので、あくまでGoogle 広告の検索広告に限った領域に限定して機械学習について解説しますが、機械学習は「このデータの中から、このゴールを達成しやすい条件を探して見つけてね」とお願いしておくと、機械が自分で学んでくれるというものです。

例えばマーケティングの世界でよく言われる「気温とビールの売れ行きには相関がある」「35度まではアイスクリームがよく売れるけれども、35度を超えるとかき氷のほうが売れる」という関係を例にします。

これらは、「気温とビールの売れ行きには相関があるんじゃないか」、「暑すぎるとこってりするアイスクリームよりも、さっぱりするかき氷のほうが売れるんじゃないか」という【仮説】を人間が考えて、統計分析で関係があるかどうかを【検証】した結果としてわかったことです。一方で機械学習では日別のビールの売上推移と気温の推移、湿度の推移、日経平均株価の推移、などの関係がありそうなデータを機械学習に渡しておけば、関係があるものを自分で見つけ、関係がないものを無視して、自分で学習してくれます。

ところで、機械学習はあくまでデータを数的に処理します。なので、変な話、本当は全く関係がないのは人間には一目瞭然ですが、たまたまある期間の学習データの数値だけを見ると、靴下の売上高とビールの売上高に相関の関係が見つかったとします。人間だったら「そんなわけ無いでしょ」と取り合うことはないでしょうが、機械には気温の数値と靴下の売上高の意味の違いは理解できませんので、靴下の売上が伸びたらビールの仕入れ量を増やしてしまう可能性があります。

つまり、機械学習には余計なデータを渡すととんでもない結論を導いてしまうかもしれませんし、機械学習には「ゆーて、ないでしょ」というコモンセンスは備わっていません。機械学習には適切なデータを渡して学習してもらう必要があります。

これがGoogle 広告においては、「Hagakure」が推奨しているアカウント構造やアカウントの機能の活用という形で言語化されています。具体的には、以下の項目です。

  • 不必要な広告グループの細分化を避ける
  • 広告グループにオーディエンスリストを設定する
  • 「ラストクリック」以外のアトリビューションモデルでコンバージョンの計測をする

まず、「不必要な広告グループの細分化を避ける」についてですが、例として1対1でじゃんけんをする場面を考えてみます。1対1のじゃんけんの勝率は1/3ですが、じゃぁ実際に1対1でじゃんけんを3回したら1回だけ勝つのかと言うとそうではないのは体感的にわかりますよね。膨大な回数をすると勝率は1/3に収束していきますが、試行回数が少なければ1/3から大きく離れる結果にふつうになります。そもそも最初の1回については勝つか勝たないかのいずれかでしかないので、1回目の結果だけで集計したら勝率は0%か100%のいずれかになります。

検索広告の機械学習における試行回数はオークションに掛けられる回数です。そして、検索広告では広告グループでターゲティングと広告を管理していますので、広告グループ毎の試行回数が重要になります。広告グループを不必要に細分化することで、試行回数が複数の広告グループに別れてしまい、試行回数が減ることによって学習の精度が低下します。ですから、ターゲティングと広告が同じ、よりテクニカルには同じ広告を表示すれば良いキーワードたちは広告グループを分けることなくひとつの広告グループにまとめることで、不必要な試行回数の分散を防いで精度の高い学習が可能になります。

一方で、じゃんけんの勝敗についての学習に、将棋の勝敗のデータは必要ありません。なので、データ量は多いほうが良いと思いこんで、なんでもかんでもまとめてしまって、なるべく少ない広告グループになるべく多くのキーワードと広告を詰め込むのは無意味などころか不純物なので悪影響です。あくまで、分けるものは分けたうえで、不必要に分けすぎないほうがいいという話です。

次に、オーディエンスリストの設定とアトリビューションモデルの活用ですが、機械学習はあくまで、渡されたデータの中から法則性を見つけてくれるものですから、渡されていないデータからは学習しようがありません。なので、より高精度の学習をしてもらうためにデータを渡す必要があります。ではなぜ、とくにオーディエンスリストについてはすべてのリストを学習対象にして勝手にやってくれないのか、なぜリストの設定は人間がしなければならないのかというと、上記したとおり人間だったら「ゆーて違うでしょ」と判断するコモンセンスを機械学習は有していないからです。「何を学習させるのか」を判断するのかを考えるのが機械学習を活用した広告運用をする人間のすべきことです。

インプレッションシェア損失を発生させないこと

機械学習が検索広告の配信に対して介入できる場面とその介入の仕方はとても限られています。タイミングはオークションの発生時だけで、介入の仕方は以下の3点です。

  • そのオークションで広告を表示するかどうか
  • どの広告を表示するのか
  • いくらで入札するのか

詳しくは「検索広告では機械学習の最適化は何をするのか」で解説しています。

で、この判断はすべてオークションの発生時に、「その判断がコンバージョンに至ったかどうか」で良かった・良くなかったを学習し、次のオークションが発生したときの判断に活かされます。ところで、インプレションシェア損失が発生すると、オークションでは広告が表示されるように枠が取れたのに、インプレションシェア損失によって枠を失ってしまいます。詳しくは「Google・Yahoo!の検索広告のオークションの解説」で解説しています。

インプレションシェア損失が発生していると、インプレションシェア損失により広告が表示されなかったからコンバージョンが獲得できなかった状況を、機械学習の判断が間違っていたのでコンバージョンに至らなかった誤解してしまう場合があります。なので、自動入札を利用している際は、インプレションシェア損失が発生しないようにする必要があります。

「Hagakure」はスタートライン

「Hagakure」の真意は、手にあまるほどに過剰な細分化をして、入札価格の調整だけで日々が過ぎていき、しかもそれも手が回っていない状態になっていた運用者たちに対して、いつまでも入札調整だけして広告を回してないで、広告文やリンク先のことをもっと考えなよ、と問いかけるものでした。

そして、スマート自動入札を利用する以上、機械学習は促進させなければならず、Google 広告においては「Hagakure」はGoogle 広告の機械学習の取扱説明書のようなものです。Google 広告の機械学習を利用するにはGoogle 広告の機械学習の取扱説明書に従う以外ありません。アカウント構造を「Hagakure」にするのがいいかどうかという議論は無用です。スマート自動入札を利用するのなら「Hagakure」で、スマート自動入札を利用しないのなら「SKAGs」です。

そこの判断はさっとして、その商品・サービスは誰のどんなニーズに答えるものなのか、そのニーズを持っている人はどんな言葉で検索するのか、その言葉で検索をしている人はどんな言葉に反応するのか、など、広告のことを考えることに時間を使いましょう。