Google Ads budget pacing check
A free Claude skill. Projects month-end spend per campaign, flags over- and under-pacing, and finds the daily budget needed to hit target.
Needs: the Caybl.ai connector with Google Ads connected. Try: “Are we on pace with this month's Google Ads budget?”
What you get
- Projected spend vs target
- Pacing table by campaign
- Budget moves in safe 20% steps
Install
claude.ai and Claude Desktop
- Download the .zip.
- In Claude, go to Settings, Capabilities, Skills, and upload it.
- Connect Caybl.ai from the connector directory if you haven’t already.
Claude Code
mkdir -p ~/.claude/skills/google-ads-budget-pacing && curl -fsSL https://caybl.ai/skills/google-ads-budget-pacing/SKILL.md -o ~/.claude/skills/google-ads-budget-pacing/SKILL.mdclaude mcp add --transport http caybl https://api.caybl.ai/mcpThe skill
This is the full SKILL.md - the same file you download. View raw.
---
name: google-ads-budget-pacing
description: Checks month-to-date Google Ads spend against the monthly budget or target, projects where each campaign will land by month end, diagnoses under- and over-spend, and suggests safe budget moves - from live data via the Caybl.ai connector. Use for "are we on pace", "budget pacing", "will we overspend this month", "why are we underspending", or a mid-month budget check.
license: MIT
compatibility: Requires the Caybl.ai MCP connector (https://api.caybl.ai/mcp) with Google Ads connected.
metadata:
author: Caybl.ai
version: "1.0"
adapted-from: eliasmalmsandberg/google-ads-skills (google-ads-budget-management), MIT
---
# Google Ads budget pacing
## Requires
The Caybl.ai MCP connector with Google Ads connected (https://caybl.ai/google-ads-mcp).
## Inputs
Ask for the monthly spend target (account or per campaign). If there isn't one, use daily budget x 30.4 - that's the most Google will aim to spend in an average month.
## Workflow
1. `get_campaigns` - daily budgets, status, bidding strategy.
2. `run_gaql_report` - daily cost by campaign this month:
`SELECT campaign.name, segments.date, metrics.cost_micros, metrics.conversions FROM campaign WHERE segments.date DURING THIS_MONTH`
3. For each campaign:
- **Pace** = month-to-date spend / (monthly target x share of the month elapsed). Above 1.0 = overpacing, below 1.0 = underpacing.
- **Projected month-end spend** = MTD spend + (average of the last 7 days x days left). Allow for weekday/weekend patterns (B2B often spends 20-30% less at weekends) rather than a flat average when the pattern is clear.
- **Daily budget needed to hit target** = (target - MTD spend) / days left.
4. For underpacing campaigns, diagnose before adding money: `get_impression_share` - lost to rank above ~30% means bids, Quality Score or a too-tight tCPA, not budget. A tCPA set well below actual CPA throttles spend; raising it 15-20% is the usual fix.
5. For reallocation, look for campaigns with lost-to-budget above ~20% and a CPA on target - they can absorb more. Brand campaigns at 90%+ impression share usually can't.
## Output
- One line: projected account spend vs target ("on track", "$X over", "$X under").
- Table: | Campaign | Daily budget | MTD spend | Pace | Projected month end | Target | Daily budget needed | Status |
- Recommended moves, each within a 20% step so Smart Bidding learning isn't reset.
Offer to apply budget changes with `update_campaign_budget`, **always with `validateOnly: true` first**, and only apply after an explicit yes.
## Guardrails
- Google can spend up to 2x the daily budget on a single day; one high day isn't overspend.
- Don't recommend adding budget to campaigns that are rank-limited or over target CPA.
Adapted from eliasmalmsandberg/google-ads-skills (MIT). See NOTICES.md.
More Google Ads skills
- Google Ads wasted spend finder - Finds search terms, devices, locations and hours that cost money without paying back, ranked by estimated reducible spend.
- Google Ads negative keyword builder - Groups bad search terms into patterns and builds a paste-ready negative list with the right match type and level - then adds it after a preview.
- Google Ads impression share gap finder - Separates impression share lost to budget from lost to rank, and tells you which campaigns to fund now, fix first, or leave alone.
Connect your data, then run the skill
Sign in with Google, connect your accounts and add Caybl.ai to Claude. Google Analytics is free.
Get started free →