구글 애즈 API는 2026년 12월 첫째 주부터 디맨드젠 캠페인의 디스플레이 설정 방식을 바꾼다. 캠페인 수준에서 디스플레이 노출을 막는 설정은 더는 받지 않고, 디스플레이 노출 여부는 광고그룹 단위로만 정할 수 있다. API로 디맨드젠 캠페인을 만들거나 고치는 대행사 플랫폼, 서드파티 관리 도구, 사내 연동 시스템을 운영하는 국내 마케터는 요청 코드와 기존 광고그룹의 채널 설정을 미리 확인해야 한다.

구글 애즈 API 팀은 2026년 11월 9일 개발자 블로그를 통해 이 변경을 알렸고, 업계 매체 PPC Land가 그 내용을 정리해 보도했다. 영향은 광고 관리 화면보다 소프트웨어 쪽에 집중된다. PPC Land에 따르면 구글은 구글 애즈 화면에서 광고를 쓰는 광고주의 노출 위치는 바뀌지 않는다고 밝혔다.

캠페인 필드는 기본값이 true로 바뀌고 false는 거부된다

바뀌는 필드는 캠페인 설정의 network_settings.target_content_network이다. 지금까지 이 필드가 false이면 디맨드젠 캠페인은 디스플레이 네트워크에 나가지 않았다. 12월 첫째 주부터는 새로 만드는 캠페인의 기본값이 true가 된다. 대신 디스플레이를 켤지 끌지는 광고그룹의 demand_gen_ad_group_settings.channel_controls.selected_channels.display 값이나 채널 전략으로 정한다. 구글은 캠페인 전체의 기본 노출 동작은 달라지지 않는다고 설명했다.

이 필드를 false로 설정하는 요청은 캠페인 생성과 수정 모두에서 OPERATION_NOT_PERMITTED_FOR_CONTEXT 오류로 실패한다. 다만 필드를 true로 명시해서 보내는 요청도 거부되는지는 개발자 블로그 글에 나와 있지 않다. API 버전 번호도 밝히지 않았고, 시점을 달력상 '12월 첫째 주'로만 표현했다. 그 주는 11월 30일 월요일, 곧 미국 사이버먼데이에 시작한다. 연말 프로모션 캠페인을 API로 대량 생성하는 팀은 자사 프로모션 일정이 이 주와 겹치는지 먼저 따져 볼 만하다.

구글이 캠페인 필드의 false 설정을 더는 받지 않는 이유는 설정이 두 곳에 있었기 때문이다. 이전에는 캠페인 수준에서 디스플레이를 끄면 광고그룹의 디스플레이 설정을 덮어썼다. 광고그룹에서 디스플레이를 포함하도록 설정해도 위 단계의 필드 때문에 실제로는 노출되지 않을 수 있었다. 구글은 광고그룹 한 곳에서만 관리하면 API, 구글 애즈 화면, 구글 애즈 에디터에서 채널 표시가 일관된다고 설명했다.

광고그룹 채널 컨트롤 자체는 새 기능이 아니다. PPC Land에 따르면 구글 애즈 API v19.1이 2025년 4월 16일 디맨드젠 광고그룹 단위 채널 컨트롤을 추가했는데, 캠페인 수준 필드는 그 뒤로도 이 설정을 덮어쓰는 힘을 유지해 왔다. 12월부터 그 권한이 사라진다.

기존 캠페인은 자동 변환되고 일부 광고그룹은 일시중지된다

현재 target_content_network가 false인 모든 디맨드젠 캠페인은 true로 바뀌고, 소속 광고그룹도 함께 자동 변환된다. 구글이 제시한 변환 경우는 네 가지다.

첫째, 캠페인과 광고그룹 양쪽에서 이미 디스플레이를 끈 경우에는 캠페인 필드만 바뀌고 광고그룹은 그대로다. 둘째, 채널 전략이 ALL_CHANNELS인 광고그룹은 ALL_OWNED_AND_OPERATED_CHANNELS로 바뀐다. 이 전략은 구글이 직접 운영하는 채널에만 노출하고 디스플레이 네트워크 같은 제3자 운영 채널은 끈다. 셋째, 다른 채널과 함께 디스플레이를 타기팅하던 광고그룹은 selected_channels.display가 명시적으로 false가 된다. 캠페인이 막던 내용을 광고그룹이 직접 기록하게 되는 셈이다.

넷째가 가장 신경 쓸 부분이다. 디스플레이만 타기팅하는 광고그룹이 디스플레이를 막아 둔 캠페인 안에 있었다면 상태가 PAUSED로 바뀐다. 디맨드젠 광고그룹은 최소한 한 채널을 타기팅해야 해서, 디스플레이를 끄면 활성 채널이 없는 잘못된 구성이 되기 때문이다. 구글은 개발자 블로그에서 일시중지로 노출하지 않던 상태를 유지하면서 채널 컨트롤은 그대로 둔다고 밝혔다. 이런 광고그룹은 이후 캠페인 필드가 true인 캠페인 안에서 디스플레이만 선택한 채 멈춰 있게 되므로, 누군가 실수로 활성화하면 디스플레이에 바로 노출될 수 있다. 일시중지가 변경 이력에 어떻게 표시되는지, 광고주에게 알림이 가는지는 개발자 블로그 글에 나와 있지 않다. 변환 대상 캠페인과 광고그룹이 몇 개인지, 정확히 무슨 요일에 적용되는지도 공개되지 않았다.

구글은 변환 대상 캠페인이 이미 디스플레이를 끈 상태라서 노출 동작은 달라지지 않는다고 설명했다. 변화는 보고와 점검에서 생긴다. 변환 뒤에는 모든 디맨드젠 캠페인의 필드가 true이므로 이 값으로는 디스플레이에 나가는 캠페인과 아닌 캠페인을 구분할 수 없다. 이 정보는 광고그룹 설정에만 남는다. 도구가 캠페인 필드를 읽어 디스플레이 노출 여부를 판단하는 로직이라면, 12월 이후 모든 캠페인이 디스플레이 노출로 잡힌다.

광고그룹에서 디스플레이를 끄는 두 가지 방법

구글 개발자 문서의 채널 컨트롤 안내에 따르면 광고그룹을 만들 때 channel_controls를 생략하면 기본값은 ALL_CHANNELS이다. 설정 방법은 세 가지다. ALL_CHANNELS는 디맨드젠이 지원하는 전체 채널에 노출하는 기본 전략이다. ALL_OWNED_AND_OPERATED_CHANNELS는 디스커버 피드, 유튜브, 지메일, 구글 지도처럼 구글이 직접 운영하는 채널만 쓴다. 채널별 개별 제어는 selected_channels의 true와 false 값으로 채널을 하나씩 정한다. 선택 채널을 수정할 때는 모든 필드를 명시해야 한다.

구글이 개발자 블로그 글에 실은 예시는 유튜브 쇼츠만 true로 두고 유튜브 인스트림, 인피드, 디스커버, 지메일, 디스플레이를 false로 놓는 광고그룹 수정 요청이다. 구글은 채널을 일일이 나열하지 않고 디스플레이만 끄는 방법으로 채널 전략을 ALL_OWNED_AND_OPERATED_CHANNELS로 두는 것을 안내했다.

광고그룹의 채널 구성은 ad_group 리소스를 조회해서 확인한다. 구글 문서가 보여 주는 쿼리는 광고그룹 ID와 함께 channel_config, channel_strategy, selected_channels 아래의 채널별 값을 가져온다. 읽기 전용인 channel_config 필드는 광고그룹이 채널 전략과 선택 채널 중 어느 방식으로 설정됐는지 알려 준다. 이 조회로 변환 전후의 디스플레이 노출 여부를 광고그룹마다 점검할 수 있다.

공개 자료의 어긋난 부분

PPC Land는 구글이 올린 자료에서 몇 가지 불일치를 짚었다. 예시 코드와 점검 쿼리는 채널을 여섯 개만 보여 주는데, 구글 가이드는 구글 지도를 더해 일곱 개를 선택 가능 채널로 적고 있다. 구글 고객센터에 따르면 지도는 제휴되지 않은 위치 확장이 켜져 있을 때만 노출된다. 또 블로그에 실린 점검 쿼리는 ad_group.status 뒤에 쉼표가 빠져 있어서 그대로는 실행되지 않는다. 쿼리를 복사해 쓰는 팀은 쉼표를 직접 넣어야 한다.

기본값 설명에도 빈틈이 있다. 블로그 글은 광고그룹 채널 컨트롤의 기본값이 디스플레이를 끄는 방향이라 전체 기본 동작이 그대로라고 쓴다. 구글 고객센터도 이미지 광고그룹의 디스플레이 포함 옵션이 기본적으로 해제돼 있다고 안내한다. 반면 API 가이드는 생략 시 기본값이 ALL_CHANNELS라고 하면서 이 전략에 디스플레이가 들어가는지는 명시하지 않는다. 12월 이후 채널 컨트롤 없이 API로 만든 광고그룹이 필드가 true인 캠페인 안에서 디스플레이에 나가는지는 공개 자료만으로 단정할 수 없다. 변경 전에는 캠페인 필드의 기본값 false가 이런 광고그룹을 디스플레이에서 막아 주었다.

일정 전에 해 볼 점검

구글이 개발자에게 권고한 조치는 두 가지다. 캠페인 생성 요청 내용을 검토해 캠페인 수준 플래그 대신 광고그룹 컨트롤을 쓰도록 애플리케이션을 바꾸는 것, 그리고 기존 디맨드젠 캠페인을 점검해 광고그룹의 채널 선택이 의도한 도달 범위를 반영하는지 확인하는 것이다. 문의는 구글 광고 및 측정 커뮤니티의 디스코드 서버로 받는다.

국내 운영자라면 먼저 자사나 대행사 도구가 target_content_network를 false로 보내는지 코드에서 찾아야 한다. 이어서 새 광고그룹을 만들 때 channel_controls를 반드시 명시하도록 바꾸고, 디스플레이를 원하지 않는 광고그룹에는 전략을 ALL_OWNED_AND_OPERATED_CHANNELS로 지정하는 편이 안전하다. 12월 첫째 주 이후에는 앞서 소개한 ad_group 조회로 status와 channel_config, selected_channels.display 값을 함께 가져와 디스플레이만 선택한 채 일시중지된 광고그룹이 있는지 확인하고, 의도치 않은 재개를 막는 확인 절차를 정해 두는 것이 좋다. 구글은 이 변경이 구글 애즈 에디터와 화면에서 어떻게 표시되는지 설명하지 않았으므로, 대행사에 변경 이력을 어디서 확인할 수 있는지 미리 물어 둘 필요가 있다.