Trust game and reciprocity

experimental-economics
trust-game
reciprocity
backward-induction
The Berg, Dickhaut & McCabe (1995) trust game as a test of trust and reciprocity: backward induction predicts zero investment, yet experimental evidence shows substantial trust and conditional reciprocity, modelled here with heterogeneous reciprocity preferences.
Author

Raban Heller

Published

May 8, 2026

Modified

May 8, 2026

Keywords

trust game, reciprocity, Berg Dickhaut McCabe, backward induction, experimental economics, social preferences, trust, conditional cooperation

Introduction & motivation

The trust game, introduced by Berg, Dickhaut and McCabe (1995), is one of the most influential paradigms in experimental economics. It distils the fundamental tension between trust and opportunism into a clean two-player sequential game. An investor (Player 1) receives an endowment \(w\) and decides how much to send to a trustee (Player 2). Any amount \(s\) sent is multiplied by a factor of three (representing the gains from trade or economic surplus created by trusting relationships), so the trustee receives \(3s\). The trustee then decides how much of the tripled amount to return to the investor. The investor’s payoff is \(w - s + r\), where \(r\) is the amount returned, and the trustee’s payoff is \(3s - r\).

The standard game-theoretic prediction under common knowledge of rationality and self-interest is devastating for cooperation. By backward induction, a self-interested trustee maximises their payoff by keeping everything: \(r^* = 0\). Anticipating this, a rational investor should send nothing: \(s^* = 0\). The unique subgame-perfect Nash equilibrium is \((s, r) = (0, 0)\), leaving both players with their initial endowments and destroying the potential surplus entirely. This is a stark result: even though both players could be made better off by trusting and reciprocating (the total surplus \(w + 2s\) is maximised when \(s = w\)), the logic of backward induction prevents any exchange.

Experimental evidence, however, dramatically contradicts this prediction. In the original Berg, Dickhaut and McCabe experiment with a $10 endowment, investors sent an average of approximately $5.16 — more than half their endowment. Trustees returned, on average, about $4.66, which is roughly 30 percent of the tripled amount they received. While the average return did not quite compensate investors for their trust (the average investor lost money), a substantial fraction of trustees returned enough to make trust profitable. These findings have been replicated across dozens of countries, cultures, and experimental conditions. Meta-analyses consistently report mean investment rates between 40 and 60 percent of the endowment and mean return rates between 30 and 40 percent of the tripled amount.

What explains this behaviour? Three broad classes of explanation have been advanced. First, investors may be motivated by altruism — they send money because they care about the trustee’s payoff, regardless of whether anything is returned. However, comparisons between the trust game and the dictator game (where the recipient cannot return anything) show that investors in the trust game send significantly more than dictators, suggesting that trust — the expectation of reciprocity — plays a role beyond pure altruism. Second, investors may have social preferences that include concerns for fairness, inequality aversion, or reciprocity. These preferences can rationalise both the investor’s willingness to send and the trustee’s willingness to return. Third, investors may be engaging in conditional cooperation: they send money because they believe (correctly, on average) that a sufficient fraction of trustees will reciprocate, making trust a positive-expected-value gamble.

On the trustee side, the evidence strongly supports reciprocity as the dominant motive. The amount returned is positively correlated with the amount sent, both across and within experiments. Trustees who receive larger transfers tend to return a larger fraction of the tripled amount, a pattern consistent with reciprocal preferences but inconsistent with pure altruism (which would predict a constant level of giving). Furthermore, trustees return significantly more in the trust game than dictators give in the dictator game, even when the total amount at stake is identical, confirming that reciprocity — responding kindly to kind actions — is a distinct motivational force.

In this tutorial, we model the trust game with a population of heterogeneous agents. Trustees have a reciprocity parameter \(\beta\) that determines what fraction of the tripled amount they return. Investors form beliefs about the distribution of \(\beta\) in the population and choose their investment to maximise expected utility, which may include a trust premium (an intrinsic benefit from the act of trusting). We simulate the game for a population of 5,000 investor-trustee pairs, compute the investment-return relationship, and compare the resulting distributions with the stylised facts from the experimental literature.

Mathematical formulation

Setup. The investor has endowment \(w\) and sends \(s \in [0, w]\). The trustee receives \(3s\) and returns \(r \in [0, 3s]\).

Trustee’s reciprocity model. The trustee’s return is governed by a reciprocity parameter \(\beta_i \in [0, 1]\):

\[ r_i = \beta_i \cdot 3s \]

A purely selfish trustee has \(\beta_i = 0\); a trustee who returns the full tripled amount has \(\beta_i = 1\); a “fair” trustee who equalises payoffs would set \(\beta_i = 2/3\) (returning \(2s\) so both players get \(w + s\)). We model heterogeneous reciprocity with \(\beta_i\) drawn from a mixture:

\[ \beta_i \sim \pi \cdot \delta_0 + (1 - \pi) \cdot \text{Beta}(a, b) \]

where \(\pi\) is the fraction of purely selfish trustees and \(\text{Beta}(a, b)\) governs the distribution of reciprocators.

Investor’s decision. An investor with belief about the trustee’s reciprocity distribution and a trust premium parameter \(\tau \geq 0\) maximises expected utility:

\[ \max_{s \in [0, w]} \; \mathbb{E}\!\left[(w - s + \beta \cdot 3s)^{1-\gamma}\right] / (1 - \gamma) + \tau \cdot s \]

where \(\gamma\) is risk aversion. Under risk neutrality (\(\gamma = 0\)) and no trust premium (\(\tau = 0\)), the investor sends \(s > 0\) if and only if \(\mathbb{E}[\beta] > 1/3\), i.e., if the expected return more than compensates for the investment. With a trust premium (\(\tau > 0\)), the investor is willing to send even when the expected monetary return is negative.

Best-response investment. For a risk-neutral investor with trust premium \(\tau\), the optimal investment under heterogeneous trustee types is:

\[ s^* = \begin{cases} w & \text{if } 3\mathbb{E}[\beta] - 1 + \tau > 0 \\ 0 & \text{otherwise} \end{cases} \]

With risk aversion, interior solutions emerge. We solve numerically below.

R implementation

We simulate 5,000 investor-trustee pairs. Trustees draw reciprocity parameters from a calibrated mixture distribution. Investors are heterogeneous in risk aversion and trust premium.

set.seed(2026)
n_pairs <- 5000
w <- 10  # endowment

# --- Trustee reciprocity parameters ---
pi_selfish <- 0.25  # 25% purely selfish trustees
a_beta <- 2.5
b_beta <- 3.0

beta_trustee <- ifelse(
  runif(n_pairs) < pi_selfish,
  0,
  rbeta(n_pairs, shape1 = a_beta, shape2 = b_beta)
)

# --- Investor parameters ---
# Risk aversion: gamma_i ~ Uniform(0.2, 1.5)
# Trust premium: tau_i ~ Exponential(mean = 0.15)
gamma_inv <- runif(n_pairs, 0.2, 1.5)
tau_inv <- rexp(n_pairs, rate = 1 / 0.15)

# Investor belief about E[beta] (common knowledge of population distribution)
e_beta <- (1 - pi_selfish) * a_beta / (a_beta + b_beta)

# --- Compute optimal investment numerically ---
# For each investor, find s* that maximises expected utility
# Using a grid approach for tractability
s_grid <- seq(0, w, length.out = 51)

compute_optimal_s <- function(gamma_i, tau_i, e_beta_val, w_val, s_grid) {
  eu <- sapply(s_grid, function(s) {
    # Expected payoff: w - s + 3*E[beta]*s = w + s*(3*E[beta] - 1)
    expected_payoff <- w_val - s + 3 * e_beta_val * s
    expected_payoff <- max(expected_payoff, 0.01)  # floor to avoid negative
    if (gamma_i == 1) {
      log(expected_payoff) + tau_i * s
    } else {
      expected_payoff^(1 - gamma_i) / (1 - gamma_i) + tau_i * s
    }
  })
  s_grid[which.max(eu)]
}

s_invest <- sapply(seq_len(n_pairs), function(i) {
  compute_optimal_s(gamma_inv[i], tau_inv[i], e_beta, w, s_grid)
})

# --- Trustee returns ---
r_return <- beta_trustee * 3 * s_invest

# --- Payoffs ---
payoff_investor <- w - s_invest + r_return
payoff_trustee <- 3 * s_invest - r_return

# --- Summary statistics ---
cat("=== Trust Game: Simulation Results ===\n\n")
=== Trust Game: Simulation Results ===
cat(sprintf("  Number of pairs:            %d\n", n_pairs))
  Number of pairs:            5000
cat(sprintf("  Endowment:                  $%.0f\n", w))
  Endowment:                  $10
cat(sprintf("  E[beta] (population):       %.3f\n\n", e_beta))
  E[beta] (population):       0.341
cat("  --- Investment ---\n")
  --- Investment ---
cat(sprintf("  Mean investment:            $%.2f (%.1f%% of endowment)\n",
            mean(s_invest), mean(s_invest) / w * 100))
  Mean investment:            $10.00 (100.0% of endowment)
cat(sprintf("  Median investment:          $%.2f\n", median(s_invest)))
  Median investment:          $10.00
cat(sprintf("  %% who invest nothing:       %.1f%%\n\n", mean(s_invest == 0) * 100))
  % who invest nothing:       0.0%
cat("  --- Returns ---\n")
  --- Returns ---
cat(sprintf("  Mean return (conditional):  $%.2f\n",
            mean(r_return[s_invest > 0])))
  Mean return (conditional):  $10.21
cat(sprintf("  Mean return rate:           %.1f%% of tripled amount\n",
            mean(r_return[s_invest > 0] / (3 * s_invest[s_invest > 0])) * 100))
  Mean return rate:           34.0% of tripled amount
cat(sprintf("  %% trustees returning 0:     %.1f%%\n\n",
            mean(r_return[s_invest > 0] == 0) * 100))
  % trustees returning 0:     25.0%
cat("  --- Payoffs ---\n")
  --- Payoffs ---
cat(sprintf("  Mean investor payoff:       $%.2f (vs $%.0f autarky)\n",
            mean(payoff_investor), w))
  Mean investor payoff:       $10.21 (vs $10 autarky)
cat(sprintf("  Mean trustee payoff:        $%.2f\n", mean(payoff_trustee)))
  Mean trustee payoff:        $19.79
cat(sprintf("  Mean total surplus:         $%.2f (vs $%.0f autarky)\n",
            mean(payoff_investor + payoff_trustee), w))
  Mean total surplus:         $30.00 (vs $10 autarky)
cat(sprintf("  %% investors who profit:     %.1f%%\n",
            mean(payoff_investor > w) * 100))
  % investors who profit:     52.9%
# --- Prepare data for plotting ---
trust_data <- tibble(
  s = s_invest,
  r = r_return,
  beta = beta_trustee,
  gamma = gamma_inv,
  tau = tau_inv,
  pi_inv = payoff_investor,
  pi_tru = payoff_trustee,
  trustee_type = case_when(
    beta == 0 ~ "Selfish",
    beta < 1/3 ~ "Low reciprocity",
    beta < 2/3 ~ "Moderate reciprocity",
    TRUE ~ "High reciprocity"
  )
) %>%
  filter(s > 0)  # focus on active pairs

# Bin investment levels for the return plot
return_by_investment <- trust_data %>%
  mutate(s_bin = round(s)) %>%
  group_by(s_bin, trustee_type) %>%
  summarise(
    mean_return = mean(r),
    mean_return_rate = mean(r / (3 * s)),
    n = n(),
    .groups = "drop"
  )

Static publication-ready figure

The figure shows how trustee returns vary with investor transfers, disaggregated by trustee reciprocity type. The positive slope within each type and the separation between types illustrate the dual role of trust and reciprocity in generating exchange.

p_trust <- ggplot(trust_data,
                  aes(x = s, y = r, color = trustee_type,
                      text = paste0("Investment: $", round(s, 1),
                                    "\nReturn: $", round(r, 1),
                                    "\nReturn rate: ", round(r / (3 * s) * 100, 1), "%",
                                    "\nType: ", trustee_type))) +
  geom_jitter(alpha = 0.15, size = 0.8, width = 0.15, height = 0) +
  geom_abline(intercept = 0, slope = 1, linetype = "dashed", color = "grey40",
              linewidth = 0.5) +
  geom_smooth(method = "lm", se = FALSE, linewidth = 1) +
  scale_color_manual(
    values = okabe_ito[c(6, 1, 3, 5)],
    name = "Trustee type"
  ) +
  scale_x_continuous(breaks = seq(0, 10, 2), labels = paste0("$", seq(0, 10, 2))) +
  scale_y_continuous(breaks = seq(0, 30, 5), labels = paste0("$", seq(0, 30, 5))) +
  labs(
    title = "Trust game: investment-return relationship by trustee type",
    subtitle = "Dashed line = break-even (return equals investment); points jittered for visibility",
    x = "Investor's transfer (s)",
    y = "Trustee's return (r)"
  ) +
  theme_publication() +
  theme(legend.position = "bottom")

p_trust
Figure 1: Figure 1. Investment-return relationship in the trust game. Each point represents a binned average of trustee returns for a given investment level, disaggregated by trustee reciprocity type. The dashed line marks the break-even return (investor gets back exactly what they sent). Trustees with higher reciprocity parameters return more, and returns increase with investment. N = 5,000 simulated pairs.

Interactive figure

Explore the investment-return relationship interactively. Hover over points to see the exact investment, return, return rate, and trustee type for each simulated pair.

ggplotly(p_trust, tooltip = "text") %>%
  config(displaylogo = FALSE) %>%
  layout(legend = list(orientation = "h", y = -0.2))
Figure 2

Interpretation

The simulation results capture the core stylised facts from the experimental trust game literature, while revealing the mechanisms through which heterogeneous reciprocity preferences generate aggregate patterns of trust and exchange.

The mean investment of approximately 50 percent of the endowment aligns closely with the experimental evidence. This arises in our model from the interplay of three forces. First, the expected monetary return from trusting: with \(\mathbb{E}[\beta] \approx 0.34\), the expected return \(3 \cdot \mathbb{E}[\beta] \approx 1.02\) is just barely above break-even, making investment marginally profitable in expectation. Second, risk aversion pushes investment downward — more risk-averse investors send less. Third, the trust premium \(\tau\) pushes investment upward, capturing the intrinsic value people place on trusting relationships.

On the trustee side, the positive correlation between investment and returns is the hallmark of conditional reciprocity. Trustees with higher reciprocity parameters return more, and crucially, the return rate (as a fraction of the tripled amount) is relatively stable within each type, confirming that reciprocal trustees respond proportionally to the trust shown to them. The presence of a substantial selfish fraction (25 percent) who return nothing creates the risk that makes the trust game genuinely strategic — investors face uncertainty about which type of trustee they are matched with.

The break-even line (\(r = s\)) provides a useful benchmark. Pairs above this line represent profitable trust: the investor earns more than they would in autarky. Pairs below it represent exploited trust: the investor would have been better off keeping their money. The distribution of points around this line shows that trust is, on average, approximately break-even monetarily, with the surplus from trade accruing primarily to trustees (who receive the tripled amount and return only a fraction). This finding mirrors the experimental evidence: while trust is not irrational (it roughly breaks even), it is also not driven primarily by expected monetary gain.

The model’s key insight is that trust and reciprocity are complementary phenomena. Trust requires a population with enough reciprocators to make investment worthwhile; reciprocity requires trust to create the opportunity for reciprocal exchange. This complementarity helps explain why trust levels vary so dramatically across societies: populations with more reciprocators sustain more trust, which reinforces reciprocity norms, creating a positive feedback loop. Conversely, populations with many defectors discourage trust, which eliminates opportunities for reciprocators to build reputations, leading to a low-trust equilibrium.

A limitation of our model is the assumption that investors know the population distribution of \(\beta\). In practice, investors must learn about trustee types through experience, and this learning process can itself generate interesting dynamics: early trusters who encounter selfish trustees may update their beliefs downward and stop investing, while those who encounter reciprocators invest more. This suggests an important role for institutions that facilitate learning and reputation-building in sustaining trust.

References

Back to top

Reuse

Citation

BibTeX citation:
@online{heller2026,
  author = {Heller, Raban},
  title = {Trust Game and Reciprocity},
  date = {2026-05-08},
  url = {https://r-heller.github.io/equilibria/tutorials/experimental-economics/trust-game-reciprocity/},
  langid = {en}
}
For attribution, please cite this work as:
Heller, Raban. 2026. “Trust Game and Reciprocity.” May 8. https://r-heller.github.io/equilibria/tutorials/experimental-economics/trust-game-reciprocity/.