Day Budget Pacing Monitor
Compares actual daily spend against the expected pace based on time of day. Logs over- and under-pacing campaigns and can auto-pause overspenders to protect your budget.
by Dmytro Tonkikh·chiliad.io
Overview
Budget Pacing Monitor runs on a schedule (every 2 hours) and compares each enabled campaign's actual spend against the proportional target for the current time of day. It logs campaigns that are significantly over- or under-pacing and can optionally pause overspenders automatically to protect your daily budget cap.
Setup
- 1Open your Google Ads account and go to Tools → Bulk Actions → Scripts.
- 2Click the + button to create a new script and paste the code below.
- 3Set PAUSE_OVERSPENDING = true if you want campaigns to be auto-paused when they exceed the overspend threshold.
- 4Adjust OVERSPEND_THRESHOLD (default 1.20 = 120%) and UNDERSPEND_THRESHOLD (default 0.50 = 50%) to suit your tolerance.
- 5Schedule the script to run every 2 hours (or more frequently for high-budget accounts).
- 6Preview the script once to verify it reads your campaigns correctly, then save and enable.
Configuration Variables
| Variable | Default |
|---|---|
PAUSE_OVERSPENDING | false |
OVERSPEND_THRESHOLD | 1.20 |
UNDERSPEND_THRESHOLD | 0.50 |
Expected Output
=== Budget Pacing Report === Time: 14:00:00 Day progress: 58.3% [OVER] Brand — Exact Budget: $100.00 Target: $58.33 Spent: $72.10 Pace: 123.6% [ON TRACK] Generic — Broad Budget: $200.00 Target: $116.67 Spent: $118.20 Pace: 101.3% [UNDER] Competitor — BMM Budget: $50.00 Target: $29.17 Spent: $8.40 Pace: 28.8%
Notes
This script only reads campaign budgets, not shared budgets. Campaigns using a shared budget will report the shared budget amount, which may not reflect actual per-campaign allocation.