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}다. 이걸 틀리면 실제 ID 대신 {campaignid}라는 문자열이 GA4 리포트에 그대로 나타난다.
설정이 중요하다. 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}은 랜딩 페이지 URL을 위한 Microsoft 매크로——개념도, 이름도 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 Click Identifier)는 Google의 GCLID에 해당하는 Microsoft의 자동 생성 클릭 ID다. Microsoft Ads에서 자동 태그 설정이 활성화되면 URL에 추가된다. ?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 리포트에는 실제 ID 대신 {campaignid}_{adgroupid} 같은 캠페인 값이 표시된다. 세 개의 클라이언트 계정에서 이걸 봤다. 전부 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}
Performance 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 vs 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 vs 소문자 혼란이 사라진다.
이 생성기는 클린 시그널 메서드 원칙 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 Ads의 소문자——{campaignid}, {adgroupid}, {keyword}——와 다르다. Google의 소문자 매크로를 Microsoft Ads에 복사하는 것이 가장 흔한 Bing UTM 실수다——매크로가 해석되지 않고 분석 리포트에 문자열 그대로 나타난다.
Microsoft Ads는 Google Ads처럼 자동 태그 설정을 지원하나요?
예. Microsoft Ads 자동 태그 설정은 클릭 URL에 GCLID에 상당하는 MSCLKID를 추가한다. Microsoft Ads에서 공유 라이브러리 → 계정 수준 옵션 → 자동 태그에서 활성화할 수 있다. Microsoft Advertising 계정을 연결하면 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로 가져올 때 UTM 파라미터는 어떻게 되나요?
가져오기는 캠페인 구조, 입찰, 광고 카피를 복사하지만 트래킹 템플릿 매크로를 변환하지 않는다. {campaignid} 같은 Google의 소문자 매크로는 Microsoft Ads에 문자열로 나타나며 실제 값으로 해석되지 않는다. Google Ads 가져오기 후에는 매번 트래킹 템플릿을 Microsoft의 PascalCase 버전으로 교체하고 내장 검증기로 테스트해야 한다. 이 60초 작업이 몇 달치 깨진 어트리뷰션을 막는다.
Microsoft Ads에 Google의 {QueryString} 파라미터에 해당하는 것이 있나요?
있다——오히려 이건 Microsoft의 장점이다. 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 매크로가 포함된 완전한 트래킹 템플릿을 복사할 수 있다. 무료, 계정 불필요.