Claude Skills

8 Claude Skills for Monthly Client Reports

A monthly client report needs one basis for its numbers before it needs better prose. These eight skills check the input, calculate weighted KPIs, keep revenue claims apart and turn evidence into a next-month plan.

MDMarek Dąbrowski · October 17, 2026

Download the eight-skill pack

An open monthly client report with separate Google Ads, Meta Ads and CRM evidence rows.

Key takeaways

  • Eight skills cover the path from source checks to a client-ready monthly report.
  • Weighted totals use summed numerators and denominators, never an average of channel rates.
  • CRM closed-won revenue and platform attribution claims remain separate.
  • Missing, immature and incomparable data stays in the report.
  • Conversion figures stay provisional until the attribution windows have passed, and the report names the re-read date.
  • Every next-month action names evidence, an owner, a measure and any approval needed.

Why monthly reporting gets difficult

Google Ads can report one lead count. Meta Ads can report another. CRM outcomes can arrive weeks later. One customer can receive credit in more than one platform attribution window.

A polished paragraph cannot repair those differences.

A report needs a basis first: period, timezone, currency, conversion definition, CRM cohort rule and revenue rule. Then it needs math that shows its denominator. Then it needs language that says what the evidence can support.

These skills start there. You paste the exports, CRM outcome table and dated notes. Each output labels its evidence as SUPPLIED, CALCULATED, HYPOTHESIS, NOT COMPARABLE, IMMATURE, PROVISIONAL, UNAVAILABLE or MISSING INPUT.

Eight skills, in order

1. Report Input Check

Start here. It records source ranges, read dates, timezones, currencies, definitions and attribution settings. It returns a separate readiness verdict for KPI comparison, lead quality, revenue and narrative. A blank CRM lead-created date blocks a cohort result. A partial day blocks a full-period comparison. A missing CRM block makes quality and revenue unavailable and leaves the platform KPIs ready.

2. Weighted KPI Readout

Use comparable exports to calculate spend, leads, CPL and click-to-lead rate for the month and the month before it. Account CPL comes from total spend divided by total leads. It does not come from averaging Google and Meta CPL. When the months have different lengths, volumes are compared per day and rates are calculated directly.

For example, 9,000 PLN for 126 Google leads and 4,500 PLN for 108 Meta leads gives (9,000 + 4,500) / (126 + 108) = 57.69 PLN weighted CPL. Both channel numbers remain visible.

3. Lead Quality Review

Lead volume has little value without a cohort rule. This skill uses only cohorts that reached the agreed outcome window, then calculates qualified lead and opportunity rates from the same cohort. The current month’s CRM leads stay IMMATURE until their window closes. If the outcome window was not supplied, every cohort stays IMMATURE with its lead count and no rates. It keeps sales opinions separate from CRM categories.

4. Revenue Reconciliation

CRM closed-won revenue has one stated date and currency basis. Google and Meta attribution claims sit in separate columns, and they are compared with CRM revenue only for a mature cohort whose dates match the platform period. The report never creates a total by adding both platform claims.

5. Change Log and Causal Read

A budget edit, new creative and a landing-page release can happen on the same day. This skill puts movements and changes on one timeline. Timing becomes a hypothesis. A causal statement needs a supplied test, control or direct technical evidence.

6. Decline Explanation

A decline deserves a clear answer. This skill confirms that the periods compare, checks whether the figures are past their attribution windows (otherwise the movement is provisional, with a re-read date), identifies the affected numerator and denominator, then traces available layers from delivery to clicks, conversion, lead quality and revenue. Every unknown gets a data request and owner.

7. Next Month Action Plan

A report should leave a short list of next moves, at most three, not a long list of vague optimisations. Each action carries its evidence, owner, due date, baseline, measurement window and approval status. A hypothesis can justify a test or investigation. It cannot promise a fix.

8. Client Report Assembly

Run this last. It turns checked outputs into one readable document with a reporting basis, decision-relevant KPI table, lead quality, revenue reconciliation, factual explanation, next-month actions and open data requests. It does not upgrade a hypothesis into a fact.

One synthetic example

The pack includes a fictional September against August. Google spends 9,000 PLN for 126 leads and Meta spends 4,500 PLN for 108 leads. As currently reported, September CPL is 13,500 / 234 = 57.69 PLN. August was 40.91 PLN, so CPL is up 41.03%.

That movement is PROVISIONAL. The exports were read on 2026-10-05, Google’s 30-day click window runs to 2026-10-30 and Meta’s 7-day window runs to 2026-10-07. Until both windows have passed, the report calls it a provisional movement, not a confirmed decline, and says to re-read the platforms and the CRM on 2026-10-30. Spend and clicks compare as of the supplied exports, which can still be adjusted.

September has 30 days and August 31, so volumes compare per day. Spend and clicks per day are unchanged. Leads per day fall from 11.00 to 7.80 (-29.09%) and the click-to-lead rate from 11.00% to 7.80%, as currently reported. A raw lead total would show -31.38%, which the report labels not like-for-like.

September’s CRM leads are IMMATURE until 2026-10-30 under the 30-day window, so the report shows a lead count and no quality rate. August is mature: 38,000 PLN of CRM closed-won revenue, of which 36,000 PLN carries a channel tag. Google claims 31,000 PLN and Meta 18,000 PLN under their own windows. Both claims stay beside the CRM figures. Neither becomes a total. A landing-page form change appears on the timeline as a hypothesis, not a cause.

Remove the CRM block and the platform KPIs still calculate, while quality and revenue say UNAVAILABLE. Leave out only the outcome window and the KPIs still calculate, every cohort is IMMATURE with its lead count and no quality rate is shown. A missing Meta qualified-lead field makes the combined qualified lead rate MISSING INPUT. It does not become Google qualified leads divided by all leads. A negative, non-numeric or NaN value is still rejected, never read as zero.

What to paste before you ask for a report

Bring current and prior export dates, timezone, currency, conversion definition and attribution settings with each channel’s window in days. Add CRM lead-created date, outcome definitions, cohort window, closed-won IDs and revenue rule. Add dated account and business changes.

Remove personal identifiers where your data policy requires it. Never paste passwords. Use an AI account approved for the data you provide.

Install locally

From the extracted pack directory, run:

bash scripts/install.sh "$HOME/.claude/skills"

The installer copies eight skill folders and their shared reporting helper. It stops before copying if a destination folder already exists. Start a new Claude Code session, ask for Report Input Check, then paste the exports and their reporting basis.

The optional Python helper and a synthetic current-versus-prior example are included. Run the installation verifier before relying on the pack for a client report:

sh scripts/verify_install.sh . 8

Keep the client narrative honest

A client needs a useful answer, especially when results move in the wrong direction. Useful does not mean certain.

Say what changed. Show the calculation. Say what may explain it. Name the check that could settle the question. Then give the next action with an owner and an approval state.

That sequence produces a report a client can inspect and a team can act on.

AdLume

New version of AdLume launching soon

Join the waitlist and get notified when the new AdLume is ready.

One email, on the day access opens. Nothing else, and you can leave the list with one click.

Keep reading

AdLume

New version of AdLume launching soon

Join the waitlist and get notified when the new AdLume is ready.

One email, on the day access opens. Nothing else, and you can leave the list with one click.