Back to work
Supertails2025Live in production

Knowing what each customer actually cares about.

A scoring system that turns raw behaviour into a normalized affinity for every customer, across pet type, category, sub-category, and brand.

Affinity scoringPersonalizationSubscription pet care
Business problem

Teams across Supertails were personalizing blind, with no shared read on what each customer actually cared about.

Key decision

Behaviour is not preference. The win was turning raw events into a weighted, normalized score for what each customer actually cares about, at every level of the catalog.

What changed

I built a multi-level affinity layer scoring preference across pet type, category, sub-category, and brand, time-decayed and intent-weighted.

Takeaway

Personalization is a problem of understanding the customer before it is a model problem. Get the customer read right and every team downstream benefits.

Want the implementation details?

Open the full architecture, modeling, validation and lessons.