Browser.ai

Where a Simulated Person's Motivations Come From

Alexandria Eden
August 1, 2026
13 min read
Where a Simulated Person's Motivations Come From

Suppose you want to know whether your checkout page works for an impatient person. You could find impatient people and watch them use it, which is slow and expensive. Or you could describe impatience precisely enough that a computer can act it out.

That second thing is what cbrowser does. It carries a set of personas β€” simulated users β€” and walks each one through a website, noticing where they would give up. A persona is not a paragraph of description. It is a list of numbers, and this is an account of where those numbers come from.

Two layers: what you are like, and what you want

Every persona has 25 cognitive traits. Each is a dial from 0 to 1. Patience. Curiosity. How much you read before clicking. How well you recover when something interrupts you. Set them differently and you get a different person: patience 0.1 with satisficing 0.9 is someone who takes the first thing that looks close enough and leaves.

Traits describe how someone behaves. They do not describe why. For that there is a second layer β€” values β€” drawn from a model the psychologist Shalom Schwartz published in 1992 and refined for decades since. Ten motivations that show up across nearly every culture studied: security, achievement, tradition, benevolence, self-direction and so on. Alongside them sit three psychological needs from self-determination theory: autonomy, competence, relatedness.

Thirteen numbers, and they matter because persuasion works on motivations, not habits. A scarcity banner works on someone driven by stimulation. An authority badge works on someone driven by security and conformity. If you want to predict which pressure a person feels, you need the second layer.

Which raises the question this post is about: where do those thirteen numbers come from?

Route one: ask

The best answer is the least clever one. Ask.

The persona questionnaire puts ten questions in front of whoever is building the persona, one per Schwartz value. How important is safety and stability to this persona? Four choices, each spelled out in behaviour rather than in the abstract β€” from "Takes risks freely, ignores safety warnings" through to "Prioritizes security over convenience always."

This is not a workaround for lacking a model. It is what the field does. Schwartz's own instruments β€” the Portrait Values Questionnaire, the Schwartz Value Survey β€” work by showing people value statements and asking them to rate how much that sounds like them. Direct self-report is the measurement; everything else is an estimate of it.

So when someone answers, we use the answer. No inference, no correlation, no error term.

Route two: the Big Five

Most personas are not built that way. They are generated from a description, imported, or written by hand in a hurry. For those, nobody answered anything, and the thirteen numbers have to come from somewhere.

The obvious somewhere is personality. There is a large literature relating Big Five traits β€” openness, conscientiousness, extraversion, agreeableness, neuroticism β€” to Schwartz values, and three independent bodies of work agree on its shape: Roccas, Sagiv, Schwartz and Knafo (2002) with 246 participants, Fischer and Boer's three-level meta-analysis (2015) pooling 9,935 people across fourteen countries, and Parks-Leduc, Feldman and Bardi's meta-analysis of sixty studies.

Extraversion predicts hedonism, power, achievement and stimulation. Agreeableness predicts benevolence and universalism, and predicts against power. Openness predicts self-direction and universalism, and against tradition. Conscientiousness predicts achievement and conformity.

So a persona carrying five Big Five scores can have all thirteen values derived through correlations the research actually supports. The questionnaire asks for those five directly β€” they are not computed from the 25 cognitive traits, which matters, because if they were you would have two inferential hops stacked on each other with error compounding across both. One hop: stated personality, published correlation, value.

What is established and what is ours

Of the twenty-five links in that table, eighteen have a direction all three sources agree on. Seven are hypotheses, and they say so in the code, on the row, in plain words. The self-determination needs are inferred across two different frameworks. Neuroticism to security is threat-sensitivity reasoning rather than a reported coefficient. The relatedness links rest on research about people who experience relatedness satisfaction, which is a correlate of the outcome and not of the need β€” the weakest thing in the table, labelled as such.

Every magnitude is ours, including on the eighteen. The meta-analyses are emphatic that these relationships are not large and that traits and values are distinct constructs. None of the sources we could reach published a full table of coefficients. So the weights are scaled to reported relative strength, not copied from a paper. The rule we wrote into the file: changing a weight needs no justification, changing a sign needs a citation.

Route two and a half: Big Five, estimated

Most personas are a sentence. "A cautious retiree who double-checks everything before buying." Nobody answered a questionnaire and nobody supplied five personality scores β€” but the sentence itself is evidence, and it is closer to what a personality instrument measures than the cognitive traits are. "Double-checks everything before buying" maps onto a conscientiousness item far more directly than patience: 0.8 does.

So when a persona is created from a description, the model doing the creating also estimates a Big Five profile from that same text. From there the thirteen values derive through the same published correlations route two uses.

Two rules keep the estimate honest.

It shows its work. Every factor quotes the words that justify its score. No quote, no profile:

openness           0.2   "dislikes unfamiliar websites"
conscientiousness  0.85  "double-checks everything before buying"
neuroticism        0.55  "cautious"

An estimate you can check against the source is evidence. One you can't is a number, and the two are indistinguishable once they are in a payload.

A shrug is rejected. If all five factors come back at exactly 0.5, the profile is discarded and the persona uses the cognitive-trait route instead. Five midpoints is what "the description doesn't say" looks like wearing the costume of "this person is perfectly average" β€” and the second is a claim the text never made. The response reports the rejection and the reason rather than proceeding quietly.

Why it is its own route

An estimated profile and a supplied one feed the same well-supported bridge to values, so it would be easy to call them both "Big Five". They report separately β€” bigfive_inferred and big_five β€” because the evidence underneath differs: five numbers a person gave, against a model reading prose with no published calibration behind it.

That makes four routes, and the ordering is a claim about where the uncertainty sits, not about accuracy:

routeinputsbridge to valuesreaches
statedanswersnone needed10 Schwartz values
big_fivesupplied scorespublished correlationsall 13
bigfive_inferredestimated from textpublished correlationsall 13
cognitive_traitsthe persona's traitsours9 of 13

The interesting comparison is the bottom two. Inferred Big Five has weaker inputs and a stronger bridge. The cognitive-trait route has stronger inputs and a weaker bridge β€” the traits are stated outright, but nothing published connects patience to hedonism. Neither is strictly better. The reason to prefer the inferred route is coverage: thirteen axes instead of nine, and it says plainly that it estimated.

Route three: the cognitive traits

If there is no answer, no supplied Big Five, and no description the estimate could work from, there is one route left β€” derive values from the 25 cognitive traits directly.

This is the weakest of the three, and it is worth being precise about why. The research relates values to the Big Five. It does not relate them to patience, or satisficing, or how well someone recovers from an interruption. Every link in this table crosses a gap the literature does not cover. The directions are reasonable and each one cites something β€” Kashdan on curiosity and openness, Simon on satisficing, Cialdini on social proof and conformity β€” but the bridge from a cognitive trait to a motivational value is ours, not theirs.

Here is that graph in full: twelve traits, twenty-six weighted links, onto nine of the thirteen axes.

Traits that reach the values
0.95
0.80
0.40
0.70
0.40
0.45
0.55
0.60
0.90
0.85
0.95
0.25
Traits that only affect persuasion
0.70
0.35
0.30
Values & needs β€” derived
Stimulation
0.76
Self Direction
0.70
Security
0.34
Competence Need
0.76
Achievement
0.70
Conformity
0.48
Tradition
0.50
Benevolence
0.49
Autonomy Need
0.62
Hedonismnever moves
0.50
Powernever moves
0.50
Universalismnever moves
0.50
Relatedness Neednever moves
0.50
Openness
0.73
all inputs live
Self Enhancement
0.60
1 of 2 inputs never move
Conservation
0.44
all inputs live
Self Transcendence
0.50
1 of 2 inputs never move
The correlation graph β€” 26 links
Curiosity raises Stimulation β€” strength 0.6Curiosity raises Self Direction β€” strength 0.5Risk Tolerance lowers Security β€” strength 0.7Risk Tolerance raises Stimulation β€” strength 0.4Patience lowers Stimulation β€” strength 0.4Patience raises Tradition β€” strength 0.3Persistence raises Achievement β€” strength 0.6Persistence raises Competence Need β€” strength 0.4Social Proof Sensitivity raises Conformity β€” strength 0.7Social Proof Sensitivity lowers Self Direction β€” strength 0.4Trust Calibration lowers Security β€” strength 0.5Trust Calibration raises Benevolence β€” strength 0.3Authority Sensitivity raises Conformity β€” strength 0.5Authority Sensitivity raises Tradition β€” strength 0.4Authority Sensitivity lowers Self Direction β€” strength 0.3Fear Of Missing Out raises Stimulation β€” strength 0.6Fear Of Missing Out lowers Security β€” strength 0.4Self Efficacy raises Achievement β€” strength 0.5Self Efficacy raises Autonomy Need β€” strength 0.6Self Efficacy raises Competence Need β€” strength 0.5Resilience raises Competence Need β€” strength 0.5Resilience lowers Security β€” strength 0.3Comprehension raises Self Direction β€” strength 0.4Comprehension raises Competence Need β€” strength 0.3Satisficing lowers Achievement β€” strength 0.4Satisficing lowers Stimulation β€” strength 0.3CuriosityRisk TolerancePatiencePersistenceSocial Proof SensitivityTrust CalibrationAuthority SensitivityFear Of Missing OutSelf EfficacyResilienceComprehensionSatisficingStimulationSelf DirectionSecurityCompetence NeedAchievementConformityTraditionBenevolenceAutonomy NeedHedonism Β· nothing arrivesPower Β· nothing arrivesUniversalism Β· nothing arrivesRelatedness Need Β· nothing arrives
pushes up pushes down nothing arrivesthickness = strength
Persuasion patterns, ranked live
1
commitment
0.710
2
scarcity1 of 3 frozen
0.612
3
reciprocity
0.571
4
liking1 of 2 frozen
0.527
5
unity
0.514
6
decoy effect
0.480
7
authority
0.464
8
anchoring
0.452
9
default bias
0.436
10
social proof
0.406
11
loss aversion
0.392

Drag anything and the values move. It runs the same correlation table and the same squash the product uses, and the presets are real personas β€” the numbers under alexa-eden are that persona's actual traits. It is a copy of the arithmetic rather than a live call into it, so treat the shipped tools as the source of truth if the two ever disagree.

The four that this route cannot reach

Try to move hedonism, power, universalism or the relatedness need with those sliders. They will not move, for any persona, ever.

No cognitive trait in the correlation table targets them. Twelve traits carry twenty-six links, and those links land on nine of the thirteen values. The other four have nothing arriving. The arithmetic works perfectly: it starts them at the neutral midpoint, adds up the zero nudges they receive, and leaves them where they began.

This is why route ordering matters. A persona with answers, a supplied profile, or a usable description reaches all thirteen. Only one with none of those is limited to nine. Ask, and all thirteen are real. Supply a Big Five profile, and all thirteen are derived from published correlations. Fall back to cognitive traits, and four of them are placeholders. The output marks them, so a run that depends on those four can say so up front.

How to read a 0.5

Every value sits between 0 and 1, and 0.5 is the middle. But a 0.5 can mean two completely different things, and telling them apart is the difference between a number you can act on and one you can't.

It might mean measured, no lean: the traits pointed both ways and balanced out, or the one trait that reaches this value happens to sit at the midpoint. That is a real result.

Or it might mean nothing arrived: on the cognitive-trait route, four values have no incoming links at all, so they never move off the starting point. That is not a measurement. It is the number the arithmetic began with.

The output tells you which. Three fields do the work:

fieldwhat it answers
valuesSourcewhich of the three routes produced these numbers
unpopulatedAxeswhich values this route cannot reach at all
netNudgethe signed evidence behind each value, before it was squashed into 0–1

netNudge is the decisive one, because it separates the two cases even when the value doesn't land exactly on 0.5. An axis nothing targets has a nudge of exactly 0. An axis whose inputs cancelled has a small non-zero. Same value, different fact, and now visibly different.

Averages of a placeholder

The same care applies one level up. Schwartz's ten values roll into four broader ones β€” self-enhancement averages achievement and power, self-transcendence averages benevolence and universalism. On the cognitive-trait route, power and universalism are two of the four that never move.

Averaging a real number with a placeholder doesn't produce a slightly-less-certain number. It produces a number pulled halfway toward the middle β€” and only for the composites that have a placeholder in them, which quietly reshuffles how they rank against each other.

So the placeholders are left out of the average rather than counted as 0.5, and the output says how many inputs each composite actually used. Same rule everywhere: the rollups, the Maslow level, the persuasion scores. The payload states it once, in imputationPolicy.

Checking the numbers yourself

None of this requires trusting us, which is deliberate. Every number a persona lookup returns can be rebuilt by hand from other fields in the same response.

The transform is published: value = 0.5 + tanh(netNudge) / 2. Take a persona's security nudge of βˆ’0.329, run it through, and you get 0.341 β€” the value the tool reports. It works on all thirteen axes, and it inverts, so you can go from any value back to the evidence behind it.

The persuasion scores work the same way. Each pattern ships a basis listing the exact values and traits that fed it and the formula that combined them:

scarcity 0.656
  values: stimulation=0.756, achievement=0.698, power=0.5 (unpopulated baseline)
  traits: fearOfMissingOut=0.6, patience=0.4 (inverted), trustCalibration=0.45
  formula: 0.6 Γ— mean(populated values) + 0.4 Γ— mean(related traits)

Multiply it out and you get the number back. A model you can audit from the outside is a different kind of object from one you have to take on faith β€” and for something that produces a psychological profile from a handful of dials, that distinction matters more than usual.

Every correlation on the cognitive-trait route cites a source. This is the whole list.

TraitSourceWhat it establishes
curiosityKashdan (2018)Curiosity correlates with openness to experience
riskToleranceSchwartz (2012)Security opposes stimulation on the value circumplex
patienceBaumeister (1998)Patience relates to delayed gratification
persistenceDuckworth (2016)Grit predicts achievement-oriented behaviour
socialProofSensitivityCialdini (2001)Social proof activates conformity motivation
trustCalibrationRotter (1971)Trust correlates with positive interpersonal expectations
authoritySensitivitySchwartz (2012)Authority acceptance aligns with conservation values
fearOfMissingOutPrzybylski (2013)FOMO drives novelty-seeking behaviour
selfEfficacyBandura (1997)Self-efficacy predicts autonomous achievement
resilienceMasten (2001)Resilience reflects adaptive competence
comprehensionCognitive load researchComprehension enables autonomous decision-making
satisficingSimon (1956)Satisficing versus maximizing decision strategies

The value model is Schwartz's theory of basic human values; the three needs are Deci and Ryan's self-determination theory; the persuasion patterns are Cialdini's, plus anchoring, the decoy effect, loss aversion and default bias from behavioural economics.

A citation behind a link is not the same as evidence for the weight. "Curiosity correlates with openness" is well established. That curiosity should move stimulation by exactly 0.6 is a modelling choice made by people reading that literature. The sources justify the direction of each arrow. The numbers on them are ours, and they are the part most worth arguing with.

Why the order matters

Three routes, in a fixed order, and the output says which one produced any given number.

Values someone stated beat values inferred from personality, which beat values inferred from behaviour. Not because inference is bad β€” it is what makes the model useful on the thousands of personas nobody will ever hand-score β€” but because the three are not equally trustworthy and a reader deserves to know which one they are holding.

If you want the strongest version of a persona, answer the ten questions. If you have a Big Five profile, supply it. If you have neither, the cognitive-trait route still produces a usable person β€” with four values it cannot reach, and it will tell you which four.

None of this makes the model more accurate. It makes it clear about where it is accurate, which is the part you need before you act on a number.