Module 9 · Product Management Fundamentals
Product specs and success metrics
Write a product spec that engineers, designers and the business can work from (problem, users, evidence, scope, non-goals, success metrics with baselines, guardrails and the launch plan) for Paystream's top priority.
About 20 minutes
The problem
Verification help at agents is at the top of the roadmap. The engineers ask: what exactly are we building? The designer asks: for whom, and what's the flow? Compliance asks: what are we changing about identity checks? The CEO asks: how will we know it worked?
A product spec (often called a PRD, product requirements document) answers all of them in one place, before work starts, so that everyone builds the same thing for the same reason.
The concept
What a good spec contains
| Section | Answers |
|---|---|
| Problem | what's wrong, for whom, with evidence |
| Users | the segment and their job to be done |
| Goal and success metrics | the outcome, measured, with a baseline and a target |
| Guardrails | what must not get worse |
| Scope | what's in the first version |
| Non-goals | what's deliberately out |
| Launch and measurement plan | how it's rolled out and evaluated (a holdout, lesson 8) |
| Open questions | what isn't known yet |
Baselines from data
A target without a baseline is a guess. Measure the current value first, then set a realistic target.
Example
Baselines for verification help, from the signup data:
import pandas as pd
base = "https://academy.cloudtechanalytics.com/datasets/product/"
users = pd.read_csv(base + "users.csv")
feedback = pd.read_csv(base + "feedback.csv")
traders = users[(users["segment"] == "Market trader") & (users["phone_verified"] == 1)]
print(f"Traders who verified their phone: {len(traders)} in 8 weeks")
print(f"Their BVN verification rate: {traders['bvn_verified'].mean():.1%}")
print((traders.groupby("channel")["bvn_verified"].mean() * 100).round(1).to_string())
bvn = feedback[feedback["theme"] == "BVN verification problems"]
print(f"Verification feedback items: {len(bvn)}, of which app reviews average {bvn['rating'].mean():.2f} stars")Traders who verified their phone: 2555 in 8 weeks
Their BVN verification rate: 57.3%
channel
Agent sign-up 69.1
Instagram ad 35.8
Play Store search 47.7
Referral 53.3
Verification feedback items: 249, of which app reviews average 1.86 starsTraders who signed up with an agent already verify far more often than those who signed up alone. That's evidence that helping at the agent works, and it suggests a realistic target: bring other traders closer to the agent-assisted rate. A spec that only said "improve verification" would give the team nothing to aim at.
Walkthrough
- Run the cell. Set a target for trader BVN verification and justify it with the channel numbers.
- What guardrail matters most for an identity feature? (Think about fraud and compliance.)
- Decide the launch plan: which traders get it first, and what's the holdout?
- Write the spec (the task below).
Practice
Practice
What's the BVN verification rate for traders who signed up through an agent? As a percentage, one decimal place.
Task
10 minWrite the spec for verification help at agents, with lines starting Problem:, Users:, Success metric: (with a baseline and target), Guardrail:, Scope:, Non-goals: and Launch: (including a holdout).
Your work is checked for
- A Problem line with evidence (a number)
- A Users line
- A Success metric line with baseline and target
- A Guardrail line
- Scope and Non-goals lines
- A Launch line with a holdout
Check your understanding
Answer every question to check.