Google Ads 스크립트를 사용하면 YouTube 기반 동영상 캠페인을 관리하고 보고할 수 있습니다. 스크립트를 사용하여 기존 동영상 캠페인을 관리하고, 광고 그룹과 광고를 만들고 관리하고, 캠페인의 타겟팅을 설정하고, 보고서를 실행할 수 있습니다. 하지만 스크립트를 사용하여 동영상 캠페인을 만들 수는 없습니다.
동영상 캠페인 및 광고 그룹 가져오기
동영상 캠페인은 AdsApp
객체의 videoCampaigns
컬렉션을 통해 사용할 수 있습니다. 스크립트에서 캠페인을 일반적으로 가져오는 것처럼 가져올 수 있습니다.
const campaignName = "My first video campaign";
const campaignIterator = AdsApp.videoCampaigns()
.withCondition(`campaign.name = "${campaignName}"`)
.get();
for (const campaign of campaignIterator) {
...
}
캠페인을 가져온 후에는 다음과 같은 방식으로 광고 그룹을 가져올 수 있습니다.
const adGroupIterator = campaign.videoAdGroups()
.withCondition(`ad_group.name = "${adGroupName}"`)
.get();
for (const adGroup of adGroupIterator) {
...
}
또는 AdsApp.videoAdGroups()
메서드를 사용할 수 있습니다.
const adGroupIterator = AdsApp.videoAdGroups()
.withCondition(`campaign.name = "${campaignName}" AND ad_group.name = "${adGroupName}")
.get();
for (const adGroup of adGroupIterator) {
...
}
동영상 광고 만들기
Google Ads 스크립트를 사용하면 VideoAdGroup
의 videoAds()
메서드를 사용하여 동영상 광고를 가져올 수 있습니다.
VideoAdGroup
의 newVideoAd()
메서드를 사용하여 새 동영상 광고를 만들 수 있습니다.
동영상 광고 형식
지원되는 동영상 광고 형식은 동영상 캠페인 유형에 따라 다릅니다. 올바른 유형의 동영상 캠페인을 선택하려면 AdvertisingChannelSubType
에서 withCondition
호출을 추가하세요.
일부 동영상 캠페인에는 해당 캠페인 내에서 지원되는 광고 유형을 제한하는 하위 유형이 있습니다. 구체적으로 VIDEO_ACTION
캠페인은 VIDEO_RESPONSIVE
광고 유형만 지원하고 VIDEO_NON_SKIPPABLE
캠페인은 NON_SKIPPABLE_INSTREAM_VIDEO_AD
광고 유형만 지원합니다.
특정 유형의 캠페인을 운영하는 가장 좋은 방법은 선택기에서 withCondition
절을 사용하는 것입니다. 관심 있는 캠페인 유형의 AdvertisingChannelSubType
를 업데이트할 수 있습니다.
const campaignIterator = AdsApp.videoCampaigns()
.withCondition("AdvertisingChannelSubType = VIDEO_ACTION")
.get();
하위 유형이 없는 동영상 캠페인은 다음과 같은 동영상 광고 형식을 지원합니다.
- TrueView 인스트림 광고
- TrueView 동영상 디스커버리
- 범퍼
withCondition
를 사용하여 이러한 캠페인을 선택할 수 있습니다.
const campaignIterator = AdsApp.videoCampaigns()
.withCondition("AdvertisingChannelSubType = null")
.get();
인스트림 동영상 광고는 다른 동영상 전후 또는 중간에 재생되며, 사용자는 지정된 시간이 지나면 광고를 건너뛸 수 있습니다. 동영상 디스커버리 광고는 디스플레이 네트워크 및 다양한 YouTube 페이지에 표시되며, 사용자가 먼저 광고 썸네일을 클릭한 경우에만 재생됩니다. 범퍼 광고는 길이가 6초 이하이며 YouTube 동영상이나 파트너 사이트의 동영상, 디스플레이 네트워크의 앱에 게재될 수 있습니다. 각 광고 유형에 대한 자세한 내용은 동영상 광고 형식 정보를 참고하세요.
광고 그룹 빌드
동영상 캠페인의 newVideoAdGroupBuilder()
메서드를 통해 동영상 광고 그룹을 만듭니다. 광고 그룹을 만들 때 광고 그룹 유형과 광고 그룹 이름을 지정해야 합니다. 광고 그룹 유형은 다음 중 하나여야 하며 광고 그룹을 만든 후에는 변경할 수 없습니다.
VIDEO_BUMPER
VIDEO_EFFICIENT_REACH
VIDEO_NON_SKIPPABLE_IN_STREAM
(VIDEO_NON_SKIPPABLE
캠페인만 해당)VIDEO_RESPONSIVE
(VIDEO_ACTION
캠페인만 해당)VIDEO_TRUE_VIEW_IN_DISPLAY
VIDEO_TRUE_VIEW_IN_STREAM
YOUTUBE_AUDIO
예:
const videoAdGroup =
videoCampaign.newVideoAdGroupBuilder()
.withAdGroupType("VIDEO_TRUE_VIEW_IN_STREAM")
.withName("Video Ad Group")
.build()
.getResult();
동영상 애셋 만들기
동영상 광고는 일반적으로 동영상 애셋을 참조해야 합니다. 이에 따라 광고에 재생될 동영상이 결정됩니다. 스크립트를 사용하여 동영상을 업로드할 수는 없지만, 이전에 업로드한 기존 YouTube 동영상을 연결하여 광고에 사용할 수는 있습니다.
YouTubeVideoAssetBuilder
를 사용하여 Asset
를 만들어 이 작업을 실행합니다.
const assetOperation = AdsApp.adAsset().newYouTubeVideoAssetBuilder()
.withName("name")
// This is the ID in the URL for the YouTube video.
.withYouTubeVideoId(youTubeVideoId)
.build();
const videoAsset = assetOperation.getResult();
광고 빌드
새 광고를 만들려면 광고 그룹 유형과 일치하는 빌더 메서드를 사용합니다(newVideoAd()
뒤에 연결됨).
inStreamAdBuilder()
videoDiscoveryAdBuilder()
bumperAdBuilder()
responsiveVideoAdBuilder()
(VIDEO_ACTION
캠페인만 해당)nonSkippableAdBuilder()
(VIDEO_NON_SKIPPABLE
캠페인만 해당)
예:
const videoAd = videoAdGroup.newVideoAd()
.inStreamAdBuilder()
.withAdName("Video Ad")
.withFinalUrl(
"http://www.example.com/video-ad")
// Specify the video asset created in the last step.
.withVideo(video)
.build()
.getResult();
동영상 타겟팅
동영상 캠페인에는 두 가지 유형의 관련성 타겟팅이 있습니다. VideoCampaignTargeting
은 일반적으로 동영상 캠페인에 대해 계정 수준에서 실행되는 모든 타겟팅을 나타내며 AdsApp.videoCampaignTargeting()
을 사용하여 액세스합니다. 스크립트를 통해 수정할 수는 없지만 볼 수는 있습니다.
다른 유형의 타겟팅을 사용하면 동영상 캠페인과 동영상 광고 그룹의 기준을 개별적으로 지정할 수 있습니다. 캠페인 또는 광고 그룹에서 videoTargeting()
메서드를 사용하여 액세스할 수 있으며, 해당 수준의 타겟팅에 적용되는 모든 유형의 긍정 및 부정 기준에 대한 선택기 및 빌더에 대한 액세스를 제공합니다. AdsApp.videoTargeting()
메서드는 계정 수준에서 기준을 확인하는 데도 사용되며 AdsApp.videoCampaignTargeting()
와는 다른 기준 세트가 포함됩니다. VideoCampaignTargeting
와 마찬가지로 스크립트로 이러한 기준을 관리할 수 없습니다.
다음은 캠페인에서 특정 게재위치를 제외하는 예입니다.
videoCampaign.videoTargeting().newPlacementBuilder()
.withUrl("http://www.example.com")
.exclude();
인구통계 (연령, 성별) 기준은 다른 기준 유형과 약간 다르게 작동합니다. 새 광고 그룹이 생성되면 가능한 각 연령 및 성별 값에 대한 기준이 자동으로 생성되고 해당 광고 그룹은 이 모든 값을 타겟팅합니다. 기존 타겟팅을 가져와서 exclude()
메서드를 호출하여 인구통계를 제외할 수 있으며, 기존 제외 타겟팅을 찾아 include()
를 호출하여 제외된 인구통계를 다시 포함할 수 있습니다.
다음은 광고 그룹에서 특정 성별을 제외하는 예입니다.
const videoGenderIterator = videoAdGroup.videoTargeting()
.genders()
.withCondition('GenderType = "GENDER_MALE"')
.get();
if (videoGenderIterator.hasNext()) {
const videoGender = videoGenderIterator.next();
videoGender.exclude();
}