# Build the normal bands that make alerts meaningful

> Tier: recipe. Operating recipe: real tool sequence, core rules, known traps.

Baselines computed from history: spend, CPA and volume bands per account, the prerequisite for every alert.

**Intent.** What 'normal' is, per account and metric, so deviations mean something.

## When to use

- Before setting up monitoring.
- Quarterly baseline refreshes.

## When not to use

- Accounts younger than a quarter: bands from a month are guesses.

## Sources

Required: any connected source

## Preconditions

- The account is ticked in the dashboard, confirmed via list_accounts.

## Inputs

- `window`: Analysis window. Default: last 30 days.

## Procedure

1. Pull 90 days of daily figures per platform. — tools: `google_ads_get_insights`, `meta_get_insights`, `tiktok_get_insights`, `pinterest_run_report`
2. Compute weekday-aware bands per metric and write them down.

## Decision rules

- **When** A metric's variance makes bands uselessly wide → **conclude** Alert on that metric's drivers instead: wide bands are a finding about the metric, not a failure of the method.

## Evidence requirements

- Every figure carries its account, metric and window.
- Anything below a readable sample size is reported as unjudged, not as zero.

## Human approval boundary

- The readout changes nothing. Any change it motivates goes through Safe Writes: preview, human confirmation, then apply.

## Failure modes

- Bands built across a promo period normalise the promo: exclude or annotate exceptional windows.

## Output

- **Readout**: The figures, with windows and accounts named.
- **Flags**: What deserves a deeper skill or a human decision.

## Related

- Skill: [morning-check](https://www.getmcpads.com/skills/morning-check.md)
- Skill: [campaign-anomaly-investigation](https://www.getmcpads.com/skills/campaign-anomaly-investigation.md)
