A news app we sat with had a north star called home_feed_open. It was honest in 2021. In 2024 the home was a player, then a briefing, then a widget. Each time, someone patched a mapping table. Each time, a quarter compared badly to a quarter that had meant a different gesture. The product had not lost readers so much as lost a noun.
Stream Kernelcore asks for a north star that can be said as a kept promise: “a registered person completed one saved article in a week”, “a rider requested a trip that was fulfilled”. Screens may come and go. The promise is what you would still owe the customer after the designers win.
Two tests we use in class
First, the redesign test: if every view is renamed tomorrow, can the metric still be computed from events that describe facts? Second, the inheritance test: can a new analyst find the definition without a hallway conversation? If either fails, you have a slogan, not a star.
Vanity is not the same as ambition. Ambition can be inherited. Vanity needs the original author in the room.
Quality events from the Signal Atlas — time_to_first_value, error_shown — often make better companions than extra “engagement” counts. A north star that rises while errors rise is a story you must tell, not a dashboard you should celebrate. Experiment Readout Craft spends a session on this pairing: the star and the guardrail that would make you unship.
If your current star is a screen, do not rename it in a panic. Dual-write the promise event, date the cutover, and present a break. The journal’s piece on cohorts after store updates is the sibling of this advice. History is allowed to have joints. It is not allowed to pretend it does not.