エグゼクティブサマリー
Microsoft Clarity の Google Ads 連携は、キャンペーンの UTM タグ付けに全面的に依存しています。実務上、Clarity は各 Google Ads キャンペーンに utm_source、utm_medium、そして一意の utm_campaign 値が含まれていることを期待しており、それによってセッションを正しいキャンペーンに紐づけます。これらの UTM パラメータが欠落している、重複している、または不一致の場合、Clarity は Google Ads 側の指標、つまりインプレッション、CTR、CPC などは取り込めても、そのキャンペーンのセッション数を 0 と表示することがあります。これは上記スクリーンショットや報告されているエラーメッセージと一致します。要するに、Clarity の「利用可能なデータがありません」という警告は、Clarity がそのキャンペーンの UTM 値でタグ付けされたセッションを見つけられなかったことを意味します。
今回の調査では、各キャンペーンの Final URL suffix に、一意で大文字小文字を区別する utm_campaign タグを設定する必要があることが分かりました。たとえば、あるガイドでは「各キャンペーンは Final URL suffix に一意の UTM campaign 値を持つべき」と明示的に警告しています。Clarity が認識するのは標準的な UTM パラメータ、すなわち utm_source、utm_medium、utm_campaign のみであり、GA4 専用の utm_id や追加のタグは使用しません。
この問題の最も可能性が高い原因は、UTM タグ設定の不備です。たとえば、設定レベルが間違っている、複数キャンペーンで同一タグを使っている、大文字小文字が一致していない、などです。また、URL リダイレクトによってクエリパラメータが削除されている可能性もあります。
以下では、可能性の高い仮説、問題を切り分けるための簡潔な A/B テスト計画、具体的な URL 例、修正手順、ロールバック戦略、そして無駄な作業を避けるためのチェックリストを示します。さらに、utm_campaign の選択肢、つまり {campaignid}、キャンペーン名、カスタムパラメータを使う場合の比較表も提示します。すべての主張は、Microsoft のドキュメントおよび専門家・コミュニティ情報に基づいています。
Clarity 公式要件
Clarity のドキュメントでは、Google Ads キャンペーンには UTM パラメータが必要であり、各キャンペーンの utm_campaign 値は一意でなければならないと明確に説明されています。Clarity の「Getting started」ガイドには、次のように書かれています。
「キャンペーンに UTM パラメータが設定されていることを確認してください。各キャンペーンが一意の UTM campaign パラメータ値を使用していることを確認してください。これにより、Clarity データと正確に紐づけられます。」
同様に、Clarity の Campaign Insights ドキュメントでは、セッションをキャンペーンにマッピングするには、utm_source や utm_campaign などの正確な UTM タグ付けが必要であると説明されています。言い換えると、Clarity は、セッションの URL にそのキャンペーンと一致する正しい UTM 値が含まれている場合にのみ、そのセッションをキャンペーンに割り当てます。これらがない場合、Clarity はキャンペーンのセッションを報告できません。これは、広告ダッシュボードでセッション数が 0 と表示されているスクリーンショットの状況と一致します。
Clarity の UI もこの仕様を反映しています。セッションをフィルタリングする際、Traffic フィルタでは Source、Medium、Campaign を選択できます。これはそれぞれ utm_source、utm_medium、utm_campaign に対応しています。設計上、Clarity はそれ以外の UTM パラメータを無視します。たとえば、Clarity のフィルタには utm_content、utm_term、GA4 固有の utm_id に対応する項目はありません。あるブログでの検証では、Clarity はキャンペーン ID 値を保持する utm_id によるフィルタリングをサポートしておらず、Source、Medium、Campaign、Channel のフィルタのみを提供していることが確認されています。
要するに、Clarity の広告連携で重要なのは utm_source、utm_medium、utm_campaign のみです。
図:Clarity の「Traffic」フィルタ画面では、Source、Medium、Campaign、Channel のみが表示されます。これらはいずれも UTM パラメータから派生する項目です。utm_term や GA4 の utm_id のような他の UTM は表示されません。
Google Ads のトラッキング / ValueTrack パラメータ
Google Ads では、UTM パラメータは通常、トラッキングテンプレートまたは Final URL suffix を使って追加されます。Final URL suffix フィールドは、キャンペーン、広告グループ、広告などのレベルで設定でき、ランディングページ URL の末尾にクエリパラメータを追加します。Google Ads ヘルプでは、Final URL suffix フィールドは、ランディングページ URL の末尾に追加されるパラメータを入力する欄であると説明されています。
Clarity 連携では、Google の有料検索からの流入であることを示すために、utm_source=google と utm_medium=cpc を含める必要があります。さらに、キャンペーンを識別するための utm_campaign が必要です。
ValueTrack には、Google Ads の数値キャンペーン ID を挿入する {campaignid} というプレースホルダーがあります。たとえば、Final URL suffix を次のように設定した場合、
utm_source=google&utm_medium=cpc&utm_campaign={campaignid}
クリック後の URL は次のようになります。
...?utm_source=google&utm_medium=cpc&utm_campaign=23842524195
ここで 23842524195 はそのキャンペーンの ID です。この方法では、各キャンペーンの ID が異なるため、utm_campaign の値は一意になります。
ただし、Google Ads には組み込みの {campaignname} パラメータはありません。そのため、URL にキャンペーン名のテキストを入れたい場合は、手動で入力するか、カスタムパラメータを使う必要があります。たとえば、キャンペーンレベルで _campaignname のようなカスタムパラメータを定義し、utm_campaign={_campaignname} と設定することができます。この柔軟性により、utm_campaign フィールドには、キャンペーン名、コード、その他の識別子を入れることができます。
どの方法を使う場合でも、重要なのは、Clarity が実際に見るランディングページ URL に次のようなパラメータが含まれていることです。
?utm_source=google&utm_medium=cpc&utm_campaign=VALUE
並列トラッキングを使用している場合でも、Google は Final URL suffix のパラメータを付与するため、最終的に遷移する URL は次のようになります。
https://example.com/page?utm_source=google&utm_medium=cpc&utm_campaign=...
図:Google Ads の「Campaign URL options」では、Settings タブ内の Final URL suffix に UTM タグを入力します。例:
utm_source=google&utm_medium=cpc&utm_campaign=MyCampaignName
Google Ads 側の重要ポイントは次のとおりです。
{campaignid}プレースホルダーは数値のキャンペーン ID を返します。ネイティブの
{campaignname}は存在しないため、実際のキャンペーン名を使いたい場合は手入力またはカスタム値が必要です。UTM タグはアカウント、キャンペーン、広告グループ、キーワードレベルで設定できます。ただし、Clarity はキャンペーンレベルでデータを紐づけるため、各キャンペーンの設定で行うのが最も安全です。
アカウントレベルだけで設定すると、すべてのキャンペーンに同じ
utm_campaignが付いてしまい、Clarity の「一意であること」という要件に反します。どの方式を使う場合でも、実際の最終 URL をプレビューし、UTM クエリ文字列が意図どおりに付いていることを確認してください。
コミュニティ上の解決策とテスト事例
複数の専門家やユーザー報告も、公式ガイダンスと同じ方向を示しており、よくある落とし穴を明らかにしています。
{campaignid} とキャンペーン名
Ilya Bykov 氏の LinkedIn 投稿では、多くの人が UTM を付け忘れていると指摘され、次のような例が示されています。
?utm_source=google&utm_medium=cpc&utm_campaign={campaignid}&utm_term={keyword}
また、必要に応じて {campaignid} を静的な名前に置き換えることもできると説明されています。要するに、上記のような UTM 設定が推奨されています。
手順付きガイド
「Playhouse Digital」のブログでは、キャンペーンレベルで UTM を追加するよう明示的に説明されています。
「Campaign URL tracking options にこれを追加する必要があります。Final URL suffix は
utm_source=google&utm_medium=cpc&utm_campaign=キャンペーン名を手入力とします。大文字小文字は区別されます。」
これは、各キャンペーンをどのように設定するかを具体的に示しています。この著者も、Clarity が使うのは Source、Medium、Campaign の UTM のみであると説明しています。
キャンペーン名とキャンペーン ID
別の専門ブログ「Man with Many Caps」では、次のように説明されています。
「Clarity は UTM campaign パラメータを使ってセッションをキャンペーンに一致させます。各キャンペーンは Final URL suffix に一意の UTM campaign 値を持つ必要があります。複数のキャンペーンが同じ UTM campaign 値を共有していたり、UTM トラッキングなしでキャンペーンが実行されていたりすると、Clarity 上でデータがまとめられてしまい、キャンペーン単位の粒度が失われます。」
これは、Clarity が照合に使うのは utm_campaign の中身であり、それが必ずしも ID である必要はないことを強調しています。そのため、キャンペーン名または一意のカスタムラベルを使うのが実務上のベストプラクティスであることを示唆しています。
Clarity での UTM フィルタリング
第三者による分析では、Clarity は utm_source、utm_medium、utm_campaign のみでフィルタリングし、utm_id やその他の GA4 タグを無視することが分かっています。つまり、GA4 の utm_id、これは内部的なキャンペーンキーを保持するものですが、Clarity には関係ありません。
あるテストでは、セッション中に utm_source が変わっても 1 セッションとしてカウントされましたが、Clarity のフィルタでは最後に見た値に紐づけられることが確認されています。
症状報告
Microsoft Q&A や GitHub では、今回と同じような症状が報告されています。つまり、広告のインプレッションは表示されるが、セッション数が 0 のままで、Clarity が UTM タグ不足を警告するケースです。
GitHub の Issue #787 では、ユーザーは UTM を設定済みだと主張しているにもかかわらず、セッションが 0 のままでした。これは、大文字小文字の違いや suffix の欠落など、微妙な不一致でも紐づけが壊れる可能性を示しています。この Issue は解決策なしでクローズされていますが、少なくとも Clarity 側では、この種の問題を「UTM タグが正しくない」と認識することが分かります。
まとめると、コミュニティ上の共通見解は、Final URL suffix を使ってキャンペーンレベルで明示的な UTM パラメータを追加し、各キャンペーンの utm_campaign を一意にすることです。多くの場合、キャンペーン名または一意のコードを使います。以下では、これらのアプローチを直接テストする方法を示します。
可能性の高い原因、根本原因の仮説
公式ガイダンスとユーザー報告に基づくと、「セッションデータがない」問題の最も可能性が高い原因は次のとおりです。
1. UTM パラメータの欠落または誤り
キャンペーンのクリックに必要な UTM が含まれていないケースです。たとえば、Final URL suffix が設定されていない、または UTM を含まないトラッキングテンプレートだけが設定されている場合、Clarity はその訪問をタグなしの Direct 流入として扱う可能性があります。公式ドキュメントも正確な UTM タグが必要であると説明しており、連携エラーメッセージでも UTM が正しく設定されていないと示されています。
つまり、utm_source=google や utm_campaign が存在しない、または形式が不正な場合、Clarity はセッションを広告にマッピングできません。これは最も可能性が高い原因です。
2. 一意でない、または共有された utm_campaign
複数のキャンペーンが同じ utm_campaign 値を使っている場合です。たとえば、すべてのキャンペーンに同じ静的キャンペーン名を設定している、あるいはアカウントレベルの UTM を全キャンペーンに適用している場合などです。この場合、Clarity はデータをまとめてしまうか、誤って割り当てる可能性があります。
公式ドキュメントでは、各キャンペーンが独自の UTM 値を持つ必要があると明確に述べられています。この要件に反している場合、Clarity はセッションを無視する、あるいは誤ったキャンペーンに割り当てる可能性があります。実務上、2 つのキャンペーンが同じタグを持っていると、合算されたセッションがどちらか一方に出るか、集計エラー的に失われる可能性があります。
3. 大文字小文字や書式の不一致
Clarity の utm_campaign 照合は、大文字小文字を区別するように見えます。Playhouse のガイドでは、キャンペーン名は大文字小文字を区別すると明示されています。たとえば、SummerSale と summersale は別物として扱われる可能性があります。
また、UTM にスペースや特殊文字が含まれていて URL エンコードされていない場合、クエリ文字列が壊れることがあります。大文字小文字の不一致やエンコードの問題によって、Clarity がキャンペーンを認識できないという仮説が成り立ちます。
4. Final URL suffix とトラッキングテンプレートの混同
Google Ads では、UTM を追加する方法が複数あります。アカウント、キャンペーン、広告レベルなどです。そのため、意図しないレベルに UTM が設定されている可能性があります。
たとえば、アカウントレベルの suffix だけを使うと、すべてのキャンペーンに同じ UTM 文字列が付いてしまいます。これは先ほどの「一意でない utm_campaign」問題につながります。
また、{lpurl} を含むトラッキングテンプレートを使っているが、Final URL suffix に UTM が含まれていない場合、実際のランディングページ URL には UTM が付かない可能性があります。UTM は、実際にクリック後に表示される最終 URL に含まれている必要があります。広告の Final URL に UTM がなければ、トラッキングテンプレート上で何かを設定していても、Clarity はそれを見ることができません。
5. リダイレクトまたはタグの問題
ランディングページ URL がすぐに別ドメインや別パスへリダイレクトし、その際にクエリパラメータが削除されている場合、Clarity のスクリプトが動作する最終ページでは UTM クエリ文字列が見えません。
同様に、Clarity のトラッキングコードがランディングページで発火していない場合、そもそもセッションは記録されません。録画一覧のスクリーンショットから、サイト上の他のセッションは記録されているようなので、全体的な未設置の可能性は低いですが、特定の広告やページではあり得ます。
6. タイムゾーンまたは反映遅延
Clarity ダッシュボードはローカルタイムゾーンを使い、Google Ads は広告アカウントのタイムゾーンを使うため、一時的なズレが生じる可能性があります。ただし、数日経てば通常は解消されるはずです。多くの報告でも、遅延はせいぜい 1〜2 日程度とされています。少なくとも一部の日付で UTM が正しいにもかかわらず、すべてのキャンペーンでセッションが 0 である場合、この原因だけで説明するのは難しいです。
7. Clarity のバグまたは連携の制限
最後の可能性として、未知のバグや機能制限があります。たとえば、Performance Max キャンペーンがまだ広告ダッシュボードに表示されないという報告もあります。ただし、すべてのキャンペーンで一貫してセッション 0 となっており、かつ UTM 要件に関する明示的なエラーメッセージが出ている場合、設定ミスの可能性がはるかに高いです。
可能性の順位としては、1〜3、つまり UTM の欠落、誤り、重複、大文字小文字の問題が最有力です。4〜5 も URL 構成や配信経路に関係するため、十分にあり得ます。6〜7 は可能性は低いものの、完全には除外できません。
テスト計画:最小限の A/B キャンペーンテスト
目的:
キャンペーン ID、キャンペーン名、その他の値のうち、どの utm_campaign 方式なら Clarity がセッションを記録できるかを検証します。
同じランディングページを指す 2 つの Google Ads キャンペーン、Test A と Test B を作成し、utm_campaign の値だけを変えます。Clarity のセッション表示を比較することで、どの UTM 設定が機能するかを確認できます。
セットアップ
1 つのランディングページ URL を選びます。例:
https://www.example.com/landing-page
このページに Clarity のトラッキングコードが設置されていることを確認します。
Google Ads で、設定が同一の 2 つの新規キャンペーン A と B を作成します。キーワード、予算、広告などは可能な限り同じにし、同程度のトラフィックが得られるようにします。
Campaign A では、以下を設定します。
Google Ads の Settings > Campaign URL options > Final URL suffix に次を入力します。
utm_source=google&utm_medium=cpc&utm_campaign={campaignid}
これは ValueTrack の {campaignid} を使うため、クリックごとに utm_campaign=[数値ID] が付きます。その他の UTM は上記のとおり、source は google、medium は cpc とします。
Campaign B では、他の設定をすべて同じにしたうえで、Final URL suffix だけを次のように設定します。
utm_source=google&utm_medium=cpc&utm_campaign=TestNameB
TestNameB は一意の名前にします。たとえば実際のキャンペーン名と完全一致させます。これは静的なキャンペーン識別子を使う方式です。
両方のキャンペーンを有効化して実行します。別々のキャンペーンを作りたくない場合は、既存キャンペーンを複製し、コピー側の Final URL suffix だけを変更しても構いません。
広告クリック時の挙動
Campaign A の広告をクリックすると、結果の URL は次のようになります。
https://www.example.com/landing-page?utm_source=google&utm_medium=cpc&utm_campaign=1234567890
ここで 1234567890 は Campaign A の ID です。
Campaign B の広告をクリックすると、URL は次のようになります。
https://www.example.com/landing-page?utm_source=google&utm_medium=cpc&utm_campaign=TestNameB
実施期間
両方のキャンペーンを同時に短期間、たとえば 3〜7 日間実行し、データを収集します。各キャンペーンで少なくとも数クリックは得られるようにします。
観察項目
十分なトラフィックが得られたら、Clarity の Advertising Dashboard を確認します。特に各キャンペーンの Sessions 列を見ます。テスト期間を含む日付範囲でフィルタする必要があるかもしれません。
成功条件
Campaign B、つまり utm_campaign=TestNameB を使ったキャンペーンで Clarity のセッション数が 0 より大きければ、Clarity が TestNameB のセッションを認識したことになります。
Campaign A、つまり {campaignid} を使ったキャンペーンについては、セッションが表示されれば数値 ID 方式も機能していることになります。もし Campaign B はセッションが出るが Campaign A は 0 のままであれば、Clarity がテキストのキャンペーン名を必要としていたことが確認できます。
失敗条件
どちらのキャンペーンも数日後にセッションを表示しない場合、かつ他のキャンペーンではセッションが見えている場合は、コード設置やリダイレクトなど、よりシステム的な問題が疑われます。
両方のキャンペーンでセッションが表示される場合は、UTM 自体が問題ではなかったか、Clarity が両方の方式を受け入れていることになります。
必要に応じて、UTM なしのコントロールキャンペーンを 3 つ目として用意してもよいです。その場合、Clarity では 0 セッションになるのが期待されます。これにより、タグなしクリックがカウントされないことを検証できます。
flowchart LR
Start[Test: Setup two identical campaigns A and B]
Start --> SetUp[Set Final URL suffix for each campaign:<br>- Campaign A: utm_campaign={campaignid}<br>- Campaign B: utm_campaign=UniqueName]
SetUp --> RunAds[Run campaigns for several days]
RunAds --> CollectData[Collect click data in Clarity]
CollectData --> CheckA{Sessions in Clarity?}
CheckA -->|Campaign A| CheckB{Campaign B Sessions?}
CheckB --> ResultA[Campaign A sessions<br>- If >0: {campaignid} works<br>- If 0: {campaignid} fails]
CheckB --> ResultB[Campaign B sessions<br>- If >0: UniqueName works<br>- If 0: UniqueName fails]
ResultA --> Analysis[Analyze results to identify cause]
ResultB --> Analysis
根本原因の仮説、優先順位付き
1. UTM タグ設定の問題、最有力
Google Ads キャンペーンに、キャンペーンレベルで正しく整形された UTM タグがない可能性です。Final URL suffix が設定されていない、または不正に設定されている可能性があります。これはエラーメッセージおよび Microsoft のドキュメントと一致します。
すべてのキャンペーンでセッションが 0 になっているため、共通の設定問題である可能性が高いです。
2. 重複した、または一意でない UTM campaign 値
キャンペーンが同じ utm_campaign を持っている可能性があります。たとえば、アカウントレベルの suffix がすべてのキャンペーンに継承されている、あるいは同じタグを複数キャンペーンにコピーしている場合です。
これは「一意の値」という要件に反し、Clarity がデータを落とす、またはまとめてしまう原因になります。Man with Many Caps のブログでも、1 つの UTM を複数キャンペーンで共有すると、キャンペーン単位の粒度が失われると警告されています。
3. 大文字小文字または書式の不一致
UTM 値は存在しているが、大文字小文字が異なっている、またはタイプミスを含んでいる可能性です。たとえば、Promo2025 と promo2025 は一致しません。Playhouse のガイドでは、キャンペーン名は大文字小文字を区別すると明示されています。余分なスペースや ? の欠落もクエリを壊す可能性があります。
4. トラッキング設定の階層が間違っている
UTM が意図しない階層に設定されている可能性があります。たとえば、Final URL suffix ではなくトラッキングテンプレートに追加されていたり、アカウントレベルのみに設定されていたりするケースです。その場合、実際にクリックされた最終 URL に UTM が付かない可能性があります。
Playhouse のブログでは、キャンペーンごとに Campaign > Tracking Options > Final URL suffix に設定することを強調しています。トラッキングテンプレートと Final URL suffix のどちらかが欠けていたり、噛み合っていなかったりすると、クリック時にタグが付かない可能性があります。
5. ランディングページのリダイレクトで UTM が削除されている
ランディングページが即座に別 URL へリダイレクトし、その過程でクエリパラメータが消えている場合、Clarity は UTM を見ることができません。同じ最終 URL が他のキャンペーンで機能しているなら可能性は低いですが、キャンペーンごとに微妙に違う URL を使っている場合や、正規化リダイレクトがある場合はあり得ます。
6. スクリプト設置またはフィルタリングの問題
Clarity スクリプトがランディングページに存在しない、または広告ブロッカーや CSP によってブロックされている場合、セッションは記録されません。録画リストのスクリーンショットでは他のセッションが見えているため、全体的な未設置の可能性は低いですが、確認する価値はあります。
7. 連携遅延またはバグ
Microsoft はデータが 1〜3 日程度で表示されることを示唆していますが、さらに時間がかかったユーザーもいます。キャンペーンが新しい、またはトラフィックが少ない場合、単にダッシュボードがまだ更新されていない可能性があります。また、Performance Max キャンペーンが表示されないなど、限定的なバグの可能性もあります。ただし、複数日・複数キャンペーンにわたって 0 が続く場合、優先順位は低いです。
修正手順とロールバック計画
テストの結果、UTM 関連が原因と確認された場合は、次の修正を推奨します。
キャンペーンレベルの UTM を追加または修正する
Google Ads で対象キャンペーンの設定を開きます。
Settings > Campaign URL options > Final URL suffix
ここに、Clarity が必要とする UTM パラメータを正確に入力します。
例:
utm_source=google&utm_medium=cpc&utm_campaign=MyCampaignName
MyCampaignName は、そのキャンペーン固有の名前に置き換えます。スペースや特殊文字は避け、大文字小文字も統一します。必要であれば、名前の代わりに {campaignid} を使うこともできます。これは一意の数値 ID を自動生成します。各キャンペーンに対して保存・適用します。
一貫性を確認する
すべてのアクティブキャンペーンに、utm_source、utm_medium、utm_campaign が含まれていることを確認します。Clarity は過去の欠落分をさかのぼって補完しません。すべてのアクティブキャンペーンで、今後のクリックに UTM が付くようにします。
URL の挙動を確認する
Google Ads のプレビューまたは実クリックで、ランディングページ URL に新しい UTM が含まれていることを確認します。また、リダイレクトがある場合でも、最終 URL まで UTM クエリ文字列が保持されていることを確認します。
処理時間を待つ
Clarity が新しいタグ付きセッションを収集・処理するまで、少なくとも 24〜48 時間待ちます。実務上、Clarity ではキャンペーンセッションが 1〜2 日以内に更新されることが多いです。
Clarity ダッシュボードを再確認する
一定時間が経過したら、Clarity の Advertising dashboard を再確認し、以前は 0 だったキャンペーンにセッション数が表示されるか見ます。既知の UTM を持つテストキャンペーンと比較してください。
ロールバック計画
変更後にセッションが表示されない、または予期しない問題が起きた場合は、Google Ads の Final URL suffix を元の値に戻す、またはクリアします。正しい UTM を追加すること自体は通常リスクが低く、他のデータを壊すことはあまりありません。
予期しない問題がある場合は、Clarity 側で Google Ads 連携を一時的に無効にし、URL を修正した後で再度有効化することもできます。
注意:
変更前には、以前の Final URL suffix をメモする、またはスクリーンショットを保存しておくと、正確に元へ戻せます。実務上、UTM の設定ミスは致命的ではなく、最悪でも分かりにくいキャンペーン名でデータが表示される程度です。特定できればすぐ修正できます。
無駄な作業を避けるためのチェックリスト
大がかりなトラブルシュートに入る前に、次の項目を確認してください。
UTM の存在
各 Google Ads キャンペーンが必要な UTM を送信しているか確認します。Google の広告プレビュー、または実クリックで、ランディングページ URL に次が含まれているか見ます。
utm_source=google&utm_medium=cpc&utm_campaign=...
含まれていない場合は、そこで作業を止めます。UTM が存在しない限り、それ以上 Clarity 側を直しても効果はありません。
キャンペーンタグの一意性
2 つ以上のキャンペーンが同じ utm_campaign 値を共有していないことを確認します。アカウントレベルの Final URL suffix を使っていたり、キャンペーン間でタグをコピーしていたりする場合は、各キャンペーンの値を別々にします。キャンペーン名または ID を使うのが一般的です。
Clarity 連携設定
Clarity で正しい Google Ads アカウントが接続されていることを確認します。Clarity の Setup 画面で、Google Ads が Connected になっている必要があります。まだ Get Started の表示なら、まずアカウントを接続します。
時間とタイムゾーン
Clarity で正しい日付範囲を見ていることを確認します。Clarity はローカルタイムゾーンを使います。キャンペーンを開始した直後、または停止直後だと、セッションがないように見えることがあります。UTM を修正した後は、結論を出す前に 24〜48 時間待ちます。
リダイレクトとピクセル
Clarity が見るランディングページ URL が最終 URL であることを確認します。サーバーリダイレクトによってクエリパラメータが削除されていないか見ます。また、Clarity のトラッキングスクリプトがそのページに存在し、発火していることを、ブラウザ開発者ツールやネットワークログで確認します。スクリプトが読み込まれなければ、UTM が完璧でもセッションは記録されません。
フィルタ条件
Clarity 側で、誤ってセッションを除外するフィルタやセグメントを設定していないか確認します。たとえば、別の Source / Medium でフィルタしている可能性があります。最初は、日付範囲だけをテスト期間に合わせ、All sessions の状態で見るのが安全です。
安定したキャンペーン名を使う
utm_campaign ではスペースや記号を避けます。短く明確な名前、または ID を使います。Clarity は大文字小文字を区別する可能性があるため、一貫性を保ってください。
バックアップ計画
テストや変更がデータを乱す可能性があると感じる場合は、現在の設定をメモするか、2 つ目のテストキャンペーンを作ります。ただし、一般的に UTM の更新は低リスクです。不安がある場合は、Clarity の Google Ads 連携を一時的に無効化し、URL を修正してから再度有効化できます。
このチェックリストに従うことで、真の原因、つまり UTM 設定に集中でき、無駄な作業を減らせます。
UTM campaign の選択肢比較
utm_campaign の値 | Clarity での結果 | 注記 |
|---|---|---|
{campaignid}、数値 ID | 各キャンペーンが異なる ID を持つため一意になります。Clarity はセッションを記録し、対応するキャンペーンに紐づける可能性があります。ただし、Clarity UI では Google Ads から取得した実際のキャンペーン名で表示される場合があります。ID を使うこと自体に害はなく、「一意の値」という要件を満たします。ただし、一部のガイドでは読みやすさのために実際の名前を使うことが推奨されています。 | Google Ads の ValueTrack パラメータとして公式にサポートされています。{campaignid} を使う場合でも、値が一意であるため Clarity は正しくセッションを紐づけるはずです。ただし、Microsoft の公式ドキュメントではどの形式を使うべきか明示されていないため、どちらでも機能する可能性があります。実務上は読みやすさのため、名前を好む人もいます。 |
| キャンペーン名、静的文字列 | 各キャンペーンに手動で一意の値を設定すれば機能します。文字列が期待するキャンペーン名と完全一致し、大文字小文字も一致していれば、Clarity はそのキャンペーンにセッションを表示します。 | 多くのガイドで推奨される方法です。キャンペーンの実際の名前を UTM に使います。大文字小文字に注意してください。スペースや特殊文字がある場合は、URL エンコードするか避ける必要があります。常に WinterSale2026 のような安定した表記を使い、winterSale2026 のように揺れないようにします。 |
| カスタムパラメータ値 | 静的文字列と同じように動作します。たとえば utm_campaign={_campName} と設定すると、定義した値が使われます。Clarity はその値をキャンペーン識別子として扱います。 | Google Ads で _campName のようなアンダースコア付きカスタムパラメータを定義し、その値をキャンペーン名またはコードにできます。そのうえで suffix に utm_campaign={_campName} を設定します。結果は名前を直接使う場合と実質的に同じです。名前管理を分けたい場合や一貫性を保ちたい場合に便利です。 |
いずれの場合も、Clarity にとって重要なのは、UTM 値がキャンペーン間で異なり、ダッシュボードが期待する値と正確に一致することです。{campaignid} は一意性を保証でき、手入力も不要です。一方、キャンペーン名やカスタムパラメータは人間に読みやすいラベルを提供します。テスト後、正しくセッション数が出る方式を採用すれば問題ありません。
前提条件
この分析では、Clarity の比較的新しいバージョン、つまり 2024 年以降のバージョンを使っており、Google Ads 連携自体は機能している、つまりアカウントが正しくリンクされていることを前提としています。また、サイトのランディングページがリダイレクト時にクエリパラメータを削除していないことも前提としています。
これらの条件が異なる場合、たとえば古いベータ版の広告ダッシュボードを使っている、またはサーバーが UTM を削除している場合、挙動は変わる可能性があります。上記のガイダンスは、2026 年半ば時点の Microsoft 公開ドキュメントと一般的な利用状況に基づいています。カスタムタグ管理やマルチドメイン構成を使っている場合は、クロスドメイントラッキングなど追加の手順が必要になる可能性があります。