Loupe case study
What this is for: Tell a reader what to read, in what order, and how long it takes. Date: 2026-09-20 Status: Final
Loupe is a user analytics product for teams that ship a GenAI assistant. This folder is the record of the product work behind it, in the order it was done. Every document is dated and carries a status. Numbers in the trends report are reproducible from the committed aggregates by running uv run python scripts/check_report.py.
If you have ten minutes
- Opportunity brief, 3 minutes. The problem, who has it, and the wedge.
- Trends report, 5 minutes. What 3.2 million real conversations say, and what a product owner should do about it.
- Retrospective, 2 minutes. What shipped, what was cut, what was wrong.
If you have thirty minutes, add
- Metrics framework. Definitions, biases, and how the friction proxies were validated.
- PRD. Requirements, success metrics, privacy, and the decision log.
- User research. Public evidence on the problem and the assumptions register that would be tested first; no interviews were possible in the v1 window.
The rest
- Roadmap with the cut list.
- Dashboard design.
- Strategy memo for a company building an AI assistant.
Research kits
The interview guide, outreach message, friction labeling guide, and usability test script are under research/. Participant files contain identifiers like P1, never names.
Data and caveats
The demonstration data is WildChat-4.8M (ODC-By 1.0). It came from a free public chatbot the researchers hosted, not from ChatGPT's own product, so findings describe that population. "Pseudo-users" are a hash of network and browser headers, not accounts. Both caveats are repeated wherever numbers appear.