mcpField
D
data

data

github.com/iankikuData & databases1842 installsUpdated 13w ago
Repository

About data

data is an analytics and intelligence skill for teams choosing product metrics and designing event tracking. It provides guidance on metric hierarchies, SQL analysis, dashboards, and pipeline defaults.

Key features

  1. 01Define a hierarchy of product metrics
  2. 02Write SQL for retention and funnels
  3. 03Design consistent event tracking
  4. 04Apply dashboard design rules
  5. 05Choose data pipeline layers

Use cases

  1. 01Select a weekly north-star metric
  2. 02Analyze cohort retention or conversion funnels
  3. 03Specify event names and properties
  4. 04Structure a focused metrics dashboard

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/iankiku/forwward-teams --skill data

After installing, type/datain Claude Code to confirm it loaded.

Details

From the project README

Data — Analytics & Intelligence

Measure what matters. Every metric should drive a decision. If it doesn't, stop tracking it.

Metric Hierarchy

LevelMetricCadence
North Star1 metric that defines success (e.g., WAU, MRR)Weekly
Health3-5 metrics that predict north star (retention, activation, NPS)Weekly
FeaturePer-feature usage, conversion, time-to-valuePer release
DebugGranular events for troubleshootingOn-demand

Rules:

  • North star is singular. Two north stars = zero north stars.
  • Vanity metrics (page views, total signups) are not health metrics.
  • Every feature ships with tracking. No "we'll add analytics later."

SQL Patterns

Cohort Retention
SELECT
  DATE_TRUNC('week', u.created_at) AS cohort_week,
  DATE_TRUNC('week', e.created_at) AS activity_week,
  COUNT(DISTINCT e.user_id) AS active_users
FROM users u
JOIN events e ON e.user_id = u.id
GROUP BY 1, 2
ORDER BY 1, 2;
Funnel Analysis
WITH steps AS (
  SELECT user_id,
    MAX(CASE WHEN event = 'signup' THEN 1 END) AS step_1,
    MAX(CASE WHEN event = 'onboard_complete' THEN 1 END) AS step_2,
    MAX(CASE WHEN event = 'first_action' THEN 1 END) AS step_3,
    MAX(CASE WHEN event = 'paid' THEN 1 END) AS step_4
  FROM events
  WHERE created_at > NOW() - INTERVAL '30 days'
  GROUP BY user_id
)
SELECT
  COUNT(*) AS total,
  SUM(step_1) AS signup,
  SUM(step_2) AS onboarded,
  SUM(step_3) AS activated,
  SUM(step_4) AS converted
FROM steps;
Rolling Averages
SELECT
  date,
  value,
  AVG(value) OVER (ORDER BY date ROWS BETWEEN 6 PRECEDING AND CURRENT ROW) AS rolling_7d
FROM daily_metrics;

Event Tracking Design

Every event needs:

FieldExample
event_namebutton_clicked, page_viewed, feature_used
user_idAuthenticated user
anonymous_idPre-auth (cookie/device)
timestampISO 8601, UTC always
properties{ page: "/pricing", plan: "pro" }

Naming convention: noun_verb — form_submitted, file_uploaded, subscription_cancelled

Never: click, event1, trackThis, misc

Dashboard Rules

  • One question per dashboard. "How is acquisition?" not "Everything."
  • Top-left = most important metric. Eye lands there first.
  • Comparison always. This week vs last week. This month vs last month.
  • No pie charts. Use bar charts. Humans can't compare angles.
  • Annotate changes. "Launched feature X" on the timeline.

Data Pipeline Defaults

LayerToolPurpose
CollectionPostHog, Segment, or customEvent ingestion
StoragePostgres or BigQueryQueryable warehouse
Transformdbt or SQL viewsBusiness logic layer
VisualizationMetabase, Grafana, or PostHogDashboards

Keep it simple. You don't need Kafka until you have 10M events/day.

Comments

Markdown supported