Signal-cue ontologySocial signals plotted on an isometric plane, each with the behavioral cues it maps to fanned out around it, and the cues that several signals share sitting between them.Hesitation6 cuesConfusion6 cuesEngagement6 cues

Our Approach

Understanding human behavior is not a recognition problem. It is an interpretation problem.

We don't start with AI. We start with people.

Understanding people’s behavior is one of the hardest parts of human interaction. . Human behaviour is expressed through multiple channels, shaped by personality, context and culture, and often difficult even for people to explain. A pause can signal hesitation, uncertainty, thoughtfulness, or simply the way someone speaks. A change in tone can reflect frustration, excitement, fatigue, or nothing particularly meaningful at all. For AI to understand people, it first needs a rigorous way of representing this complexity.

Our technology follows the research.

That is why our research starts with behavioural science. Before we ask a model to detect a social signal, we need to understand what that signal actually means, how it manifests in observable behaviour, and where it becomes difficult to distinguish from something else. We build these concepts into a behavioural ontology, connecting higher-level social signals to the cues through which they can be expressed, while deliberately avoiding rigid rules that assume the same behaviour always carries the same meaning. Our current ontology spans more than 100 behavioural cues, and it continues to evolve as our research expands.

Where people disagree, we do not automatically treat that disagreement as noise, but consider it as informative uncertainty telling us something important about the complexity and ambiguity of behaviour we are trying to model.

Disagreement as informative uncertainty.

The same behavioural cue can support several plausible interpretations, and different people can reasonably perceive the same moment differently. Our annotation and modelling approaches therefore preserve that uncertainty rather than forcing every observation into a single definitive label. In fact, experts establish the conceptual ground truth, which is not a monolithic description of the observed behavior; rather, it contains all the various nuances, interpretations and disagreement that naturally emerge when behaviour is observed. Therefore, where people disagree, we do not automatically treat that disagreement as noise, but consider it as informative uncertainty telling us something important about the complexity and ambiguity of behaviour we are trying to model.

This also changes how we think about building models. More data is not automatically the answer to every research problem. Some signals become easier to detect with greater volume, while others expose limitations in the way the behaviour has been represented or require a fundamentally different approach to the underlying data. We therefore use failure and disagreement as research inputs, asking not only whether a model got something wrong, but what the failure tells us about the behaviour, its representation, or the assumptions behind the model.

Technology changes. The way we think about people doesn't.

Technology follows from that research rather than the other way around. As our understanding of behaviour develops, so does the way we collect data, design annotations, evaluate models and represent uncertainty. The specific signals, modalities and architectures will continue to change, but the underlying principle remains the same: if we want machines to understand people, we have to build intelligence around the way people actually behave, rather than asking people to behave in ways that machines already know how to understand.

In our own words

Our approach
Leveraging behavioral science
Why signals are ambiguous