Funnel reporter skill

End-to-end SaaS funnel reporting pulling live data from Humblytics API.

by Humblytics·MIT license·★ 85 Stars on the repo·GitHub ↗

Use now

Inside this skill

SKILL.md · the author's own words
# Funnel Reporter

## Purpose

Pull live analytics data from the Humblytics API to generate comprehensive funnel reports. Covers the full journey from traffic acquisition…

## When to Use

- Generating weekly or monthly marketing performance reports
- Analyzing traffic trends and source attribution
- Reporting on signup and trial-to-paid conversion rates
- Identifying changes in funnel performance over time
- Preparing board or stakeholder updates with marketing metrics
- Comparing period-over-period performance

## Connection

Word-for-word excerpt, not a result. Read the full SKILL.md ↓

Files of Funnel reporter

Humblytics/main1 file shown
SKILL.md
Show the full text240 lines

Funnel Reporter

Purpose

Pull live analytics data from the Humblytics API to generate comprehensive funnel reports. Covers the full journey from traffic acquisition through conversion and retention. Designed for SaaS businesses that need regular reporting on marketing and product metrics.

When to Use

  • Generating weekly or monthly marketing performance reports
  • Analyzing traffic trends and source attribution
  • Reporting on signup and trial-to-paid conversion rates
  • Identifying changes in funnel performance over time
  • Preparing board or stakeholder updates with marketing metrics
  • Comparing period-over-period performance

Connection

Live data comes from the Humblytics MCP (server humblytics). The skill calls mcp__humblytics__* tools — the MCP handles auth, base URL, and property resolution. Connect it once per the repo README; never paste API keys into chat. The API key lives in the MCP connection headers, set at connect time.

Property: for a single-property key the MCP auto-resolves the property. For a multi-property key, call list_properties and pass propertyId to each tool.

Before You Start

  1. Confirm the property — Which Humblytics property to report on (call list_properties if the key covers more than one)
  2. Define the time period — This week, last 30 days, month-over-month, quarter, custom range
  3. Identify the audience — Is this for the team, leadership, investors? This shapes detail level and framing.
  4. Check for comparison period — Most useful reports compare current vs previous period
  5. Understand the funnel steps — Confirm the key conversion events tracked in Humblytics
  6. Look for context — Check project docs for business model, pricing, and target metrics

Core Workflow

Step 1: Pull Traffic Data

Retrieve top-of-funnel metrics via the Humblytics MCP traffic tools. They take start, end (ISO 8601 datetimes) and timezone (IANA). Optional: granularity (hour/day/month) for time-series. NOTE: granularity=week is currently bugged on get_traffic_trends and returns all-zero buckets — use day and aggregate to weeks client-side instead.

MCP tools:

  • get_traffic_summary — Aggregate metrics (pageviews, sessions, bounce rate, avg session duration)
  • get_traffic_trends — Timeseries pageviews & unique visitors (use granularity=day; avoid week — it returns all-zero buckets)
  • get_pages_breakdown — Page-level performance: views, visitors, scroll depth, bounce rate
  • get_traffic_breakdown — UTM source/medium/campaign + device + location dimensions, all from the same tool
  • get_entry_exit_pages — Top entry and exit pages

Key traffic metrics to pull:

  • Total sessions and unique visitors
  • Page views and pages per session
  • Average session duration
  • Bounce rate
  • New vs returning visitors ratio
Step 2: Analyze Traffic Sources

Break down where traffic is coming from:

Source Sessions % of Total Bounce Rate Conv Rate Trend
Organic Search — — — — up/down/flat
Direct — — — — —
Paid Search — — — — —
Paid Social — — — — —
Organic Social — — — — —
Referral — — — — —
Email — — — — —

Flag any source with:

  • Significant volume change (>20% vs previous period)
  • Unusually high or low conversion rate
  • High bounce rate (>70%) suggesting poor targeting or landing page mismatch
Step 3: Page Performance

Identify top-performing and underperforming pages:

Top pages by traffic — Which pages attract the most visitors? Top pages by conversion — Which pages drive the most signups/purchases? Highest bounce rate pages — Where are people leaving immediately? Lowest engagement pages — Short time-on-page, low scroll depth

For key landing pages, report:

  • Sessions, bounce rate, avg time on page
  • Conversion rate and total conversions
  • Period-over-period change
Step 4: Funnel Step Analysis

Map the full conversion funnel with data:

Visitors → Signups → Activated → Trial → Paid → Retained

  10,000 → 500 → 300 → 200 → 80 → 65
         5.0%  60.0%  66.7%  40.0%  81.3%

For each transition, report:

  • Volume: How many users at each step
  • Conversion rate: Percentage moving to next step
  • Period comparison: How this compares to the previous period
  • Trend: Improving, declining, or stable
Step 5: Conversion Events

There's no generic events tool — pull conversion data from the dedicated form and click tools instead:

  • get_forms_breakdown — All form submissions across pages
  • get_forms_details (pass page: "/path") — Conversion rates for a specific form/page
  • get_clicks_breakdown — Click data with top targets across all pages
  • get_clicks_details (pass page: "/path") — Clicks on a specific page with UTM attribution

Report on:

  • Signup completions (get_forms_breakdown filtered to signup pages)
  • CTA clicks (get_clicks_details by page and CTA target)
  • Form submissions (get_forms_breakdown)
  • Pricing page views (get_page_details with page: "/pricing")
  • Trial starts (get_forms_breakdown filtered to the trial-start form)
  • Upgrade/purchase events (get_forms_breakdown filtered to checkout/purchase)
Step 5.5: Attach Paid Attribution (when reporting paid channels, plus revenue/trial activations only when a revenue connector is attached — else 0)

If the report needs to surface paid-channel performance, ROAS, or revenue-by-campaign, enrich the funnel with the get_ads_attribution tool (pass startDate and endDate as YYYY-MM-DD):

  • get_ads_attribution — per-campaign attribution rows

Returns per-campaign rows with spend, impressions, clicks, sessions (always populated) plus revenue, revenue_conversions, roas, trial_count (these are 0 unless a revenue connector such as Stripe/ChartMogul is linked — do NOT report ROAS or revenue from this tool alone), and unmatched_ad_campaigns (UTM hygiene gaps) / unmatched_utm_campaigns (organic/email traffic). Pair with get_traffic_breakdown source data to build a paid-vs-organic split (spend/sessions only).

For raw connector metadata (ad accounts, daily insights, ad creative), use the meta/google MCP tools — list_meta_connections, get_meta_daily_insights, list_google_ads_connections, and related — see revenue-attributor for the full workflow.

Step 6: Period-over-Period Comparison

Always compare against the previous period (week-over-week or month-over-month):

Metric This Period Last Period Change Trend
Sessions — — +X% —
Signups — — +X% —
Conversion Rate — — +X pp —
Bounce Rate — — -X pp —

Highlight:

  • Metrics that improved significantly (celebrate wins)
  • Metrics that declined (flag for investigation)
  • Metrics that are flat but should be growing (stagnation risk)
Step 7: Insights and Recommendations

Do not just present data — interpret it:

The Report Summary Structure:

  1. Executive Summary (3 sentences max)

    • Overall funnel health: healthy / needs attention / critical
    • Biggest win this period
    • Biggest concern this period
  2. Key Metrics Table — The 5-8 most important numbers

  3. Traffic Analysis — Sources, trends, notable changes

  4. Funnel Performance — Step-by-step with conversion rates

  5. Page Performance — Top and bottom performers

  6. Insights (3-5 bullets)

    • What changed and why
    • What is working well
    • What needs attention
  7. Recommended Actions (3 bullets)

    • One quick win
    • One strategic initiative
    • One thing to investigate further

Report Templates

Weekly Report (concise)
  • Executive summary (3 lines)
  • Key metrics table (5 numbers)
  • Top 3 insights
  • Top 3 actions
Monthly Report (comprehensive)
  • Executive summary
  • Full traffic analysis with source breakdown
  • Complete funnel with step-by-step conversion rates
  • Page-level performance (top 10 pages)
  • Channel-by-channel breakdown
  • Month-over-month trends
  • Insights and strategic recommendations
Board/Stakeholder Report (high-level)
  • 3 headline metrics (traffic, signups, revenue)
  • Trend arrows and period comparison
  • One paragraph narrative
  • Strategic outlook

Metric Benchmarks (SaaS)

Use these as reference points when analyzing data:

Metric Poor Average Good Excellent
Landing page conversion <2% 2-5% 5-10% >10%
Trial-to-paid <10% 10-20% 20-40% >40%
Bounce rate >70% 50-70% 30-50% <30%
Activation rate <20% 20-40% 40-60% >60%
Monthly churn >10% 5-10% 2-5% <2%
  • cro-optimizer — Take report findings and turn them into optimization actions
  • ab-test-generator — Create tests based on underperforming pages or steps
  • marketing-strategist — Use report data to inform strategic planning
  • page-cro — Deep-dive into specific underperforming pages

Shared Frameworks (REQUIRED reading)

Two primitives are load-bearing for this skill. Without them, funnel reports fall back to flagging the highest-percentage drop and quoting raw decimals — both of which mislead.

  • _shared/frameworks/largest-leak-first.md — rank funnel steps by absolute people lost, not percentage drop. A 10% drop on 10,000 visitors (1,000 lost) outranks a 50% drop on 100 visitors (50 lost) by 20×. Compute absolute_loss_per_step = step_in - step_out first; only sort by percentage as a secondary view. This often inverts the priority order.

  • _shared/frameworks/percentile-framing.md — replace "your trial-to-paid CVR is low" with "your trial-to-paid CVR is 11%, at p25 in the OpenView B2B SaaS distribution (p50=14%, p75=22%) — meaningful headroom to median." Use the bands in _shared/benchmarks/baselines.json:

    • All sites desktop: p50 = 3.82% CVR
    • All sites mobile: p50 = 1.32% CVR (~3× desktop gap)
    • B2B SaaS pricing page: p50 = 3.8% CVR (well-optimized: p75 = 8–12%)
    • Ecommerce checkout fields: p50 = 11.3 fields (Baymard optimum = 8)
  • _shared/frameworks/preflight-checklist.md — confirm time range and traffic volume before the report. Funnel diagnostics on <500 sessions are noise, not signal — flag rather than pretend the percentages are meaningful.

  • _shared/benchmarks/baselines.json — full vertical baselines library. Cite the source on every comparison ("Aggregated Statsig/Eppo/FirstMark 2023-2024 reports").

The existing benchmark table in this SKILL.md (Poor/OK/Good/Excellent) is a coarse heuristic. Prefer percentile-band framing from the baselines library when the vertical-stage-metric combination is present there.

1---
2name: funnel-reporter
3description: "End-to-end SaaS funnel reporting pulling live data from Humblytics API. Reports on traffic sources, page performance, signups, conversions, and (only when a revenue connector is attached, else 0) trial activations and revenue metrics. Use when checking funnel metrics, building reports, analyzing traffic trends, or reviewing weekly/monthly marketing performance. Triggers: funnel report, traffic report, analytics report, weekly metrics, monthly report, dashboard, KPIs."
4metadata:
5 version: 1.0.0
6 author: Humblytics
7---
8 
9# Funnel Reporter
10 
11## Purpose
12 
13Pull live analytics data from the Humblytics API to generate comprehensive funnel reports. Covers the full journey from traffic acquisition through conversion and retention. Designed for SaaS businesses that need regular reporting on marketing and product metrics.
14 
15## When to Use
16 
17- Generating weekly or monthly marketing performance reports
18- Analyzing traffic trends and source attribution
19- Reporting on signup and trial-to-paid conversion rates
20- Identifying changes in funnel performance over time
21- Preparing board or stakeholder updates with marketing metrics
22- Comparing period-over-period performance
23 
24## Connection
25 
26Live data comes from the **Humblytics MCP** (server `humblytics`). The skill calls `mcp__humblytics__*` tools — the MCP handles auth, base URL, and property resolution. Connect it once per the repo README; never paste API keys into chat. The API key lives in the MCP connection headers, set at connect time.
27 
28Property: for a single-property key the MCP auto-resolves the property. For a multi-property key, call `list_properties` and pass `propertyId` to each tool.
29 
30## Before You Start
31 
321. **Confirm the property** — Which Humblytics property to report on (call `list_properties` if the key covers more than one)
332. **Define the time period** — This week, last 30 days, month-over-month, quarter, custom range
343. **Identify the audience** — Is this for the team, leadership, investors? This shapes detail level and framing.
354. **Check for comparison period** — Most useful reports compare current vs previous period
365. **Understand the funnel steps** — Confirm the key conversion events tracked in Humblytics
376. **Look for context** — Check project docs for business model, pricing, and target metrics
38 
39## Core Workflow
40 
41### Step 1: Pull Traffic Data
42 
43Retrieve top-of-funnel metrics via the Humblytics MCP traffic tools. They take `start`, `end` (ISO 8601 datetimes) and `timezone` (IANA). Optional: `granularity` (`hour`/`day`/`month`) for time-series. NOTE: `granularity=week` is currently bugged on `get_traffic_trends` and returns all-zero buckets — use `day` and aggregate to weeks client-side instead.
44 
45**MCP tools:**
46- `get_traffic_summary` — Aggregate metrics (pageviews, sessions, bounce rate, avg session duration)
47- `get_traffic_trends` — Timeseries pageviews & unique visitors (use `granularity=day`; avoid `week` — it returns all-zero buckets)
48- `get_pages_breakdown` — Page-level performance: views, visitors, scroll depth, bounce rate
49- `get_traffic_breakdown` — UTM source/medium/campaign + device + location dimensions, all from the same tool
50- `get_entry_exit_pages` — Top entry and exit pages
51 
52**Key traffic metrics to pull:**
53- Total sessions and unique visitors
54- Page views and pages per session
55- Average session duration
56- Bounce rate
57- New vs returning visitors ratio
58 
59### Step 2: Analyze Traffic Sources
60 
61Break down where traffic is coming from:
62 
63| Source | Sessions | % of Total | Bounce Rate | Conv Rate | Trend |
64|--------|----------|-----------|-------------|-----------|-------|
65| Organic Search | — | — | — | — | up/down/flat |
66| Direct | — | — | — | — | — |
67| Paid Search | — | — | — | — | — |
68| Paid Social | — | — | — | — | — |
69| Organic Social | — | — | — | — | — |
70| Referral | — | — | — | — | — |
71| Email | — | — | — | — | — |
72 
73Flag any source with:
74- Significant volume change (>20% vs previous period)
75- Unusually high or low conversion rate
76- High bounce rate (>70%) suggesting poor targeting or landing page mismatch
77 
78### Step 3: Page Performance
79 
80Identify top-performing and underperforming pages:
81 
82**Top pages by traffic** — Which pages attract the most visitors?
83**Top pages by conversion** — Which pages drive the most signups/purchases?
84**Highest bounce rate pages** — Where are people leaving immediately?
85**Lowest engagement pages** — Short time-on-page, low scroll depth
86 
87For key landing pages, report:
88- Sessions, bounce rate, avg time on page
89- Conversion rate and total conversions
90- Period-over-period change
91 
92### Step 4: Funnel Step Analysis
93 
94Map the full conversion funnel with data:
95 
96```
97Visitors → Signups → Activated → Trial → Paid → Retained
98 
99 10,000 → 500 → 300 → 200 → 80 → 65
100 5.0% 60.0% 66.7% 40.0% 81.3%
101```
102 
103For each transition, report:
104- **Volume**: How many users at each step
105- **Conversion rate**: Percentage moving to next step
106- **Period comparison**: How this compares to the previous period
107- **Trend**: Improving, declining, or stable
108 
109### Step 5: Conversion Events
110 
111There's no generic events tool — pull conversion data from the dedicated form and click tools instead:
112 
113- `get_forms_breakdown` — All form submissions across pages
114- `get_forms_details` (pass `page: "/path"`) — Conversion rates for a specific form/page
115- `get_clicks_breakdown` — Click data with top targets across all pages
116- `get_clicks_details` (pass `page: "/path"`) — Clicks on a specific page with UTM attribution
117 
118Report on:
119- Signup completions (`get_forms_breakdown` filtered to signup pages)
120- CTA clicks (`get_clicks_details` by page and CTA target)
121- Form submissions (`get_forms_breakdown`)
122- Pricing page views (`get_page_details` with `page: "/pricing"`)
123- Trial starts (`get_forms_breakdown` filtered to the trial-start form)
124- Upgrade/purchase events (`get_forms_breakdown` filtered to checkout/purchase)
125 
126### Step 5.5: Attach Paid Attribution (when reporting paid channels, plus revenue/trial activations only when a revenue connector is attached — else 0)
127 
128If the report needs to surface paid-channel performance, ROAS, or revenue-by-campaign, enrich the funnel with the `get_ads_attribution` tool (pass `startDate` and `endDate` as `YYYY-MM-DD`):
129 
130- `get_ads_attribution` — per-campaign attribution rows
131 
132Returns per-campaign rows with `spend`, `impressions`, `clicks`, `sessions` (always populated) plus `revenue`, `revenue_conversions`, `roas`, `trial_count` (these are 0 unless a revenue connector such as Stripe/ChartMogul is linked — do NOT report ROAS or revenue from this tool alone), and `unmatched_ad_campaigns` (UTM hygiene gaps) / `unmatched_utm_campaigns` (organic/email traffic). Pair with `get_traffic_breakdown` source data to build a paid-vs-organic split (spend/sessions only).
133 
134For raw connector metadata (ad accounts, daily insights, ad creative), use the meta/google MCP tools — `list_meta_connections`, `get_meta_daily_insights`, `list_google_ads_connections`, and related — see `revenue-attributor` for the full workflow.
135 
136### Step 6: Period-over-Period Comparison
137 
138Always compare against the previous period (week-over-week or month-over-month):
139 
140| Metric | This Period | Last Period | Change | Trend |
141|--------|------------|-------------|--------|-------|
142| Sessions | — | — | +X% | — |
143| Signups | — | — | +X% | — |
144| Conversion Rate | — | — | +X pp | — |
145| Bounce Rate | — | — | -X pp | — |
146 
147Highlight:
148- Metrics that improved significantly (celebrate wins)
149- Metrics that declined (flag for investigation)
150- Metrics that are flat but should be growing (stagnation risk)
151 
152### Step 7: Insights and Recommendations
153 
154Do not just present data — interpret it:
155 
156**The Report Summary Structure:**
157 
1581. **Executive Summary** (3 sentences max)
159 - Overall funnel health: healthy / needs attention / critical
160 - Biggest win this period
161 - Biggest concern this period
162 
1632. **Key Metrics Table** — The 5-8 most important numbers
164 
1653. **Traffic Analysis** — Sources, trends, notable changes
166 
1674. **Funnel Performance** — Step-by-step with conversion rates
168 
1695. **Page Performance** — Top and bottom performers
170 
1716. **Insights** (3-5 bullets)
172 - What changed and why
173 - What is working well
174 - What needs attention
175 
1767. **Recommended Actions** (3 bullets)
177 - One quick win
178 - One strategic initiative
179 - One thing to investigate further
180 
181## Report Templates
182 
183### Weekly Report (concise)
184- Executive summary (3 lines)
185- Key metrics table (5 numbers)
186- Top 3 insights
187- Top 3 actions
188 
189### Monthly Report (comprehensive)
190- Executive summary
191- Full traffic analysis with source breakdown
192- Complete funnel with step-by-step conversion rates
193- Page-level performance (top 10 pages)
194- Channel-by-channel breakdown
195- Month-over-month trends
196- Insights and strategic recommendations
197 
198### Board/Stakeholder Report (high-level)
199- 3 headline metrics (traffic, signups, revenue)
200- Trend arrows and period comparison
201- One paragraph narrative
202- Strategic outlook
203 
204## Metric Benchmarks (SaaS)
205 
206Use these as reference points when analyzing data:
207 
208| Metric | Poor | Average | Good | Excellent |
209|--------|------|---------|------|-----------|
210| Landing page conversion | <2% | 2-5% | 5-10% | >10% |
211| Trial-to-paid | <10% | 10-20% | 20-40% | >40% |
212| Bounce rate | >70% | 50-70% | 30-50% | <30% |
213| Activation rate | <20% | 20-40% | 40-60% | >60% |
214| Monthly churn | >10% | 5-10% | 2-5% | <2% |
215 
216## Related Skills
217 
218- **cro-optimizer** — Take report findings and turn them into optimization actions
219- **ab-test-generator** — Create tests based on underperforming pages or steps
220- **marketing-strategist** — Use report data to inform strategic planning
221- **page-cro** — Deep-dive into specific underperforming pages
222 
223## Shared Frameworks (REQUIRED reading)
224 
225Two primitives are load-bearing for this skill. Without them, funnel reports fall back to flagging the highest-percentage drop and quoting raw decimals — both of which mislead.
226 
227- **`_shared/frameworks/largest-leak-first.md`** — rank funnel steps by **absolute people lost**, not percentage drop. A 10% drop on 10,000 visitors (1,000 lost) outranks a 50% drop on 100 visitors (50 lost) by 20×. Compute `absolute_loss_per_step = step_in - step_out` first; only sort by percentage as a secondary view. This often inverts the priority order.
228 
229- **`_shared/frameworks/percentile-framing.md`** — replace "your trial-to-paid CVR is low" with "your trial-to-paid CVR is 11%, at p25 in the OpenView B2B SaaS distribution (p50=14%, p75=22%) — meaningful headroom to median." Use the bands in `_shared/benchmarks/baselines.json`:
230 - All sites desktop: p50 = 3.82% CVR
231 - All sites mobile: p50 = 1.32% CVR (~3× desktop gap)
232 - B2B SaaS pricing page: p50 = 3.8% CVR (well-optimized: p75 = 8–12%)
233 - Ecommerce checkout fields: p50 = 11.3 fields (Baymard optimum = 8)
234 
235- **`_shared/frameworks/preflight-checklist.md`** — confirm time range and traffic volume *before* the report. Funnel diagnostics on <500 sessions are noise, not signal — flag rather than pretend the percentages are meaningful.
236 
237- **`_shared/benchmarks/baselines.json`** — full vertical baselines library. Cite the source on every comparison ("Aggregated Statsig/Eppo/FirstMark 2023-2024 reports").
238 
239The existing benchmark table in this SKILL.md (Poor/OK/Good/Excellent) is a coarse heuristic. Prefer percentile-band framing from the baselines library when the vertical-stage-metric combination is present there.
240 

Discussion

Alternatives

/ar:ar-status — Experiment DashboardShow experiment dashboard with results, active loops, and progress. Use when the user runs /ar:ar-status or asks how an autoresearch experiment is going.Data & AI · MITAnalytics dashboardTurn a LinkedIn Analytics export into an interactive dark-themed React dashboard plus a written strategic analysis with 5 data-backed content recommendations. Reads every sheet in the export, builds charts for engagement trend, follower growth, post performance scatter, day-of-week heatmap, and audience breakdown. Use this skill whenever the user says "analyse my linkedin", "linkedin analytics", "build my dashboard", "review my performance", or uploads a LinkedIn Analytics export file. Requires the user's LinkedIn Analytics export (xlsx) as input.Creator · MITEarnings Preview SkillGenerate a pre-earnings briefing for any stock using Yahoo Finance data. Use this skill whenever the user wants to prepare for an upcoming earnings report, understand what analysts expect, review a company's beat/miss track record, or get a quick overview before an earnings call. Triggers include: "earnings preview for AAPL", "what to expect from TSLA earnings", MSFT reports next week", "earnings preview", "pre-earnings analysis", what are analysts expecting for NVDA", "earnings estimates for", will GOOGL beat earnings", "earnings beat/miss history", upcoming earnings", "before earnings", "earnings setup", consensus estimates", "earnings whisper", "EPS expectations", what's the street expecting", "earnings season preview", any mention of preparing for or previewing an earnings report, or any request to understand expectations ahead of a company's earnings date. Always use this skill when the user mentions a ticker in context of upcoming earnings, even if they don't say "preview" explicitly. · MITBenchmark checklistVet a perf measurement (limiter, tuning, limits, errors, repeatability, relevance, and whether the work happened) before you report or act on it. Use when you run a benchmark or report a speedup or regression you measured.Data & AI · MIT