Google Ads 腳本可讓您管理及製作以 YouTube 為基礎的影片廣告活動報表。您可以使用指令碼管理現有影片廣告活動、建立及管理廣告群組和廣告、設定廣告活動的指定目標,以及執行報表。不過,您無法使用指令碼建立影片廣告活動。
擷取影片廣告活動和廣告群組
影片廣告活動可透過 videoCampaigns
AdsApp
物件的集合取得。您可以像在指令碼中正常擷取廣告活動一樣擷取這些廣告活動:
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()
方法擷取影片廣告。您可以使用 newVideoAd()
VideoAdGroup
方法製作新的影片廣告。
影片廣告格式
支援的影片廣告格式會因影片廣告活動類型而異。為確保選取正確的影片廣告活動類型,請在withCondition
AdvertisingChannelSubType
中加入通話。
部分影片廣告活動有子類型,會限制廣告活動支援的廣告類型。具體來說,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 影片,用於廣告中。方法是建立 Asset
,並使用 YouTubeVideoAssetBuilder
。
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();
}