Metrics Present logo

Metrics Present

Community
nemanli
metrics-present

Turns metric results into stakeholder-ready output — board slide, exec email, retro deck, design impact story, stakeholder defence, "how do I explain this to the CPO/board?". Translates design findings into business language, frames counter-metrics. Skip for picking metrics (use metrics-ux), for diagnosing a movement (use metrics-diagnose), for HEART definitions (use metrics-basics).

Overview

Publishernemanli
Repositoryux-metrics-skills
Skill namemetrics-present
Stars
3
Forks
0
Bundled files
2
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 2 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by nemanli on GitHub. Read the source before you install it.

Installation

Install the Metrics Present AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/nemanli/ux-metrics-skills/tree/main/skills/metrics-present
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/nemanli/ux-metrics-skills.git /tmp/ux-metrics-skills
mkdir -p .claude/skills
cp -r /tmp/ux-metrics-skills/skills/metrics-present .claude/skills/metrics-present
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Metrics Present in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Metrics Present on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Metrics Present is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Overview

Turns metric results into stakeholder-ready output. Three jobs: (1) pick the format for the audience and channel (email, board slide, retro deck), (2) translate design vocabulary into business language, (3) frame the result honestly — primary metric paired with a counter-metric, sample size and time window stated, failures and limits surfaced rather than buried.

This skill is editorial, not analytical. It assumes the numbers are already validated. If the user is still asking "is this real?" or "why did it move?", redirect to metrics-diagnose first. If the user has no numbers yet, redirect to metrics-ux.

The reference materials carry the detail: templates.md for the three output formats, business-language.md for design-to-business translation pairs, counter-metric pairings, and the Spool / Weinschenk framing patterns.

When to Use

Use this skill when a designer or PM has results and needs to communicate them — phrased differently by seniority but matching the same job-to-be-done:

Designer levelTypical phrasing that should trigger this skill
Junior"PM asked for a writeup of the redesign results, where do I start?" / "How do I share these numbers with the team?"
Middle"I have the numbers, how do I write the email to the stakeholders?" / "What goes on the board slide for this feature?"
Senior"I need to defend this design to the CPO with data" / "How do I translate UX findings into business language for finance?"
Lead"We're presenting the quarterly design impact story — what's the structure?" / "How do I frame a mixed result (one metric up, one flat) honestly?"

Cross-cutting triggers (any seniority):

  • Has results and asks for the format (email, slide, deck, retro).
  • Asks how to translate UX or design language into business / executive vocabulary.
  • Asks how to frame a counter-metric, a missed target, or a partial win.
  • Mentions a specific audience: PM, eng lead, CPO, CFO, board, retro, quarterly review.
  • Is preparing a design impact story for portfolio, performance review, or promotion.

Skip this skill when:

  • The user is picking which metrics to track → use metrics-ux.
  • The user is writing a pre-launch measurement plan or decision rule → use metrics-spec.
  • The user is designing the events/tracking plan that captures the metric → use metrics-instrumentation.
  • The user is figuring out why a number moved → use metrics-diagnose.
  • The user is stress-testing an incoming claim or self-reviewing the draft before publishing → use metrics-review.
  • The question is about a HEART definition or measurement philosophy → use metrics-basics.
  • The metric is monetization-driven (revenue, MRR, LTV) → out of scope for v1.

Process

Step 1 — Detect mode

Read the user's prompt and pick one mode:

ModeSignalAction
DirectAsks for a specific format ("write the board slide", "draft the email", "what's the retro structure?")Skip questionnaire. Open templates.md and apply the matching format.
SpecificHas results AND a clear audience ("results for the CPO defence", "quarterly review for the board")Skip questionnaire. Pick format from audience, translate, draft.
VagueHas results but no clear audience or channel ("I have the numbers, how do I share them?")Run hybrid questionnaire (Step 2).

Step 2 — Hybrid questionnaire (vague mode only)

Four context anchors, full version in ../metrics-basics/references/context-questions.md. For this skill, the anchors map slightly differently:

  1. SCOPE — what was measured, what numbers are in hand
  2. STAGE — partial result (still rolling out) or full result (complete)
  3. AUDIENCE — who will read it (single PM / leadership / board / cross-functional team / portfolio)
  4. DATA — what supporting data is available (counter-metric ready? sample size known? time window stated?)

For each anchor, mark present (clear in prompt) or missing. Ask only for missing anchors:

  • 0–1 missing → ask in one sentence
  • 2–3 missing → ask in one numbered list
  • 4 missing → use the full questionnaire

Never re-ask what the user already provided. Maximum 4 questions per session.

When asking, follow the "How to ask" section in context-questions.md — inline numbered list for closed-choice questions (audience, format, stage).

The most common gap in this skill is AUDIENCE. The same numbers go into very different formats for a PM Slack thread vs. a board slide. Always confirm the audience before drafting.

Step 3 — Pick the format

Match audience and channel to the output format. Full structures and filled examples in templates.md.

Audience / channelFormatWhy
Single decision-maker (PM, eng lead, CFO) over inline messageStakeholder emailOne paragraph + numbers + ask. Optimised for mobile and quick decisions.
Exec, board, quarterly reviewBoard slideHeadline + 3 supporting + 1 counter-metric. The headline must work alone.
Cross-functional team retroRetro deckBefore/after + what worked + what didn't + what we'd do differently. "What didn't" is non-negotiable.
Slack DM, mobile-first exec, tight contextCompressed email (1–2 sentences)Same headline + numbers + ask, shorter form. See templates.md, Cross-cutting rules.

When two formats fit, pick the shorter one. Adding length is easy; cutting it on demand is what burns time.

Performance review / portfolio / promotion case uses the retro structure with a different lens: design-decision attribution rather than team learning. Same shape, different emphasis — keep "what didn't" but frame it as "what I learned" rather than "what we'd do differently".

Step 4 — Translate to business language (when needed)

Email and board slide → translate. Retro deck → keep design vocabulary; the team needs traceability to the craft.

Use business-language.md for the translation table (18 design → business pairs) and the three phrasing patterns:

  • Pattern 1 — Problem → cost → fix → recovered value (Spool framing). Best when there is a clear user frustration and a measurable cost.
  • Pattern 2 — Investment → recoup window (Weinschenk framing). Best when justifying a design investment to finance or leadership.
  • Pattern 3 — Primary + counter (Mixpanel / Amplitude). Best for any honest result; mandatory for board slides.

Two anchors from business-language.md:

  • Outcome over output (Cagan, Inspired) — translate "we shipped X" into "X changed for users / the business by Y".
  • Inverted pyramid (NN/g) — lead with the outcome; supporting detail comes after.

Step 5 — Frame counter-metric

Every output that goes to leadership includes at least one counter-metric. Pairings are in business-language.md. The counter-metric is the one you would be embarrassed to show if it had moved the wrong way; if you can't think of one, the framing is incomplete.

If the counter-metric did move the wrong way, surface it. Hiding it costs more credibility than the bad number itself.

Step 6 — Draft and verify

Draft the output using the format structure. Before sending, check:

  • Headline carries the load. If the slide were photographed without context, the headline still tells the story.
  • Sample size and time window stated. No primary metric without n and the period it covers.
  • Counter-metric included. Even if it held flat, name it.
  • Failures surfaced. What didn't work is in the draft, not omitted.
  • Length matches context. Mobile reader → compress. Quarterly review → expand.

End every draft with: "Does this fit your audience, or should we adjust the framing?"

Example

User prompt (specific mode): "I redesigned the configuration tool for our internal authoring app. NN/g-style task-time study, 4 tasks: original design 236s, new design 69s — a ~70% reduction. Subjective satisfaction scores also improved. Quarterly review slide for the CPO tomorrow. How do I frame this?"

This example uses the published Macromedia Flash redesign case (Nielsen / NN/g, 2001 — Usability Metrics) as the underlying data.

Mode detection: Specific — has numbers, has audience (CPO, quarterly review).

Anchor parse:

  • SCOPE: present (configuration tool redesign, 4-task study)
  • STAGE: present (study complete)
  • AUDIENCE: present (CPO, quarterly review = board slide format)
  • DATA: present (before/after task time, satisfaction scores), but sample size missing — flag this back to the user before the slide ships.

Format pick: Board slide (templates.md, Format 2). Headline-first, primary + supporting + counter-metric, business-language translation.

Translation:

  • "Task time 236s → 69s" → keep the time figure but lead with the productivity outcome (B2B tool → labour cost saved per session, see business-language.md).
  • "Satisfaction scores improved" → supporting Happiness metric, paired but not headline.
  • No counter-metric reported in the source. Flag this honestly on the slide rather than inventing one.

Draft:

Configuration-tool redesign cut task time by ~70% across four core tasks

Primary:      Time on task (4-task set): 236s → 69s   (≈70% reduction)
Supporting:   Subjective satisfaction:   improved post-redesign
              [Source: NN/g published usability-metrics study]
Counter:      Error rate / completion rate not reported in source —
              before broader rollout, recommend tracking these to confirm
              speed gain didn't come at the cost of accuracy

Implication: at this team's session volume, ~70% time saving translates
to ~N hours/month of recovered productivity, assuming the four tasks
are representative of daily use. (Assumption to confirm with usage logs.)

Verify question: "Does this fit a CPO audience, or should we tighten the language for board-level brevity?"

Notes the agent should add for the user:

  • Sample size is missing from the source data. Before the slide goes to the CPO, ask: how many participants? An n=5 result lands very differently than n=50. The slide should state the sample size; if unknown, replace with "small-sample usability study, before broader validation."
  • No counter-metric in the original case. Don't invent one — flag the gap on the slide. A real-world version would add error-rate or completion-rate tracking to confirm that faster ≠ sloppier (see business-language.md, Counter-metric framing).
  • Productivity translation is an estimate. "~N hours/month recovered" needs a stated assumption (sessions per day × people × task share). Show the math inline if asked; don't bury it.
  • The retro version of this same data would expand the supporting and counter sections into separate slides, including "what didn't work" (which tasks, if any, didn't improve).
  • For an email version, compress to: "Configuration tool redesign: task time 236s → 69s across 4 tasks (NN/g-style usability study). Asking for sign-off to roll out broader; we'll track error rate during rollout to confirm the gain holds." (See templates.md, Cross-cutting rules.)

Common Pitfalls

These apply across all three formats. Each is also covered in the references for specific cases.

  • Burying the lead. Background, methodology, or caveats before the headline. The first sentence (or slide headline) must carry the story alone — inverted-pyramid structure (NN/g). Detailed in templates.md.
  • Missing counter-metric. Reporting only the win. Stakeholders read single-metric wins as advocacy, not analysis. Pair every primary with a counter — see business-language.md, Counter-metric framing.
  • Design jargon for an exec audience. "Improved usability", "user friction", "cleaner UI" don't map to a budget line. Translate to support cost, drop-off, error rate. Translation table in business-language.md.
  • Numbers without sample size or time window. "Completion is up 15%" with no n and no period is a guess. Always state both.
  • Estimates without assumptions. A revenue figure with no stated assumption invites the wrong question ("how did you get that?") instead of the right one ("what should we do next?"). Show the assumption inline.
  • Vanity counter-metric. "Engagement up too" is not a guardrail. The counter-metric is the one you would be embarrassed to show if it had moved the wrong way (business-language.md).
  • Retro that reads like a launch announcement. Retros are for learning, not selling. If every slide says "we won," the team learns nothing — see templates.md, Format 3.
  • Naming analytics tools unprompted. Do not name specific tools (Mixpanel, Amplitude, PostHog, Heap, GA4, etc.) unless the user has already named one. Ask first: "What tool is the data coming from?"

Red Flags

When the user's situation triggers any of these, do not draft the output. Refuse or redirect.

  • Dishonest framing requested. "Make it look like a clear win" / "downplay the retention drop" / "leave out the counter-metric so it lands cleaner". Refuse. Hiding bad numbers costs more credibility than the numbers themselves, and the bad news will surface from someone else (Sharon, It's Our Research, Ch. 5). Offer to frame the mixed result honestly instead.
  • Single-metric victory claim. User wants a slide that reports only the win, no counter. Refuse the framing — every primary metric needs a guardrail. If there genuinely is no relevant counter-metric, say so explicitly on the slide rather than implying one exists.
  • Numbers not yet validated. User has not yet confirmed whether the change is signal or noise. Redirect to metrics-diagnose before drafting any output. Drafting first and validating later wastes a draft and risks shipping the wrong story.
  • No data, planning the measurement. User is at the design phase, asking how they will eventually present results. Redirect to metrics-ux to plan the measurement; come back here once results exist.
  • Out-of-scope (revenue, MRR, monetization). Conversion (free → paid), revenue churn, LTV are deferred to metrics-product v2. Tell the user explicitly.
  • Audience mismatch unresolved. User insists on one format ("just give me the slide") when the audience genuinely needs a different one (a CFO over Slack ≠ a board deck). Surface the mismatch; let the user choose, but flag the cost of the wrong format.
  • Wrong skill. If the user is picking metrics → metrics-ux. If writing the pre-launch plan / decision rule → metrics-spec. If designing the tracking plan → metrics-instrumentation. If diagnosing a movement → metrics-diagnose. If stress-testing the claim before publishing → metrics-review. If asking for HEART definitions → metrics-basics.

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Metrics Present AI skill do?

Turns metric results into stakeholder-ready output — board slide, exec email, retro deck, design impact story, stakeholder defence, "how do I explain this to the CPO/board?". Translates design findings into business language, frames counter-metrics. Skip for picking metrics (use metrics-ux), for diagnosing a movement (use metrics-diagnose), for HEART definitions (use metrics-basics).

Why use Metrics Present on TypingMind?

Because you install it once and use it with any model. Metrics Present is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Metrics Present in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/nemanli/ux-metrics-skills/tree/main/skills/metrics-present. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Metrics Present?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Metrics Present?

As many as you like. As long as a model supports skills, you can use Metrics Present with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Metrics Present AI skill free?

Yes. It is published on GitHub by nemanli under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇