Paid Ad Budget Pacing Monitor
Measure campaign spend against plan and flag when budget reallocation is warranted.
The skill treats exports as untrusted data and forbids executing embedded instructions; ad-platform APIs are optional, manual user exports are the default, and memory writes require user consent. No malware, credential theft, or default external mutation is evident. However, it lacks rollback guidance for reallocations, concrete handling boundaries for sensitive advertising data, and clear confirmation/recovery behavior for ledger failures or path-permission errors, so full marks are not justified.
The workflow is internally coherent around fixing the target curve, confirming learning status, computing pacing, classifying drivers, and producing one of four verdicts; it also stops when required exports are missing. Static evidence shows dependence on a ledger.py path under CLAUDE_PLUGIN_ROOT, while the numeric band and its defaults are unspecified. There are no skill-specific key-path tests or abnormal-output examples, so the score is capped and reduced.
Triggers, inputs, outputs, and exclusions are clearly stated, bilingual support is present, and the core path uses manual exports rather than requiring unreachable overseas APIs, which fits mainland-China users reasonably well. Boundaries for platform-specific learning fields, time zones, currencies, missing data, nonstandard curves, and China-market platform differences are underdeveloped, so full marks are not warranted.
Frontmatter, version, license, quick-start examples, data-source guidance, read/write boundaries, save confirmation, and handoff routing are well documented and follow a progressive contract structure. The review material does not include the linked reference files; band and driver rules lack parameter detail; SECURITY.md identifies 17.x as the current supported line while the skill and README state 18.0.0. Maintenance ownership and a concrete changelog/update path are also not clear, so points are deducted.
The contract specifies a directly usable pacing table, percent-to-pace result, verdict, driver, fire/hold trigger, projected end-of-flight spend, and next-check date, while explicitly avoiding unauthorized computation of a new allocation. Without representative real outputs, execution records, or skill-specific tests, static review cannot confirm edge-case calculation coverage, curve implementation, or direct usability; the static ceiling therefore applies.
The source provides auditable input labels, formulas, decision steps, handoff fields, and repository-level CI/test material, including measured/user-provided/estimated separation. The supplied tests primarily cover shared architecture and audit artifacts, not this skill's ledger invocation, curve calculations, band logic, or reproducible output. No third-party execution evidence is provided, so only limited static verifiability is supported.
- No numeric pacing band or default is defined, so different agents may classify Ahead/Behind and fire/hold inconsistently.
- The ledger invocation depends on CLAUDE_PLUGIN_ROOT and shared repository scripts; the supplied material does not establish availability on every compatible host or define a safe fallback when it fails.
- Learning-phase confirmation is required, but handling for missing or conflicting platform status fields is not standardized; the reallocation trigger has no explicit rollback or approval workflow.
- The skill declares version 18.0.0 while SECURITY.md still lists 17.x as the current supported line, indicating inconsistent maintenance governance.
What does this skill do, and when should you use it?
This skill monitors an in-flight paid campaign by comparing cumulative spend with a predefined budget target curve. It returns percent-to-pace, an On-track/Ahead/Behind/Stalled verdict, learning-phase status, an over- or under-delivery call, and a reallocation trigger. It requires campaign exports, budget, flight dates, and a target curve; it does not set the initial allocation, choose a bid strategy, or score the ad account.
Reads a campaign report export, daily or lifetime budget, flight window, target curve, delivery status, budget-lost impression share when available, and platform learning status; records and trends spend by day; computes actual cumulative spend against expected cumulative spend at the current point; classifies over-delivery, under-delivery, or stalled delivery; identifies a plausible driver such as cap limitation, bid throttling, low volume, narrow audience, or dayparting; and produces a labeled pacing table, verdict, fire/hold reallocation trigger, decision band, projected end-of-flight spend where applicable, and next-check date.
- A paid media manager is nine days into a 30-day flight and needs to know whether a campaign is following its daily budget curve.
- An advertiser sees a prospecting set exhaust its daily cap by noon and wants to determine whether it is over-delivering.
- A growth team has spent 30% of the budget while 60% of the flight has elapsed and needs an under-delivery and budget-move assessment.
- A media operator sees pacing diverge after learning ends and needs to decide whether to hand a reallocation trigger to the budget-optimization workflow.
What are this skill's strengths and limitations?
- Uses a target curve fixed before analysis instead of treating spent-budget percentage as pacing.
- Confirms learning status before action and separates observed gaps from plausible causes.
- Produces a standardized four-way verdict and a band-based fire/hold reallocation trigger.
- Works from manually exported first-party campaign data without requiring an ad-platform API.
- Does not calculate the new budget allocation or choose the bid strategy; those are delegated to budget-optimizer and bid-strategy-planner.
- Does not fire a reallocation trigger while the campaign is in learning.
- Requires day-level export data to assess pacing against a curve; GA4 is only an optional sanity check.
- The supplied source does not provide independent test results or platform-specific validation for this skill.
How do you install this skill?
Install the repository with npx skills add aaron-he-zhu/aaron-marketing-skills. You can also run git clone https://github.com/aaron-he-zhu/aaron-marketing-skills, or in Claude Code run /plugin marketplace add aaron-he-zhu/aaron-marketing-skills followed by /plugin install aaron-marketing@aaron. The skill file is ad/scale/budget-pacing-monitor/SKILL.md.
How do you use this skill?
Provide an in-flight campaign export, daily or lifetime budget, flight window, and an even, front-loaded, or back-loaded target curve. Example trigger: Check pacing on Campaign X — daily budget is $200, we're 9 days into a 30-day flight. Am I on track? If no export is available, provide one first; a dashboard screenshot or single total is insufficient for a reliable day-by-day pacing read.
How does this skill compare with similar options?
Compared with budget-optimizer, this skill decides whether reallocation is warranted and how far pacing is off, while budget-optimizer computes the new allocation. Compared with bid-strategy-planner, it does not select the bidding strategy. Compared with ad-account-auditor, it does not compute RQS or run the account audit gate.