# Build a paid social reach and frequency dashboard in Claude

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

Builds the Get MCP Ads Reach and frequency template as a Claude dashboard for Meta, TikTok, Pinterest and Snapchat: reach, frequency, CPM and CPM reach (spend per thousand people reached) against an equivalent comparison period, net new reach (people reached this period who were not reached in the previous one), the cumulative reach curve, six months of reach with each month's net new reach, and campaigns and ads ranked by what their reach costs. Each platform's reach stays its own: it is never added across platforms, days, campaigns or ads.

**Intent.** A live page that shows how many people the paid social budget reaches, how often, at what cost per thousand people, and how many of them are new each month.

## When to use

- Someone asks for reach, frequency, CPM reach, cost per thousand people reached, net new reach or incremental reach month over month on Meta, TikTok, Pinterest or Snapchat, as a report they can keep in Claude.
- A monthly paid social review that asks whether the creatives are expensive in reach.

## When not to use

- A single reach figure right now: answer in the conversation with the platform's own report.
- Deduplicated reach across platforms: no platform reports it, and adding them counts the same people several times.
- Hosts without Claude's Dashboard artifact type: answer in the conversation with the matching reports instead.

## Sources

Required: any connected source
Optional: Meta Ads, TikTok Ads, Pinterest Ads, Snapchat Ads

## Preconditions

- The organisation is on Team or Enterprise: ready-made dashboards are not offered on Free or Pro.
- The account is ticked in the dashboard, confirmed via list_accounts.

## Inputs

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

## Procedure

1. Resolve the client's workspace and its paid social accounts, one per platform (Meta, TikTok, Pinterest, Snapchat), with list_accounts.
2. Fetch the reach template with every account (accounts, one per platform). — tools: `get_dashboard_template`
3. Create a Dashboard artifact, write every document exactly as given in one batch, read its check, hand over with the lines given.

## Decision rules

- **When** The template is refused with PLAN_REQUIRED → **conclude** Say the dashboards come with Team and Enterprise and that only the account owner changes the plan; answer the question in the conversation meanwhile.
- **When** Net new reach is empty → **conclude** It needs the previous period as comparison, read with the period as one range: say so, and that another comparison (last year, a custom start) keeps every other figure.
- **When** Snapchat shows no account, curve or monthly reach → **conclude** Snapchat reports reach per campaign and per ad only: point to its campaign and ad tables instead of reading the gap as no reach.
- **When** Pinterest months older than about three months are empty → **conclude** Pinterest gives reach without a reporting job only over the last 90 days; say the gap is the platform's, not a drop.
- **When** A reader sees a source fail to load → **conclude** Their own Get MCP Ads access decides: check that their connection covers this client's workspace and that their plan includes dashboards before changing the dashboard.

## 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

- Editing the template's page or queries by hand loses the provenance of each figure: ask for changes by name instead.
- Adding reach across platforms, days, months, campaigns or ads: the same person is counted once per window by each platform, so the sum overstates the people reached.
- Reading frequency or CPM reach averaged across rows: each is computed from its own window's sums.

## Output

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

## Related

- Skill: [creative-analytics-dashboard](https://www.getmcpads.com/skills/creative-analytics-dashboard.md)
- Skill: [scorecard-dashboard](https://www.getmcpads.com/skills/scorecard-dashboard.md)
