Google ads
Plan and create new Google Ads campaigns and report on existing accounts via the Hyper MCP. Use when the user wants to launch Search, Display, Performance Max, Video, Demand Gen, Shopping, or App campaigns, build Google Ads reports or dashboards, diagnose conversion tracking, or mentions Google Ads, AdWords, search ads, display ads, Performance Max, PMax, PPC, Google campaigns, search term reports, budget analysis, conversion funnels, negative keywords, or manager accounts (MCC).From its SKILL.md
npx -y skills add hyperfx-ai/marketing-skills --skill google-adsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
8.3 KB, ~1.8k tokens by cl100k_base, as published. Nobody here has run it
Google Ads
Strategic guide for building new Google Ads campaigns and reporting on existing accounts. Research first, consult intelligently, validate everything, and build with the granular resource tools in dependency order (budget → campaign → targeting → ad groups → ads / asset groups). The API has exactly one campaign create — google_ads_campaigns_create — and the campaign type is just advertising_channel_type; type-specific requirements are enforced by the tools' built-in validators, which return corrective errors. Reporting is GAQL-backed and evidence-first — dashboards are optional presentation surfaces.
Requirements
- Hyper MCP installed and connected. https://app.hyperfx.ai/mcp
- Google Ads integration connected at https://app.hyperfx.ai/apps.
If google_ads_accounts_list is not in the tool list, stop and tell the user to enable Hyper MCP and connect Google Ads.
Out of scope
- Live optimization mutations (bid adjustments, pausing keywords, restructuring existing campaigns). Reports may recommend these changes; applying them needs explicit per-change user approval.
- Creative generation (headlines, descriptions, images) →
ad-creative-generation. - Cross-platform campaign launches → use this skill for Google, then invoke
meta-ads/tiktok-adsseparately.
Tool surface
Reads are GAQL (google_ads_gaql_query covers every resource). Writes are one tool per resource operation, named google_ads_<resource>_<create|update|remove>; create/update take (customer_id, body) where body is the bare resource object in snake_case.
| Tool | Purpose |
|---|---|
google_ads_accounts_list | Discover accessible accounts (and MCC sub-accounts). |
google_ads_gaql_query | Run a GAQL query (conversion actions, search terms, any resource). |
google_ads_campaign_budgets_create | Create the budget first (micros!). |
google_ads_campaigns_create / _update / _remove | The ONE campaign create — every advertising_channel_type (SEARCH, DISPLAY, PERFORMANCE_MAX, VIDEO, DEMAND_GEN, SHOPPING, MULTI_CHANNEL for App). |
google_ads_ad_groups_create / _update, google_ads_ad_groups_delete | Ad groups under a campaign. |
google_ads_ad_group_ads_create / _update / _remove | Ads (typed: responsive_search_ad, responsive_display_ad, video / demand-gen ad types). |
google_ads_keywords_create / _update / _delete / _list | Keywords (positive and negative). |
google_ads_locations_search, google_ads_location_targets_add | Resolve location names, target them. |
google_ads_image_assets_upload | Image assets — accepts file_id from the workspace file manager, image_url, or base64. |
google_ads_video_assets_link | Register a YouTube video ID as a video asset (the Ads API cannot host video files — videos must be on YouTube). |
google_ads_asset_groups_create | PMax asset group (atomic: text + image assets in one call). |
google_ads_conversion_actions_create, google_ads_user_lists_create, google_ads_bidding_strategies_create, google_ads_shared_sets_create, … | Full per-resource CRUD surface — same naming pattern. |
google_ads_request | Raw escape hatch for any uncovered endpoint. |
hyper_data_build_dashboard, hyper_data_refresh_dashboard | Optional dashboards / data apps for reports. |
Rules that must never be forgotten
BUDGETS IN MICROS: $50/day = 50,000,000 micros. Never pass dollar amounts directly.
ALWAYS START PAUSED: Create campaigns with
status="PAUSED". Activate only after explicit user approval.
SUMMARIZE BEFORE CREATE: Present the full build plan (budget, campaign settings, targeting, ad groups, ads/assets) and get explicit user approval before the first mutate. Create in dependency order and reference each created resource by the
resource_namethe mutate returns. The tools validate bodies against the real API schema (writable fields, enum values) plus channel-type rules and return corrective errors — fix and retry rather than guessing.
NEVER INVENT: Don't assume URLs, budgets, or location IDs. Don't skip research. Don't invent keywords or copy — creative comes only from the actual site. Don't build without user buy-in.
GAQL GUARDRAILS: Never join
ad_group_criterionwithsearch_term_view. Never query more than 5 sub-accounts in a single batch.
See references/constraints.md for the full constraint set.
All reference files live in
references/. Read them atreferences/<file>(e.g.references/discovery.md). They are not in the same directory as this SKILL.md.
Core process
Every campaign build follows this sequence. Do not skip steps.
- Identify the goal — new campaign, reporting/analysis, or both?
- Check the routing table and read the referenced files before calling any tools
- Discovery is mandatory for creation (references/discovery.md) — account setup, site scan, conversion tracking check, market research, consultation
- Present the pre-creation summary and wait for explicit approval
- Build in dependency order (budget → campaign PAUSED → targeting → ad groups → ads/assets) after approval, re-checking references/constraints.md at each step
- Activate only when the user approves
Full workflow: Initial Setup → Research (site + GAQL + market) → Analyze (goals, audience, keywords) → Consult (options + trade-offs) → Recommend (structure + bids) → Confirm (summary approved) → Create in dependency order (PAUSED) → Verify by GAQL → Activate (post-approval).
Routing table
| The user wants to… | Read these files first |
|---|---|
| Create a Search or Display campaign | references/discovery.md → references/campaigns/search-display.md |
| Create a Performance Max campaign | references/discovery.md → references/campaigns/pmax.md |
| Add an asset group to an existing PMax campaign | references/campaigns/pmax.md |
| Create a Video, Demand Gen, Shopping, or App campaign | references/discovery.md → references/campaigns/other-types.md |
| Run a report / GAQL query / analyze performance (any kind) | references/reporting.md → the matching references/reports/*.md recipe |
| Account health snapshot / "how is the account doing?" | references/reporting.md → references/reports/account-overview.md |
| Diagnose conversion tracking | references/reporting.md → references/reports/conversion-tracking.md |
| Find wasteful search terms / negative keyword candidates | references/reporting.md → references/reports/search-terms-waste.md |
| Build a Google Ads dashboard or data app | references/reporting.md → matching report recipe's dashboard section |
| Work across an MCC / many sub-accounts | references/mcc.md → references/reporting.md |
| Goal not yet clear | references/discovery.md — discovery clarifies the goal |
Reporting responses follow references/report-template.md; keep claims tied to queried data per references/heuristics.md.
What ships with it: 18 files
80.9 KB alongside SKILL.md
references/
- campaigns/other-types.md2.2 KB
- campaigns/pmax.md2.7 KB
- campaigns/search-display.md3.8 KB
- constraints.md2.3 KB
- discovery.md3.1 KB
- heuristics.md1.2 KB
- mcc.md1.8 KB
- reporting.md7.4 KB
- reports/account-overview.md4.5 KB
- reports/ad-performance.md6.0 KB
- reports/budget-distribution.md4.9 KB
- reports/campaign-performance.md5.8 KB
- reports/campaign-structure.md5.4 KB
- reports/conversion-by-action.md8.4 KB
- reports/conversion-funnel.md10.9 KB
- reports/conversion-tracking.md5.5 KB
- reports/search-terms-waste.md4.4 KB
- report-template.md582 B
Gives 0 of the 12 instructions most product growth skills give in ~1.8k tokens
Counted across 694 of the 879 authors here whose files we hold, read 2026-09-06
- Check for product marketing context firstin 49 of 694, across 20 files
- Validate the why before building featuresin 18 of 694, across 4 files
- Respond to every comment in real-timein 17 of 694, across 6 files
- Structure launch marketing across three channel typesin 16 of 694, across 4 files
- Recruit early users one-on-onein 13 of 694, across 2 files
- Ask one question at a timein 13 of 694
- Rank features using ICE scoringin 12 of 694, across 3 files
- Identify primary conversion goalin 11 of 694, across 3 files
- Identify traffic contextin 11 of 694, across 3 files
- Evaluate headline effectivenessin 11 of 694, across 3 files
- Check visual hierarchy and scannabilityin 11 of 694, across 3 files
- Run product diagnosticsin 11 of 694, across 3 files
Said here and by no other author read
- Research first before building campaigns
- Pass budgets in micros
- Present the full build plan before creating
- Build resources in dependency order
- Verify everything using GAQL
- Stop if discovery tools are missing
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.