Product Analytics and HEART
The morning change window is about to launch. Once it is live, the analytics dashboard will offer forty charts. Which of them will say whether the design worked? Product analytics only helps when you start from what you wanted to achieve, not from whatever the tool happens to count.
The rule
Goal first, then the signal that shows it, then the metric that counts it.
Product analytics records events, things people do in the product, with properties that describe them:
track("change_confirmed", {
minutes_before_cutoff: 18,
plan: "weekly-5",
platform: "android"
});From events you build funnels (Today card viewed → Change tapped → change confirmed), retention (who is still active weeks later) and segments (hybrid workers compared with full-time office workers). Write a tracking plan, listing the events and properties you will need, before launch. Data you did not log cannot be recovered later.
To choose what to measure, many teams use the HEART framework, which came out of Google's user-experience research. It offers five categories of user-centred metrics:
- Happiness: how people feel, from ratings or short surveys.
- Engagement: how often or how deeply people use something.
- Adoption: how many people start using a new feature.
- Retention: how many keep coming back.
- Task success: whether people finish tasks, how quickly, and with how many errors.
For each category you pick, work through Goals → Signals → Metrics. You rarely need all five; choose the ones that match what the feature is for.
The shortcut
For each HEART category, try to write its goal in one sentence. If you cannot, skip the category. For each goal you keep, ask "What would people do if we succeeded?" That is the signal. Count it, and you have the metric.
Adoption
Goal: subscribers who need to change a lunch discover the window. Signal: a first confirmed change. Metric: share of active subscribers who used it within four weeks.
Keep event names in one consistent style, such as object then action, and write down what every property means. If the Android app logs change_confirmed and the iPhone app logs ConfirmChange, the dashboard quietly undercounts, and nobody notices until a decision has been made on bad numbers.
Drills
Answer fast — trust the rule.
In the HEART framework, what does the T stand for?
After launch, the team discovers it never logged when changes were confirmed. Which step was skipped?
For the morning change window, why is time spent in the app a poor metric?
Subscribers who used the change window have better retention. Can you conclude the window caused it?
Remember
- Goal first, then the signal that shows it, then the metric that counts it.
- Shortcut: skip any HEART category whose goal you cannot write in one sentence.
- Trap: tracking whatever is easy to count, and reading correlation as cause.
