Persona Detection

Derived persona affinity from purchase history. Same shopper, persona-conditioned ranking changes downstream search and recommendations.

Persona Detection in production โ€” screenshot from the ๐Ÿ›’ E-commerce demo
๐Ÿ›’ E-commerce_predictE-commerce
Production anchorDerived persona affinity from purchase history โ€” same shopper, persona-conditioned ranking changes downstream search and recommendations.

The problem

Personas matter for product experience but they are rarely well-defined operationally. Marketing has personas in a slide deck ("Sara the small-business owner", "Mike the dad with young kids"); the product has personas in a different slide deck; engineering does not have personas at all. The shopper's actual behavior pattern โ€” which is the only definition that matters at decision time โ€” does not surface in any system that can use it for ranking.

Persona detection makes the behavioral persona queryable. Given a customer's purchase history, what persona do they most resemble? The answer drives downstream ranking, recommendations, and content selection at decision time, not at slide-deck creation time.

How it works

_predict persona on each customer conditioned on their purchase, browse, and engagement history. The persona attribute is defined by the team (small-business-owner, dad-with-young-kids, etc.); the system learns which behavioral patterns predict which persona from the historical assignments. Once learned, new shoppers get a predicted persona from their first few signals.

The downstream applications consume the persona prediction as a feature in their queries. Smart Search re-ranks by predicted persona; Bought Together adjusts cross-sell by persona; the For You feed pulls products with high persona affinity. The persona is not a static label; it shifts as the shopper's behavior shifts.

{
  "from": "customer_purchases",
  "where": {
    "customer_id": "CUST-04812"
  },
  "predict": "persona",
  "select": ["$p", "$why", "persona"],
  "limit": 3
}

For the full architecture, see the technology overview. For the broader narrative across multiple use cases, read The Predictive Application.

See it live

This use case runs in the ๐Ÿ›’ E-commerce demo today. Click through to the live application and inspect the queries that produce the result. Source is on GitHub under Apache 2.0.

Open the live demo โ†’

Frequently asked

Where do the persona definitions come from?

From your team. The team defines the persona taxonomy (5-12 personas is typical); the system learns which behaviors predict which persona from historical assignments. Personas can be assigned manually at first; the system bootstraps from those and refines via override-as-training.

What if a shopper does not fit any persona well?

Low confidence on the top-1 persona. The system surfaces it as ambiguous โ€” the application defaults to baseline ranking (no persona conditioning) rather than guessing. As more signal accumulates, the prediction sharpens.

Can personas drift over time?

Yes. The prediction reflects recent behavior more strongly than old behavior (in proportion to volume). A shopper whose family situation changes (new baby, kids growing up) will shift personas as their purchase pattern shifts. The prediction surfaces the change.

How does this compare to traditional segmentation?

Segmentation defines groups; persona detection assigns individuals to those groups based on behavioral fit. The two are complementary โ€” segmentation creates the categories, persona detection routes individuals into them at decision time.

Is this compatible with privacy regulations (GDPR, CCPA)?

Yes. Personas are derived from behavioral data the customer has already produced; no separate profiling beyond what the customer's own actions show. Deletion of the customer's data removes their persona prediction immediately โ€” the system has no persistent model that retains the inference.