بنقرة واحدة
skill-036-video-asset-presence
Verify that video assets are uploaded for Performance Max and Demand Gen campaigns.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Verify that video assets are uploaded for Performance Max and Demand Gen campaigns.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Verify that Search, Display, Shopping, Video, and Performance Max campaigns are never mixed in ways that compromise optimization signals.
Ensure branded and non-branded keywords live in separate campaigns with independent budgets and targets.
Audit naming conventions across all campaigns, ad groups, and labels for a standardized taxonomy.
Evaluate whether each ad group contains tightly themed, closely related keywords (ideally 5-20 per group).
Segment and analyze Search Partners performance separately from Google Search.
Check whether Search campaigns have inadvertently opted into the Google Display Network.
| name | skill-036-video-asset-presence |
| description | Verify that video assets are uploaded for Performance Max and Demand Gen campaigns. |
| allowed-tools | Read, Grep, Glob |
Performance Max and Demand Gen serve across video placements (YouTube, Discover, Gmail). Without video assets, Google auto-generates low-quality videos from images, which typically underperform. Providing custom video assets gives control over brand messaging and improves video inventory performance.
Data Source: Custom GAQL Required
Standard export does not include video asset details.
GAQL Query (video assets):
SELECT
asset.id,
asset.name,
asset.type,
asset.youtube_video_asset.youtube_video_id,
asset.youtube_video_asset.youtube_video_title,
customer_asset.status
FROM customer_asset
WHERE asset.type = 'YOUTUBE_VIDEO'
GAQL Query (PMax asset groups):
SELECT
campaign.name,
asset_group.name,
asset_group_asset.asset,
asset_group_asset.field_type,
asset_group_asset.status
FROM asset_group_asset
WHERE campaign.advertising_channel_type = 'PERFORMANCE_MAX'
AND asset_group_asset.field_type = 'YOUTUBE_VIDEO'
Run via /google-ads:get-custom with query name video_assets.
| Condition | Severity |
|---|---|
| PMax campaign without videos | Critical |
| Demand Gen without videos | Critical |
| Asset group without videos | Warning |
| Only horizontal videos (no 9:16 or 1:1) | Warning |
| Video > 60 seconds | Warning |
Short (default):
## Video Asset Audit
**Account:** [Name] | **PMax/DemandGen:** [X] | **Without Videos:** [Y]
### Critical ([Count])
- **[Campaign]** (PMax): 0 videos -> Upload 16:9 + 9:16 + 1:1 (15-30s each)
### Warnings ([Count])
- **[Campaign]**: Only horizontal videos -> Add vertical (9:16)
### Coverage
| Campaign Type | Campaigns | With Videos | Status |
|---------------|-----------|-------------|--------|
| Performance Max | X | X | OK/Missing |
| Demand Gen | X | X | OK/Missing |
### Recommendations
1. [Priority action]
Detailed adds: