← Projects

GPT-4.1 predicted a human bias—then its own advice got weirder

Independent research · behavioral finance and LLM evaluation · July 13, 2026

I gave two language models the same financial decisions three ways: choose for yourself, advise a client, or predict what most people would do. One model was GPT-4.1. The other was GPT-5.6 Terra, a newer OpenAI model that I ran with its reasoning step turned off. GPT-4.1 changed dramatically with the job. Terra mostly did not. The twist is that GPT-4.1's “financial advisor” sometimes became less rational, not more.

A $4.8 million distraction

Start with this decision. It comes with two backstories, and only the backstory differs: the choice itself is identical.

An automated packaging line is 62% complete.

Version A · nothing spent

The company received the project in its current state for free.

Version B · the only change

The company already paid $4.8 million. The payment cannot be recovered.

Continue

Pay $1.2 million now. There is a 60% chance of producing $1.8 million in new value.

Stop

Pay nothing and receive nothing.

The old $4.8 million should have no effect on the decision. It is gone either way. From today forward, continuing is worth $1.08 million on average: 60% of $1.8 million. That is $120,000 less than the $1.2 million you would have to pay. So in both versions, the better answer is to stop.

People often struggle to ignore money already spent. That is the sunk-cost effect. I took a behavioral-finance course last year, and the obvious LLM question was whether a model would reproduce this kind of mistake or merely recognize it in other people.

One decision, three jobs

I asked every decision in three ways:

1

Choose

“You are the decision-maker. What would you do?”

2

Advise

Choose for a risk-neutral client: someone who cares only about the average dollar outcome and ignores risk.

3

Predict

Predict the most common answer from US adults in an anonymous survey.

This sets up a tempting story. The model might predict that people honor sunk costs, avoid the mistake when advising a client, and fall somewhere in between when choosing directly. If so, it would look as though the model knew the bias was wrong even when its own choice still showed it.

That story was too neat.

A second trap, with lotteries

I paired the sunk-cost test with a lottery problem. Here is one of the 24 pairs. The risky option has the larger average payout in both rows.

First decision

Safe: $450 for certain (a 100% chance)
Risky: 78% chance of $640

Average payouts: $450 versus $499.20

Second decision · both chances × 0.3

Safe: 30% chance of $450
Risky: 23.4% chance of $640

Average payouts: $135 versus $149.76

The second decision is the first one with both chances multiplied by 0.3: the sure $450 becomes a 30% chance, and the 78% chance of $640 becomes 23.4%. Scaling both chances by the same number does not change which option pays more on average, so the risk-neutral client should pick the risky option both times. Humans often switch: happy to take the sure $450, but more willing to gamble once the $450 stops being sure. Economists call this the certainty effect, or a common-ratio reversal. I will just call it the lottery test.

An 80-point split, but only for GPT-4.1

One measurement drives everything below, so let me spell it out. For each role, I measured how much adding the trap moved the model's answers toward the classic human bias: toward “continue” once the sunk cost appears, toward gambling once the sure thing stops being sure. Call that the shift, in percentage points. The number I report is the shift in the human-forecast role minus the shift in the advisor role. On sunk cost, GPT-4.1's forecast shifted 35.2 points toward the bias and its advisor shifted 46.7 points away from it, so its gap is 81.9. A gap near zero means the two roles reacted alike.

The forecast-minus-advisor gap, in percentage points (pp). Each dot is the average over that test's 24 scenarios, and the whisker behind it spans the 95% confidence interval (also given as the small numbers). GPT-4.1's gap appeared in every scenario and barely moved between the two collection days.

For GPT-4.1, the gap was 81.9 points on sunk cost and 72.4 points on the lottery test. All 24 scenario-level gaps were positive in both tests. Swapping option order, swapping the meaningless answer symbols, changing the financial setting, or returning 48 hours later did not remove it.

Terra's corresponding gaps were −0.7 and −5.2 points. Essentially nothing, on average.

The advisor did most of the moving

A gap compares two shifts, so it hides which side moved. Breaking the gaps apart changed my interpretation of the experiment.

Heatmap of role-specific shifts. GPT-4.1 human forecasts move 35.2 points on sunk cost but only 3.6 on the lottery test, while its advisor shifts negative 46.7 and negative 68.8 points and its direct choice moves negative 34.0 and positive 17.5. Terra's roles move more similarly.

Swipe to see the full figure →

Each cell is one role's shift between matched versions, in percentage points. Positive means the classic human direction: toward “continue” on sunk cost, toward gambling on the lottery test. These are shifts, not accuracy scores. Every cell's 95% confidence interval excludes zero.

On sunk cost, the forecast side did what the textbook story predicts: adding the lost investment made GPT-4.1 35.2 points more likely to forecast that people would continue. The advisor is the strange side. With no previous investment, it recommended continuing 89.1% of the time. Notice that this was already the wrong call: continuing loses $120,000 on average. Then add the sunk cost, the one fact it was told to ignore, and its recommendation fell to 42.4%. The irrelevant history swung the advisor 46.7 points, just in the opposite direction from humans.

The lottery result was stranger. GPT-4.1's forecast barely changed: it predicted people would take the lower-paying safe option 100% of the time when it was certain and 96.4% after scaling. Almost the entire 72.4-point gap came from the advisor. It usually recommended the higher-average-payout gamble in the first decision, then switched toward the safe option after both chances were multiplied by the same number. That is the human certainty effect, produced by the one role told to ignore it.

The heatmap's third column, the model choosing for itself, matched neither of the other two. The sunk cost pushed GPT-4.1's own choice 34.0 points away from continuing, and the lottery scaling made it 17.5 points more willing to gamble. Three roles, three different reactions to the same facts.

So the clean “predicts biased humans, gives rational advice” interpretation falls apart once you look at the pieces. The advisor prompt changed the answers without reliably improving them.

The advisor failed a simpler exam

I included separate questions to check whether the models understood the rules and could do the arithmetic. On the rules, both did well. Asked in words, both always said that money already spent should not affect the decision, and both always rejected options that were worse under every outcome. Asked whether scaling both chances by the same number changes which lottery is better, GPT-4.1 always said no; Terra said no 91.1% of the time.

Then I asked them to actually compare average payouts on the lotteries from the study.

Both models score 100% on the verbal sunk-cost rule and on rejecting strictly worse options, but GPT-4.1 scores 46.4% on lottery expected-value questions and 67.2% on the advisor's expected-value controls; Terra scores 61.5% and 70.3%.

Swipe to see the full figure →

Accuracy on the rule and arithmetic checks. Reciting a rule turned out to be much easier than applying it: both models state the sunk-cost rule perfectly, yet GPT-4.1 got fewer than half of the lottery arithmetic questions right.

GPT-4.1 answered “which lottery pays more, on average?” correctly only 46.4% of the time. Terra managed 61.5%. On a separate set of straightforward pick-the-higher-average decisions, their advisors reached 67.2% and 70.3%.

That is not enough to use “advisor” as shorthand for “correct.” It also blocks the reading I originally found most appealing: a model that knows the right answer, predicts that humans will ignore it, and reveals a separate inner preference when choosing for itself. What the outputs actually show is that each prompt selects a different answering habit, and some of those habits are bad at the math.

Terra was not a smaller copy of GPT-4.1

Terra's near-zero headline result was not perfect stability. On the lottery test, its gap was −22.6 points with one option order and +12.2 after the options swapped places. The small average came partly from those two swings canceling out. GPT-4.1's gap, remember, survived the same order swap.

This is why I would not turn the model comparison into a ranking. The two setups differ in model family, training, serving stack, and configuration. Terra ran with reasoning_effort="none", the setting that turns off its extra thinking step; GPT-4.1 was a pinned April 2025 snapshot. The result says these two configurations reacted differently. It does not say which model is more intelligent.

What I would take from this

“You are a financial advisor” sounds like a small wrapper around the same underlying answer. In this experiment it was not. For GPT-4.1, the role instruction changed how matched financial facts affected the response by more than 70 percentage points. Yet that change did not point consistently toward higher expected value.

If an LLM is making financial decisions, the role name is not a quality check. Test the actual decisions, add arithmetic controls, and swap the order of the options. And do not assume that a model predicting human behavior, advising a client, and choosing directly is expressing one stable preference in three voices.

The result I would keep

On this fixed set of questions, the assigned role sharply and repeatably changed GPT-4.1's financial answers, and its advisor over-corrected against a sunk cost it was told to ignore. Terra did not reproduce the split, but it was sensitive to option order. Role prompting selected different behavior; it did not guarantee better advice.

How the experiment was run

The frozen battery contained 24 sunk-cost and 24 lottery scenario families. Each appeared in two matched versions, three roles, two option orders, and two answer-symbol mappings. Every exact behavioral prompt received six independent responses split across two waves 48 hours apart. That comes to 6,912 behavioral prompts per model, plus 960 audit and control questions, so GPT-4.1 and Terra each answered 7,872 requests.

The 24 scenario families, rather than repeated calls to the same prompt, were treated as independent evidence. All 15,744 recorded answers, 7,872 per model, checked out cleanly: every one was a valid one-symbol response, and no missing-data repair was needed. The protocol, item bank, analysis, and stopping rules were frozen before collection. Total OpenAI cost was $4.18; AWS archival cost was under one cent.

What this does not establish

No people answered these exact questions, so the human-forecast prompt was not scored for accuracy. The study tested one wording per role, four constructed settings per effect, provider-default sampling, one pinned GPT-4.1 snapshot, and one Terra configuration. It cannot identify an internal bias, preference, or reasoning mechanism.

Related work

Broad LLM bias batteries already exist, including a 30-bias benchmark and STEER. My narrower question was what happens when the same financial decision is asked as choice, advice, and human forecast. That makes the role shift visible directly. I am not claiming this is the first study of LLM bias or risky choice.

This project grew out of an earlier attempt to make LLMs generate random events with set probabilities, then use those events to study financial behavior. That measurement broke in its own preliminary checks, so I rebuilt the experiment around literal sampled choices. The page address still carries the old project's name.