Skill detail
pdf-report
Generates branded, audience-structured marketing reports — executive summaries, campaign reports, channel deep-dives, and reviews — with brand theming and live data pulls. Directly supports agency client reporting.
Why we recommend it: Branded client report generation is core agency reporting work.
Inspect before use
Read the source instructions and check the requirements before you install this skill.
SKILL.md
The saved excerpt is a snapshot from when this skill was listed. The external source remains the complete and most current version.
---
name: pdf-report
description: "Generate a branded, audience-structured marketing report — executive summary, campaign report, channel deep-dive, competitor report, or monthly/quarterly review — assembled via pdf-generator.py with brand colors, logo, and fonts, and previewed for adjustments before finalizing. Pulls data from campaign-tracker.py, performance-monitor.py, competitor-tracker.py, and connected analytics MCPs, flagging stale sources. Triggers on \"/digital-marketing-pro:pdf-report\", \"generate a client report\", \"build an executive summary PDF\", \"create the quarterly review report\", \"make a branded campaign report\". Reads the brand profile for the stored report theme; structures content for c-suite, team, or client audiences."
---
# /digital-marketing-pro:pdf-report
## Purpose
Generate professionally branded marketing reports as structured, downloadable documents. Supports executive summaries, campaign performance reports, channel reports, competitor reports, and monthly/quarterly reviews. Reports include brand theming (colors, logos, fonts) and are structured for the intended audience (C-suite, marketing team, or client). Designed to eliminate manual report assembly by pulling live data from connected sources, applying brand-consistent formatting, and producing audience-appropriate deliverables that are ready to share without further editing.
## Input Required
The user must provide (or will be prompted for):
- **Report type**: `executive-summary` (1-page strategic overview with 3-5 headline KPIs), `campaign-report` (full campaign performance with channel breakdowns and A/B results), `channel-report` (deep-dive into a single channel — paid, organic, email, social), `competitor-report` (competitive landscape with share-of-voice and positioning), or `monthly-review` / `quarterly-review` (period-over-period performance with trend analysis and forward plan)
- **Data sources and metrics to include**: Which campaigns, channels, or metric categories to pull into the report — e.g., "all paid media campaigns from Q4", "email + social metrics", "top 5 competitors". Specific KPIs can be requested (ROAS, CAC, LTV, conversion rate, pipeline) or left to auto-select based on report type and business model
- **Time period**: The reporting window — specific dates, relative periods (last 30 days, Q4 2024, YTD), or comparison periods (this month vs. last month, Q4 vs. Q3). For reviews, the primary period and comparison period are both required
- **Intended audience**: `c-suite` (executive summary focus — strategic insights, trend arrows, recommendations), `team` (full operational detail — granular metrics, test results, action items), or `client` (branded presentation format — objectives recap, performance against goals, competitive context, next steps)
- **Brand theme preferences (optional)**: Override stored brand theme — custom color palette, logo placement, font selection, header/footer content. If omitted, uses the brand profile's stored report theme from `pdf-generator.py brand-theme`
## Process
1. **Load brand context**: Read `~/.claude-marketing/brands/_active-brand.json` for the active slug, then load `~/.claude-marketing/brands/{slug}/profile.json`. Apply brand voice, industry context, and report theme (colors, logo URL, fonts from brand profile or `pdf-generator.py brand-theme`). Check for guidelines at `~/.claude-marketing/brands/{slug}/guidelines/_manifest.json` — if present, load visual and tone restrictions. If no brand exists, ask: "Set up a brand first (/digital-marketing-pro:brand-setup)?" — or proceed with defaults.
2. **Gather report data from relevant sources**: Pull data based on report type — `campaign-tracker.py` for campaign performance data and status, `performance-monitor.py` for performance metrics and threshold comparisons, `competitor-tracker.py` for competitive intelligence data, analytics MCPs (Google Analytics, Google Ads, Meta) for live channel metrics. Cross-reference data freshnessRead the full source on GitHub (opens external page)