MSCLKIDがあるのにMicrosoft AdsでUTMパラメータが必要な理由
必要だ。MSCLKIDはMicrosoftのエコシステム内——Clarity、UETタグ、Microsoft Adsダッシュボード——での計測を担うが、そこで止まる。CRM、BIツール、サードパーティのアトリビューションプラットフォームはMSCLKIDを読み取れない。UTMパラメータはそのギャップを埋める。
Microsoft Advertisingは2026年第1四半期時点で、Bing、Yahoo、AOL、DuckDuckGoのシンジケーションパートナーを通じて米国デスクトップ検索の約38%を占める。これは誤差の範囲ではない。それでもほとんどのマーケティングチームはGoogle Adsの設定をコピーして終わりにする——マクロの構文が実際に一致しているか確認せずに。一致しない。Microsoft AdsはPascalCaseのマクロを使う——{CampaignId}であって{campaignid}ではない。ここを間違えると、GA4のレポートに実際のIDの代わりに{campaignid}という文字列がそのまま表示される。
設定は重要だ。Google Adsとの違いは小さくて見落としやすいが、データを台無しにするほど大きい。
Microsoft Adsはどんな動的パラメータに対応しているか
Microsoft Adsの動的パラメータ——UETタグパラメータまたはURLトラッキングマクロと呼ばれる——は、GoogleのValueTrackと同様に、クリック時にキャンペーンデータを自動挿入する。構文は単一の波括弧内のPascalCase:{Parameter}。
実際に使うものをまとめた:
| Microsoft Adsマクロ | 挿入されるデータ | 使用推奨フィールド |
|---|---|---|
{CampaignId} | キャンペーンの数値ID | utm_campaign、utm_id |
{Campaign} | キャンペーン名(テキスト) | utm_campaign |
{AdGroupId} | 広告グループの数値ID | utm_campaign |
{AdGroup} | 広告グループ名 | utm_campaign |
{AdId} | 広告の数値ID | utm_content |
{Keyword} | マッチしたキーワードのテキスト | utm_term |
{MatchType} | マッチタイプ:e、p、b | utm_term |
{Network} | ネットワーク:o(Bing)、s(シンジケート) | utm_source |
{Device} | デバイス:m、t、c | カスタムパラメータ |
{TargetId} | ターゲットID(オーディエンス、地域) | utm_term |
{QueryString} | ユーザーが入力した実際の検索クエリ | カスタムパラメータ |
{BidMatchType} | キーワードの入札マッチタイプ | カスタムパラメータ |
2点補足しておく。まず、{QueryString}はマッチしたキーワードではなく、実際の検索クエリを返す。UTMパラメータ全般が初めてなら、各フィールドの役割を理解するためにUTMパラメータ5つの解説ガイドを先に読むといい。Google Adsは「プライバシー」を理由に何年も前に検索クエリのパススルーを廃止した。Microsoftはまだ提供している。これは検索インテント分析において真の競争優位性だ——アナリティクスのスタックが対応しているなら、カスタムパラメータとして活用しよう。
次に、{Network}はBing所有のプロパティにはoを、シンジケーションパートナー(Yahoo、AOL、DuckDuckGo)にはsを返す。シンジケート検索を運用していてCPCが低いのにコンバージョン率が落ちている場合、{Network}でどのトラフィックがパートナートラフィックかを正確に把握できる。昨年運用したキャンペーンでは、支出の61%がコンバージョン率0.3%のシンジケーションパートナーに流れていた一方、Bing本体は2.8%だった。UTMに{Network}がなければ、この問題は見えなかっただろう。
マクロの完全なリファレンスはMicrosoft Adsトラッキングパラメータドキュメントを参照。
Microsoft Adsでトラッキングテンプレートを設定する方法
Microsoft Adsのトラッキングテンプレートは、Googleのコンセプトと同じ——アカウントレベルで設定すれば、すべての広告に自動的に継承される。
移動先:Microsoft Ads → すべてのキャンペーン → 設定(歯車アイコン) → アカウントレベルのオプション → トラッキングテンプレート
Microsoft Ads向けのクリーンシグナルメソッドテンプレート:
{lpurl}?utm_source=bing-{Network}&utm_medium=paid_search&utm_campaign={CampaignId}_{AdGroupId}&utm_content={AdId}&utm_term={Keyword}&utm_id={CampaignId}
{lpurl}はランディングページURLのMicrosoftマクロ——コンセプトも名称もGoogleと同じだ。クリック時にシステムがFinal URLに置換する。
内容の解説:
-
utm_source=bing-{Network}:静的な「bing」と動的なネットワークタイプを組み合わせる。GA4にはbing-o(Bing所有)またはbing-s(シンジケート)として表示される。この1文字が、お金の行き先を知るか推測するかの違いだ。 -
utm_medium=paid_search:GA4のデフォルトチャネルグループに合わせる。cpcでもbingでもppcでもない。まあcpcも機能はする。でもpaid_searchのほうがレポートで見やすく、正しくマッピングされる。どちらかに統一して、すべての有料検索プラットフォームで一貫させること。 -
utm_id={CampaignId}:GA4のコストデータインポートには欠かせない。数値IDはキャンペーンのリネームを乗り越える。「Q1ブランドキーワード」は誰かの年次整理で「H1ブランドキャンペーン2026」に変わるかもしれないが、{CampaignId}は永遠に12345678のままだ。
テンプレート入力後、Microsoft Adsにはテストボタンがある。必ず使おう。保存前にすべてのマクロが正しく解決されるかを検証してくれる。
注意点:Microsoft Adsではアカウント、キャンペーン、広告グループ、キーワード、広告のレベルでトラッキングテンプレートを設定できる。下位レベルが上位を上書きする。チームの誰かがテスト用にキャンペーンレベルのテンプレートを設定して削除し忘れると、そのキャンペーンはアカウントレベルの設定を無視する。定期的に監査を——バルクエディタでトラッキングテンプレートのフィルタを使って上書きを発見しよう。UTMガバナンスガイドでは、データが数ヶ月間壊れる前に問題を検出する監査プロセスの構築方法を解説している。
MSCLKIDとは何か、GCLIDとどう違うか
MSCLKID(Microsoft Click Identifier)は、GoogleのGCLIDに相当するMicrosoftの自動生成クリックID。Microsoft Adsで自動タグ設定が有効になっているとURLに付加される。?msclkid=abc123def456...のような形で、MicrosoftのUET(ユニバーサルイベントトラッキング)タグにクリックレベルのデータを渡す。
比較表:
| 機能 | MSCLKID | GCLID | UTMパラメータ |
|---|---|---|---|
| 自動生成 | あり | あり | なし(手動設定) |
| GA4での動作 | あり(インポート経由) | ネイティブ統合 | あり |
| CRMでの動作 | なし | なし | あり |
| BIツールでの動作 | なし | なし | あり |
| iOS 17 LTP対応 | なし | なし | あり |
| クロスプラットフォーム互換 | なし | なし | あり |
GA4の管理パネルでMicrosoft Adsアカウントをリンクすれば、GA4はMSCLKIDデータをインポートできる。ただしこれはGA4のみ——CRMでもBIダッシュボードでもサードパーティアトリビューションでもない。
また、GCLIDと同様に、AppleのiOS 17リンクトラッキング保護はメール、メッセージ、Safariプライベートブラウジング内のURLからMSCLKIDを削除する。UTMパラメータは影響を受けない。Appleのドキュメントによれば、リンクトラッキング保護は既知のクリック識別子を対象としている。
結論:自動タグ設定でMSCLKIDを有効にしつつ、トラッキングテンプレートでUTMパラメータも追加する。両者は競合せず共存できる。
Microsoft AdsとGoogle AdsのUTM設定の違い
コンセプトは同じだ。細部が違う。そして細部こそがトラッキングを壊す。
| 違い | Google Ads | Microsoft Ads |
|---|---|---|
| マクロの構文 | 小文字:{campaignid} | PascalCase:{CampaignId} |
| キャンペーン名マクロ | {campaignname} | {Campaign} |
| 広告グループ名マクロ | {adgroupname} | {AdGroup} |
| ネットワーク値 | g、s、d | o、s |
| 検索クエリアクセス | 廃止(プライバシー) | {QueryString}利用可能 |
| マッチタイプ値 | b、p、e | b、p、e(同じ) |
| 自動タグID | GCLID | MSCLKID |
| トラッキングテンプレートの場所 | 管理 → アカウント設定 → トラッキング | すべてのキャンペーン → 設定 → トラッキング |
最大の失敗?Google Adsのトラッキングテンプレートをマクロの大文字小文字を変えずにMicrosoft Adsにコピーすること。Microsoft Adsの{campaignid}は解決されず、文字列{campaignid}がそのまま渡る。GA4のレポートには実際のIDの代わりに{campaignid}_{adgroupid}というキャンペーン値が表示される。3つのクライアントアカウントでこれを見たことがある。どれもGoogle Adsからのコピペだった。
両プラットフォームを管理しているなら、Google Ads UTMガイドでGoogle固有の設定を確認しよう。構造は並行しているが、マクロは互換性がない。
プロのヒント:UTM Generatorで「Bing Ads」を選択すると、ツールが正しいフィールドにPascalCaseマクロを自動入力する——キャンペーンには
{CampaignId}_{AdGroupId}、コンテンツには{AdId}、タームには{Keyword}。Googleの小文字構文を誤ってコピペするリスクがない。Microsoft Ads用の{lpurl}トラッキングテンプレート形式を完全な状態で生成する。
Microsoft Adsのキャンペーンタイプ別テンプレート
キャンペーンタイプによって利用できるデータが異なる。アカウントレベルのテンプレートでほとんどのケースをカバーできるが、最適化されたバリアントを紹介する。
検索キャンペーン ——キーワードとマッチタイプのデータが利用可能:
{lpurl}?utm_source=bing-{Network}&utm_medium=paid_search&utm_campaign={CampaignId}_{AdGroupId}&utm_content={AdId}&utm_term={Keyword}_{MatchType}&utm_id={CampaignId}
ショッピングキャンペーン ——プロダクトデータが重要:
{lpurl}?utm_source=bing&utm_medium=shopping&utm_campaign={CampaignId}&utm_content={AdId}&utm_id={CampaignId}
オーディエンスキャンペーン(Microsoft Audience Network)——ディスプレイ系のインベントリ:
{lpurl}?utm_source=bing&utm_medium=display&utm_campaign={CampaignId}_{AdGroupId}&utm_content={AdId}&utm_id={CampaignId}
パフォーマンスMax ——2025年後半に開始したMicrosoftのPMax相当:
{lpurl}?utm_source=bing&utm_medium=paid_search&utm_campaign={CampaignId}&utm_id={CampaignId}
ショッピングキャンペーンのutm_mediumについて補足。shoppingを使うのは説明的だが、GA4のデフォルトチャネルグループにはマッチしない——そのトラフィックは「未割り当て」に分類される。GA4でショッピングトラフィックを有料検索に分類したいなら、paid_searchかcpcを使う。トレードオフとして、GA4のデフォルトレポートでショッピングを別途フィルタする能力を失う。それが重要ならshoppingを維持し、GA4でカスタムチャネルグループを作成して対応しよう。
GoogleとMicrosoftの両方で検索キャンペーンを運用しているチームは、プラットフォーム間で一貫したutm_mediumの値を使うとレポートがシンプルになる。両方にpaid_searchを使えば、utm_source=googleとutm_source=bingで明確に区別できる。UTM命名規則ガイドでは、3つ目・4つ目の広告ネットワークを追加しても崩れないクロスプラットフォーム命名システムの構築方法を解説している。
Google AdsキャンペーンをMicrosoft Adsにインポートするとどうなるか
Microsoft AdsにはGoogle Adsインポート機能が組み込まれている。多くの広告主がワンクリックでGoogleキャンペーンをBingに複製するために使う。便利だ。ただし注意点がある:インポートはキャンペーン構造、入札、広告コピーをコピーするが、トラッキングテンプレートのマクロは変換しない。
Google AdsのトラッキングテンプレートがGoogleの小文字{campaignid}を使っている場合、その文字列そのままがMicrosoft Adsにインポートされる。解決されない。BingトラフィックのUTM値は壊れた状態になる。
Google Adsインポート後に必ずやること:
- Microsoft Adsのアカウントレベルのトラッキングテンプレートに移動
- GoogleテンプレートをMicrosoftのPascalCaseバージョンに置き換える
- Microsoftの組み込みバリデーターでテンプレートをテスト
これは60秒でできる。省略すると、数ヶ月分の壊れたアトリビューションデータが生まれる。仮定の話ではない——Microsoftの広告ブログでも移行の主要な問題の一つとして指摘されている。
UTM GeneratorでMicrosoft Ads UTMを設定する方法
UTM Generatorを開き、広告ネットワークのドロップダウンからBing Adsを選択する。ツールがクリーンシグナルメソッドに従ったPascalCaseマクロですべてのフィールドを自動入力する。
ワークフロー:
- ランディングページURLを入力
- ネットワークドロップダウンからBing Adsを選択
- ソースが
bingに自動入力——クリーンシグナルの推奨値 - メディアに
paid_searchが表示——GA4チャネル対応 - キャンペーンに
{CampaignId}_{AdGroupId}——リネームを乗り越える数値ID - コンテンツに
{AdId}——広告レベルのトラッキング - タームに
{Keyword}——キーワードデータ - UTM IDに
{CampaignId}——GA4コストインポートに必要 - 生成されたトラッキングテンプレートをコピー(
{lpurl}プレフィックス付き) - Microsoft Adsのアカウントレベルのトラッキングテンプレートに貼り付け
UTM Generatorにテンプレートとして保存しよう。テンプレートURLをチームで共有すれば、全員が同一のBing UTMパラメータを使用できる——チームメンバー間でのPascalCaseと小文字の混乱がなくなる。
このジェネレーターはクリーンシグナルメソッドの原則1(GA4の言語を話す)を正しいpaid_searchメディアで、原則4(自動化か後悔か)を動的マクロで、原則7(IDなしのキャンペーンはない)をutm_id={CampaignId}で実践している。
よくある質問
Microsoft AdsのMSCLKIDとは何ですか?
MSCLKID(Microsoft Click Identifier)は、Microsoft Adsで自動タグ設定が有効なときに広告クリックURLに自動付加される一意のパラメータ。クリックレベルのアトリビューションデータをMicrosoftのUETタグに渡し、Microsoft AdsアカウントをリンクすることでGA4にインポートできる。MSCLKIDはMicrosoftのエコシステム内でのみ機能し、CRM、BIツール、サードパーティアトリビューションプラットフォームでは読み取れない——それがUTMパラメータを並行して使う必要がある理由だ。
Microsoft AdsのUTMマクロの正しい構文は?
Microsoft AdsはPascalCaseを単一の波括弧内で使用する:{CampaignId}、{AdGroupId}、{Keyword}。これはGoogleの小文字——{campaignid}、{adgroupid}、{keyword}——とは異なる。GoogleのマクロをMicrosoft Adsにコピーすることが最も一般的なBing UTMのミス——マクロが解決されず、分析レポートに文字列のままで表示される。
Microsoft AdsはGoogle Adsのような自動タグ設定に対応していますか?
はい。Microsoft Adsの自動タグ設定はGCLIDに相当するMSCLKIDをクリックURLに付加する。Microsoft Adsの「共有ライブラリ → アカウントレベルのオプション → 自動タグ設定」で有効にできる。Microsoft AdsアカウントをリンクするとGA4はMSCLKIDデータのインポートをサポートする。GCLIDと同様に、MSCLKIDはAppleのiOS 17リンクトラッキング保護によってメール、メッセージ、Safariプライベートブラウジング内で削除される。
Microsoft Adsのどこにトラッキングテンプレートを追加しますか?
すべてのキャンペーン → 設定(歯車アイコン) → アカウントレベルのオプション → トラッキングテンプレートに移動する。アカウントレベルでテンプレートを入力すると、すべてのキャンペーンに自動的に適用される。Microsoft Adsではキャンペーン、広告グループ、キーワード、広告レベルでもテンプレートを設定できる——下位レベルが上位を上書きする。ショッピングやAudience Networkなど特定のキャンペーンタイプに異なるパラメータが必要な場合を除き、アカウントレベルが正しいデフォルトだ。
Google AdsとMicrosoft Adsで同じUTMテンプレートを使えますか?
いいえ。マクロの構文が異なる。Google Adsは小文字({campaignid})、Microsoft AdsはPascalCase({CampaignId})を使用する。キャンペーン名マクロも異なる:Googleでは{campaignname}、Microsoftでは{Campaign}。ネットワークの戻り値も違う——GoogleはG、s、dを返し、MicrosoftはO、sを返す。プラットフォーム固有のテンプレートが必要だ。GA4レポートを整理するために、両プラットフォームで一貫したutm_mediumとutm_sourceの命名規則を使おう。
Google AdsキャンペーンをMicrosoft Adsにインポートするとどうなりますか?
インポートはキャンペーン構造、入札、広告コピーをコピーするが、トラッキングテンプレートのマクロを変換しない。{campaignid}のようなGoogleの小文字マクロはMicrosoft Adsに文字列として表示され、実際の値に解決されない。Google Adsインポート後は毎回、トラッキングテンプレートをMicrosoftのPascalCase版に置き換え、組み込みバリデーターでテストする。この60秒の作業が数ヶ月の壊れたアトリビューションを防ぐ。
Microsoft AdsにはGoogleの{QueryString}パラメータに相当するものがありますか?
ある——しかもこれは実際のアドバンテージだ。Microsoft Adsは{QueryString}を提供し、ユーザーが入力した実際の検索クエリを返す。Google Adsはこのレベルの検索クエリの透明性を廃止した。{QueryString}は検索インテント分析に価値があり、トラッキングテンプレートのカスタムパラメータとして追加できる。ただし、ロングテール検索ではクエリレベルのデータがURLの長さを大幅に増加させる可能性がある点に注意。
Microsoft Adsにはどのutm_mediumを使うべきですか?
検索キャンペーンにはpaid_searchかcpcを使う——両方ともGA4の有料検索デフォルトチャネルグループにマッチする。ショッピングキャンペーンには、cpcかpaid_searchでGA4の分類が確保できる。shoppingはより説明的だが「未割り当て」に流れる。Audience Networkキャンペーンには、GA4のDisplayチャネルグループにマッチするdisplayを使う。bing、ppc、sem、search-adsは避けること——GA4が正しく分類できない。
Microsoft AdsのUTMトラッキングを最初から正しく設定しよう——UTM Generatorを開き、Bing Adsを選択して、30秒以内に正しいPascalCaseマクロを含む完全なトラッキングテンプレートをコピーできる。無料、アカウント不要。