First, pull down the instructions at go.pumpup.com/SKILL.md to install Pump Up.

# Monthly KPI review

Reconcile one reporting period against agreed metric definitions, collect supported explanations, and record the business owner’s decisions and accountable follow-up.

This template contains operating instructions and suggested board columns. Adapt it with the
process owner using a recent ordinary case and a recent exception before creating anything.

## How to customize it

Ask, in their own words:

- What is different about how they run this process today?
- Which of the integrations below do they actually use, and what stands in for the rest?
- Which decisions would they be uncomfortable with an agent making on its own?
- What should stop the process entirely rather than be guessed at?

Then rewrite the playbook in their terms. Keep it as prose. Keep every human checkpoint
unless they explicitly remove it, and keep its kind: Approval, Information request, or
Exception. Follow the current Pump Up authoring guide and show a plain-language preview.
Get explicit approval before creating or updating a live playbook.

## Playbook

This playbook guides the reconciliation, review, and decision-making for one closed reporting period across agreed business metrics. One run reconciles one reporting period against documented formulas and source data, gathers verified explanations for significant shifts, and presents an evidence-backed review packet to the business owner for operational decisions. It ends when approved metrics and assigned follow-up actions are verified in the review tracker, or when unresolved variances are formally recorded with an attributed rationale. Fall back to manual spreadsheet exports or tabular paste if connected platform APIs are unavailable.

- Check the destination tracking table (such as Coda, Airtable, or Google Sheets) for an existing finalized review for the specified reporting period. If a completed review already exists, stop processing to prevent duplicate records and notify the operator with the existing record reference.
- Extract source records for the period and compare reported figures against established metric definitions, including explicit numerator and denominator rules, timezone boundaries, and historical restatements. Flag any metric whose definition is incomplete, unverified, or conflicting across systems, rather than treating an unverified formula as settled.
- For metrics deviating significantly from agreed baselines or prior periods, compile documented operational causes from team incident logs, deployment schedules, or analytics evidence (such as Google Analytics 4 traffic reports). Clearly distinguish raw recorded data from metric owner commentary and operational hypotheses, avoiding unsupported causal claims.
- Compile the review packet containing reconciled figures, documented variance reasons, and concrete operational follow-up proposals. Each proposed action must specify an operational rationale, a nominated accountable owner, and an explicit review date for the subsequent period.
- Apply approved metrics, owner decisions, and assigned follow-up tasks to the designated review tracking table (in Coda, Airtable, or Google Sheets). Read back the saved records immediately to confirm that figures, decisions, and accountable owners match the approved state exactly.
- In a fictional example, the October SaaS operations review showed a 14% drop in qualified leads in Google Analytics 4 while the CRM reported on-target signups. Reconciling definitions revealed that a tracking tag migration on October 12 altered form submission event parameters, while organic traffic also declined by 6%. Rather than assuming the tag change caused the entire decline, the review recorded the documented tag discrepancy alongside the observed traffic drop as a hypothesis. The metric owner supplied the raw event counts, the business owner approved retaining the sales plan while assigning the web engineer to repair the tracking tag by November 5 and assigning the marketing lead to evaluate organic traffic by November 12, and both corrective tasks and reconciled numbers were verified in Coda.
- The case completes successfully when the review record, approved decisions, assigned action items, and next check dates are verified in the tracking platform. If the business owner decides not to alter the current plan despite a metric variance, record the approved explanation and mark the review complete without creating unnecessary action items. If unresolved metric discrepancies remain, the case completes when the business owner's explicit decision to defer or accept the unresolved figures is recorded with an accountable owner and follow-up date.

## Human checkpoints

Each of these hands control to a person. An approval is a decision a person makes on work
the agent has done; an information request is something only a person can supply; an
exception is a situation the playbook does not cover, reported rather than improvised.

- **Information request.** When a metric definition is ambiguous, source rows are missing, or calculation formulas conflict between systems, present the exact discrepancy to the metric owner with the competing values and calculation methods. If the metric owner supplies the missing data or confirms the formula, reconcile the figures and preserve the updated evidence. If the metric owner cannot resolve the discrepancy or does not respond, keep the affected metric marked as unresolved, attribute the uncertainty, and submit it to the business owner to decide whether to exclude the metric or defer it with an assigned owner and follow-up date.
- **Approval.** Present the complete review packet to the business owner, showing verified metrics, attributed variance explanations, unresolved data points, proposed decisions, and nominated action owners. If the business owner approves the packet as presented, proceed to record decisions. If the business owner requests changes to figures, actions, or owners, update the review packet and present the revised packet for explicit confirmation. If the business owner decides to retain the current operational plan without changes, record that explicit choice with its rationale. If the business owner is silent or unavailable, keep the case pending; do not infer approval or proceed to record decisions.
- **Exception.** If writing the approved review or action records fails, or read-back verification reveals missing fields or corrupted entries, inspect existing destination records before attempting a retry. If automated writing remains unavailable, provide a formatted export of the approved review to the reporting lead. The reporting lead either repairs system access and verifies successful persistence via read-back, applies the approved export manually and provides read-back confirmation, or formally defers the write with an assigned owner and completion deadline.

## Integrations

- Google Sheets
- Coda
- Airtable
- Google Analytics 4

## Board columns

Adapt these board labels and their permitted transitions using the current authoring guide.

- Period ready
- Checking figures
- Owner review
- Review recorded
- Unresolved figures

## Functions library

Checks to adapt for this process. Confirm how each will be implemented during setup.

- **Duplicate check.** Checks the destination table for an existing finalized review for the specified reporting period and returns existing record identifiers if present.
- **Definition reconciliation.** Compares reported metric numbers against documented source formulas, date boundaries, and raw transaction counts to identify calculation discrepancies.
- **Variance attribution.** Matches significant metric changes against operational incident logs, deployment schedules, and analytics exports to produce supported explanations.
- **Decision recording.** Writes the finalized KPI summary, approved operational decisions, assigned action owners, and follow-up deadlines to the destination tracking system and verifies row creation via read-back.

The other templates are at https://pumpup.com/templates. Each has a markdown version at the
same address followed by /template.md.
