Product analytics instrumentation for PMs

Kevin Lee
By
Kevin Lee
Kevin Lee
Kevin Lee
Kevin is a Co-Founder of ProductHQ. He has worked as a VC at Pear Ventures where he invested in and partnered with…
More About Kevin →
×

Product analytics instrumentation is the work of deciding what product behavior to record, how to record it, and how to keep that data useful over time. I treat it as part of product design rather than a tracking task I hand off at the end. When the events are tied to real decisions, analytics can help me see where people encounter friction, which workflows they use, and what I still need to learn. When the event plan is vague, a polished dashboard can make uncertainty harder to notice.

I start with the product questions I expect to revisit. I do not begin by asking for every click. I ask what decision the team may need to make, what behavior would inform it, and what evidence would still be incomplete. A team considering an onboarding change may need to understand account creation, the first meaningful action, and where people stop. A team investigating a reporting workflow may need to distinguish opening a report from successfully using it. The question determines the useful behavior.

Define the behavior before the event name

I write an event specification in plain language before choosing a technical name. Each event should describe something observable, such as “project created” or “filter applied,” rather than an internal implementation detail such as “button 17 clicked.” I record the trigger, the user or account context, the properties that explain meaningful variation, and the situations in which the event should not fire.

My basic event brief includes:

  1. The product question the event supports.
  2. The user action or system outcome being represented.
  3. The event name and a short definition.
  4. Required and optional properties, with allowed values where helpful.
  5. The actor, account, workspace, or object identifiers needed for analysis.
  6. Ownership, implementation location, and a review date.

This forces me to separate a behavior from a screen. A “checkout completed” event should remain understandable if the interface changes. If I need to know whether a person used a shortcut, I can record that as a property or a separate behavior when it changes the decision I am making. I avoid properties that merely copy every visible label into a database.

Create a taxonomy people can understand

I use consistent naming and definitions so that another person can find and interpret an event without asking its original author. The exact convention depends on the analytics system, but consistency matters more than a clever format. I keep verbs and nouns predictable, document capitalization, and distinguish events from properties. I also decide how to represent repeated actions, failures, and outcomes.

I try to establish a small set of shared concepts: an active account, a new project, an invitation, a completed workflow, or a retained user. These definitions need an owner. If “activated” means one action to one team and three actions to another, a company-wide dashboard may hide the disagreement rather than resolve it. I link the metric definition to the event plan and note exceptions instead of pretending the taxonomy is universal.

I also think about identity deliberately. A person may use more than one device, belong to several workspaces, or change roles. I ask whether the question is about a person, account, workspace, or object and choose identifiers accordingly. I avoid treating an identifier as a person’s identity when the product context does not support that conclusion.

Build privacy and restraint into the plan

I collect the least data needed for the decision. I do not place names, message contents, free-form notes, credentials, or other sensitive values into analytics properties just because a tool accepts them. If a property could expose private information, I remove it, aggregate it, or use a controlled category instead. I check the product’s privacy commitments and the relevant legal or security review path before implementation.

I explain to partners why an event is needed and what it will not capture. Clear boundaries make the instrumentation easier to review. They also prevent the analytics layer from becoming an accidental archive of everything people do. If consent, regional rules, retention, or deletion requirements affect the design, I include those constraints in the brief rather than adding them after launch.

Validate the data like a product surface

Before I rely on an event, I test the happy path, empty state, error path, retries, permissions, and relevant platform differences. I check that the event fires once when it should, does not fire when it should not, and carries properties with the expected type and value. I inspect the live payload when possible instead of trusting only the implementation ticket.

I use a small validation checklist:

  • Does the event definition match the behavior a customer actually experiences?
  • Can I identify the actor and object at the level the question requires?
  • Are missing, duplicate, delayed, or out-of-order events possible?
  • Do property values remain stable enough to compare?
  • Is the event documented where analysts and engineers will find it?
  • Who will notice if the product changes and the event becomes wrong?

I label known limitations. A client-side event may be affected by connectivity or blocked scripts; a server-side event may arrive without the interaction context I need. Neither is automatically the right source. I choose the source that best represents the question and record what it cannot tell me.

Use instrumentation to support learning

After release, I compare the data with other evidence. A funnel can show that people stop between two steps, but it may not explain why. I pair behavioral data with support conversations, qualitative research, usability testing, or direct observation when the decision needs context. I do not use a dashboard to turn an untested interpretation into a fact.

I review event usage periodically. Unused events, conflicting definitions, and dashboards with no decision owner create maintenance cost. When a workflow changes, I decide whether to preserve continuity, version the event, or retire it. I note the change so a future reader does not compare incompatible periods without realizing it.

My bottom line is that good product analytics instrumentation makes a specific question easier to answer without pretending the data is complete. I define behavior in customer terms, collect only what I need, validate the implementation, and keep the limitations visible. The result is not more tracking for its own sake. It is a shared, reviewable foundation for product judgment.

Next step

For a broader foundation, I use the product analytics guide for beginners to connect instrumentation with metrics and decisions. I also use experiment design for product managers when the question calls for a controlled comparison. The Product Manager Certification is a commercial Product HQ resource for structured product practice, and the Product HQ newsletter shares practical lessons.

Kevin Lee
Kevin Lee
Kevin is a Co-Founder of ProductHQ. He has worked as a VC at Pear Ventures where he invested in and partnered with early-stage founders on product & growth to help them build the foundations of category-defining companies. He has worked as a Product Manager at AltSchool (backed by Andreessen Horowitz, Founders Fund, First Round Capital, Mark Zuckerberg, John Doerr and other exceptional investors). Previously, he was a Senior Product Manager at Kabam (acquired by NetMarble and Fox for a combined $1bn+), where he worked on products through all lifecycles in San Francisco, Vancouver, and Beijing and helped grow one of the company’s products to become the third largest revenue generating product in the company portfolio. In a former life, he worked in Technology Investment Banking at Merrill Lynch. He is also the author / co-author on 10+ gaming patents.