既然有MSCLKID,Microsoft Ads还需要UTM参数吗
需要。MSCLKID处理的是Microsoft生态系统内部的归因——Clarity、UET标签、Microsoft Ads控制台——但仅限于此。你的CRM、BI工具、第三方归因平台都无法读取MSCLKID。UTM参数填补了这个空缺。
截至2026年第一季度,Microsoft Advertising通过Bing、Yahoo、AOL和DuckDuckGo联合推广合作伙伴,占据美国桌面搜索约38%的流量。这不是舍入误差。然而大多数营销团队直接把Google Ads的设置复制过来就完事了,根本没检查宏语法是否匹配。实际上不匹配。Microsoft Ads使用PascalCase宏——是{CampaignId},不是{campaignid}。搞错了,GA4报告里就会显示{campaignid}这个字面字符串,而不是实际的ID。
所以设置很重要。与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} | 关键词出价匹配类型 | 自定义参数 |
有两点值得特别说明。第一,{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}是Microsoft的落地页URL宏——概念和名称都与Google完全相同。系统在点击时将其替换为Final URL。
逐项解析:
-
utm_source=bing-{Network}:将静态"bing"与动态网络类型结合。在GA4中会看到bing-o(Bing自有)或bing-s(联合推广)。这一个字母就是知道钱去了哪里和靠猜之间的区别。 -
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点击标识符)是Microsoft版的GCLID——启用自动标记后,Microsoft Ads自动生成并附加到URL的唯一点击ID。格式类似?msclkid=abc123def456...,将点击级数据传递给Microsoft的UET(Universal Event Tracking)标签。
对比表:
| 功能 | 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报告会显示{campaignid}_{adgroupid}这样的广告系列值,而不是实际ID。我在三个客户账户里见过这种情况。每一个都是从Google Ads复制粘贴过来的。
如果你同时管理两个平台,Google Ads UTM指南介绍了Google特有的设置。结构是并行的,但宏不能互换。
**专业提示:**在UTM Generator中选择"Bing Ads",工具会自动在正确字段填入PascalCase宏——广告系列填
{CampaignId}_{AdGroupId},内容填{AdId},词条填{Keyword}。完全没有意外复制Google小写语法的风险。生成完整的{lpurl}追踪模板格式,可直接用于Microsoft Ads。
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受众网络)——类展示广告库存:
{lpurl}?utm_source=bing&utm_medium=display&utm_campaign={CampaignId}_{AdGroupId}&utm_content={AdId}&utm_id={CampaignId}
Performance Max ——Microsoft于2025年底推出的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命名规范指南介绍了如何建立一套跨平台命名体系,加入第三个、第四个广告网络也不会乱。
将Google Ads导入Microsoft Ads时UTM会怎样
Microsoft Ads内置了Google Ads导入功能。很多广告主用它一键把Google广告系列镜像到Bing。很方便。但有个坑:导入会复制广告系列结构、出价和广告文案——但不会转换追踪模板宏。
如果你的Google Ads追踪模板用了小写的{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点击标识符)是启用自动标记后Microsoft Ads自动附加到广告点击URL上的唯一参数。它将点击级归因数据传递给Microsoft的UET标签,关联Microsoft Ads账户后可以导入GA4。MSCLKID只在Microsoft生态系统内有效,CRM、BI工具和第三方归因平台无法读取——这就是为什么还是需要UTM参数配合使用。
Microsoft Ads UTM的正确宏语法是什么?
Microsoft Ads使用单花括号内的PascalCase:{CampaignId}、{AdGroupId}、{Keyword}。这与Google Ads的小写不同:{campaignid}、{adgroupid}、{keyword}。将Google的小写宏复制到Microsoft Ads是最常见的Bing UTM错误——宏不会解析,会以字面字符串的形式出现在分析报告中。
Microsoft Ads支持像Google Ads那样的自动标记吗?
支持。Microsoft Ads自动标记会在点击URL上附加MSCLKID,类似Google Ads使用GCLID的方式。在Microsoft Ads的"共享库 → 账户级选项 → 自动标记"中启用。关联Microsoft Advertising账户后,GA4支持MSCLKID数据导入。和GCLID一样,Apple的iOS 17链接追踪保护会在邮件、信息和Safari隐私浏览中移除MSCLKID。
在Microsoft Ads哪里添加追踪模板?
导航到所有广告系列 → 设置(齿轮图标) → 账户级选项 → 追踪模板。在账户级输入模板会自动应用到所有广告系列。Microsoft Ads也允许在广告系列、广告组、关键词和广告级别设置模板——低级别覆盖高级别。除非特定广告系列类型(如购物或受众网络)需要不同参数,账户级是正确的默认选择。
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时UTM参数会怎样?
导入会复制广告系列结构、出价和广告文案,但不会转换追踪模板宏。Google的小写宏(如{campaignid})会在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更直观但会流向"未分配"。受众网络广告系列用display,与GA4的展示渠道组匹配。避免使用bing、ppc、sem或search-ads——GA4无法正确分类这些值。
第一次就把Microsoft Ads UTM追踪设置正确——打开UTM Generator,选择Bing Ads,30秒内复制包含正确PascalCase宏的完整追踪模板。免费,无需注册账户。