web-dev-qa-db-ja.com

グーグルgclidsをデコードする方法

さて、これに対する最初の反応は「できない」または「分析を使用する」である可能性が高いことを認識していますが、誰かがそれよりも多くの洞察を持っていることを願っています。

「自動タグ付け」を使用したGoogleアドワーズ広告は、宣伝されたサイトに移動するリンクに「gclid」(おそらく「googleclickid」)を追加します。これはクエリパラメータであるためウェブログに表示され、分析によってその訪問を広告/キャンペーンに結び付けるために使用されます。

私がやりたいのは、トラフィックについて独自の分析を行うために、gclidから有用な情報を抽出することです。この理由は次のとおりです。

  • 統計は不完全ですが、それらを照合する場合、どのような仮定を行ったか、およびそれらがどのように計算されたかを正確に把握しています。
  • データを残りのデータに結び付けて、変換率に対してはるかに正確な統計を生成できます。
  • 変換のためにjavascriptに依存する必要はありません。

これで、gclidがbase64でエンコードされている(またはいくつかの類似したバリアント)ことが明らかであり、その一部は他の部分よりも大きく異なります。それを超えて、私はそれが何に関連しているかを決定することができませんでした。

誰かが私がこれをデコードする方法について何か洞察を持っていますか、または誰かがすでにgclidをcompaignsまたはアカウントに関連付けていますか?

私はグーグルで数人の人々と話をしました、そして彼らの「邪悪にならない」というモットーにもかかわらず、彼らはNDAの下でさえこの情報を漏らす可能性について完全に議論することを望んでいませんでした。彼らは彼らが持っている独占が好きなようです私たちのウェブ統計。

21
Draemon

はるかに簡単な解決策は、Google Analyticsキャンペーン追跡パラメーター(utm_source、utm_campaign、utm_mediumなど)でリンクに手動でタグを付けてから、そのデータを引き出すことです。

Gclidは、アドワーズ広告のアカウント/キャンペーンなどだけではありません。同じアドワーズ広告を2回クリックすると、その特定のクリックに関連するあらゆる種類のセッションと費用のデータが存在するため、異なるgclidが表示される可能性があります。

Gclidはおそらく100%ランダムではありませんが、その数からすべてのAdWordsデータを抽出できるかどうか非常に驚いて心配しています。これは非常に大きなセキュリティ上の欠陥になります(つまり、任意のユーザーがAdWordsデータを表示する可能性があります)。多くの場合、疑似ランダムgclidはインプレッションごとに生成され、その広告がクリックされると、gclidはAdWordsにログインします(そうでない場合は破棄されます)。次に、アナリティクスはその数値を使用して、事後にデータをAdWordsと照合します。それ以外に、gclid番号自体に本質的な値はありません。

最後の点に関して、この情報をクラックまたはリバースエンジニアリングしようとすることは、GoogleAnalyticsとGoogleAdwordsの利用規約の両方で明示的に禁止されており、恒久的な禁止の理由となります。さらに、これらのサービスにサインアップするときに同意したTOSは、あなたが望む方法で使用するのはあなたのデータではないと述べています。グーグルは無料サービスを提供しているので、紐が付いています。データを完全に制御したくない場合は、他にもたくさんのソリューションがあります。ただし、そのような管理には割増料金がかかります。

グーグルは広告を売ることでほとんどすべてのお金を稼いでいる。 AdWordsは彼らの最大の金儲け製品です。彼らはそれがどのように機能するかについてあなたに機密情報を与えるつもりはありません。彼らはあなたが誰であるか、またはあなたがその情報で何をしようとしているのかを知りません。 NDAに署名し、訴訟を起こす法的手段があるかどうかは関係ありません。その情報を競合他社に提供した場合、あなたの人生はお金を返済するのに十分な価値がありません。あなたはそれらを失ったでしょう。

申し訳ありませんが、「邪悪になるな」かどうかにかかわらず、Googleはビジネスであり、慈善団体ではありません。彼らは、検索アルゴリズムを最初に要求した人に提供することによって、世界で最も成功した企業の1つにはなりませんでした。

23
Chris

gclidパラメータは Protocol Buffers でエンコードされ、次にBase64のバリアントでエンコードされます。

これを参照してください gclidをデコードするためのガイド そしてそれを解釈します。使用できる(Apacheライセンスの)PHP関数を含みます。

その中には基本的に3つのパラメーターがエンコードされており、そのうちの1つはタイムスタンプです。他の2つはまだ知られていない。

これらの他のパラメータの意味を理解する限り、それをeiパラメータと比較すると役立つ場合があります。これは 非常によく似た方法でエンコードされます (基本的にはキーが削除されたプロトコルバッファ)でる)。 eiパラメータには、マイクロ秒のように見えるタイムスタンプと、他の2つの整数もあります。

17
andre

参考までに、私は自分のサイトからのいくつかのglcidデータの簡単な分析を この投稿 に投稿しました。 gclidには確かに何らかの構造がありますが、解読するのは困難です。

8

グーグルのアドワーズAPIを介してgclidにリンクされているすべてのグッズを入手できると思います。具体的には、クリックパフォーマンスレポートをクエリできます。

https://developers.google.com/advertised/api/docs/appendix/reports#click

4
shep

弊社でもこの問題に取り組んでいます。 AdWordsの機能をよりよく理解できるようにしたいと考えていますが、アナリティクスの制限に不満を感じています。

現在の解決策は、正規表現を使用してGETリクエストのApacheアクセスログを調べることです。

.*[?&]gclid=([^$&]*)

それが存在する場合は、リファラー文字列を調べてキーワードを取得します。

.*[?&]q=([^$&]*).*

別のオプションは、Apache Webログを変更して、Googleが設定する__utmz Cookieのログ記録を開始することです。これには、utmctrのキーワードの一部が含まれている必要があります。グーグル__utmzクッキーとあなたはたくさんの情報を見つけることができるはずです。

リファラー文字列はどのくらい正確ですか? 100%ではありません。ファイアウォールとセキュリティアプライアンスはそれを取り除きます。ただし、自分で解析すると、GoogleAnalyticsよりも柔軟性が高まります。 gclidをAdWordsに送信してデータを取得するのはすばらしい機能ですが、その機能は利用できないようです。

編集:これを書いたので、リクエストパラメータとして各宛先URLに追加される独自のタグも作成しました。各タグは、テキスト、広告グループ、キャンペーン名のmd5ハッシュです。アクセスログから正規表現を使用して取得し、SQLデータベースで検索します。

4
Jeff Wu

まあ、これは答えではありませんが、アプローチは暗号化の問題に取り組む方法と似ています。

可能性1:それらはただランダムであり、その場合、あなたは失敗します。これは、ワンタイムパッドに似ています。

可能性2:それらは何かを「意味する」。その場合、環境を管理する必要があります。

  1. それらの優れたデータベースを入手してください。あなたのサイトや他の人のためのgclidsを見つけてください。すべてのクリックが発生したすべての時間、およびその他の潜在的に有用なデータを記録します
  2. ひびが入る!すでに開始しているので、収集したデータを既知のものに対して回帰し始め、復号化手法を使用したパターンを見つけることができるかどうかを確認します
  3. ランダムなgclidのスクレイピングを開始し、それらがどこに移動するかを確認します。

これが成功することを期待することはできませんが、幸運を祈っています。

1
Gregg Lind

これは、GCLIDパラメーターをデコードするための非プログラム的な方法です。クリックとコンバージョンを促進したキャンペーン、広告グループ、キーワード、プレースメント、広告を単純に把握しようとしている可能性があります。これを行うには、GCLIDを個別のコンバージョンタイプとしてAdWordsにアップロードしてから、コンバージョンタイプごとにセグメント化して、コンバージョンをトリガーした条件にドリルダウンします。これらの手順:

  1. AdWords UIで、[ツール]-> [コンバージョン]-> [クリックからインポート]ソースを使用してコンバージョンを追加するに移動します
  2. コンバージョンのインポートに関するAdWordsヘルプトピックにアクセスしてください https://support.google.com/advertised/answer/7014069 そして、GCLID値を使用して一括読み込みファイルを作成し、新しい「インポート元」にコンバージョンを割り当てます。クリック数」コンバージョンタイプ
  3. 左側のナビゲーションの[ツール]-> [コンバージョン]-> [コンバージョンアクション(アップロード)]でコンバージョンをAdWordsにアップロードします
  4. [キャンペーン]タブの[セグメント]-> [コンバージョン]-> [コンバージョン名]に移動します
  5. セグメントリストで新しいコンバージョン名を見つけます。これがコンバージョンの発生元です。 GCLIDの発信基準がわかるまで、[広告グループとキーワード]タブで同じプロセスを続けます
1
TJ Wilkinson

ここに考えがあります:gclidが単に暗号化ハッシュ、la bit.ly、または他のURL短縮サービスである可能性はありますか?

この場合、ハッシュされたテキストの内容はデータベースに書き込まれ、一意のIDに置き換えられます。

結局のところ、gclidはそれ以外の場合は長いテキストの束を短縮しています。

この例を見てください:www.example.com?utm_source = google&utm_medium = cpc

これに変換されます:www.example.com?gclid = XDF

uRL短縮サービスのように。

暗号化ハッシュをリバースエンジニアリングするには、換字式暗号が必要になります...それほど簡単な作業ではありません: https://crypto.stackexchange.com/questions/300/reverse-engineering-a-hash

たぶん、ログを深く掘り下げたり、パターンを探したりするなど...

0
Jareau Almeyda

担当者が弱いようですので、コメントではなく別の回答を投稿します。

明らかに、これは答えではありません。いくつかの考えを表明するだけです。

AdWordsで自動タグ付けを有効にすると、gclidパラメータがリンク先URLに追加されません。むしろ、Googleクリックトラッキングサーバーによって実行時にリンク先URLに追加されます。したがって、次の2つのいずれかが発生しています。

  1. クリックサーバーは、アナリティクスが後で検索できるように、アドワーズエンティティ識別子とともにgclidを保存しています。

  2. Gclidには、アナリティクスがデコードできるように、何らかの方法でエンコードされたエンティティ識別子があります。

パフォーマンスの観点から、Googleがオプション1のようなものを実装する可能性は低いようです。AnalyticsにgclidをAdwords IDに「参加」させることは、大規模では非常に非効率的です。

0
Taylor

別のアプローチは、少なくとも検索されたキーワードを提供するリファラーデータを単純に調べることです。

0
Ophir Prusak