| name | paid-measurement-loop |
| slug | aaron-paid-measurement-loop |
| displayName | Paid Measurement Loop · 付费广告复盘 |
| summary | 付费广告复盘/ROAS回看/投放效果归因 |
| description | Use when the user asks to "read back" a paid campaign change, "did this ad change work", or "compare ROAS/CPA before and after"; reads ROAS/CPA against a control over a fixed readback window and returns a Promote / Keep-testing / Rollback / Unproven readback decision with the math delegated to roi-calculator. Not for RQS scoring or veto adjudication — use ad-account-auditor; not for the ROI ratio math — use roi-calculator; not for cross-channel rollups — use performance-analyzer. 付费广告复盘/ROAS回看/投放效果归因 |
| version | 19.0.0 |
| license | Apache-2.0 |
| compatibility | Claude Code and compatible agent-skill hosts |
| homepage | https://github.com/aaron-he-zhu/aaron-marketing-skills |
| when_to_use | Use when reading back a paid-ads change (budget shift, new creative, bid/target edit) against a control over a fixed readback window, deciding 复盘 Promote/Keep-testing/Rollback/Unproven on ROAS/CPA, or normalizing a cross-platform ROAS comparison. Not for RQS/veto adjudication (use ad-account-auditor), ROI ratio math (use roi-calculator), or cross-channel reporting (use performance-analyzer). |
| argument-hint | <campaign/change> [readback window] |
| metadata | {"author":"aaron-he-zhu","version":"19.0.0","discipline":"ad","phase":"scale","geo-relevance":"low","hermes":{"tags":["marketing","ad","scale"],"category":"ad"},"openclaw":{"emoji":"🎯","homepage":"https://github.com/aaron-he-zhu/aaron-marketing-skills"}} |
Paid Measurement Loop
Reads a paid-ads change back against a control over a fixed readback window and returns Promote / Keep-testing / Rollback / Unproven. This is the paid readback loop — distinct from roi-calculator (the ROI/CPA math, which this delegates to), ad-account-auditor (RQS score/veto adjudication), and performance-analyzer (cross-channel rollup); it owns only the readback decision, window, and control.
Quick Start
Read back the budget increase I made on Campaign X two weeks ago — did ROAS hold vs the control?
I rotated in new creative on the prospecting set on the 10th — promote, keep testing, or roll back?
Compare ROAS on my Meta vs Google search campaigns (I have both CSV exports)
Skill Contract
Expected output: a per-change readback_decision (Promote / Keep-testing / Rollback / Unproven) with delta-vs-control on a primary metric (ROAS or CPA), the readback window used, normalization notes (attribution window + currency), and a handoff summary ready for memory/ad/paid-measurement-loop/. readback_decision is not an RQS auditor verdict.
- Reads: the change under test (what/when/owner), baseline vs candidate window exports (campaign report, GA4/ecommerce conversions), the control (unchanged campaign, sibling ad set, or holdout), target ROAS/CPA, attribution window per platform, and currency.
- Writes: a user-facing readback table plus a reusable readback summary storable under
memory/ad/paid-measurement-loop/.
- Promotes: confirmed Promote/Rollback decisions, the next-readback date, and any measurement-signal blocker (broken tracking, double-counting) to
memory/open-loops.md.
- Done when: the change exited learning phase before the window opened; primary metric is read delta-vs-control over a window fixed before the change (not a raw before/after); attribution window + currency are normalized before any cross-platform comparison; and
readback_decision is one of the four with its required fields recorded.
- Primary next skill: use the
Next Best Skill below.
Handoff Summary
Emit the standard shape from skill-contract.md §Handoff Summary Format.
Data Sources
All integrations optional (see CONNECTORS.md). Inputs come from the user's own account, manually exported — there is no required ad-platform API. Keyed APIs (Google Ads SDK, Meta Marketing API) are an optional Tier-2/3 MCP convenience only, never a precondition.