What is variable reward schedule?

A pattern in which rewards arrive after an unpredictable number of actions, which keeps people engaged longer than fixed rewards.

Variable reward schedule diagram example

Public diagram from the Machinations Community. Open it on its own page

A variable reward schedule gives a reward after an unpredictable number of actions or amount of time rather than at fixed points. It comes from behavioral psychology, where it is known to sustain repeated behavior more strongly than a predictable payout. Marketers and game designers use it, and the same mechanism raises ethical questions when it is aimed at compulsion.

How it works

The reward comes with a probability on each action, so the number of actions between rewards varies around an average. With a 10% chance per action, the average wait is 10 actions, but sometimes a reward comes at once and sometimes after 30. Because the next action might be the one that pays, there is no clear moment to stop. A fixed schedule, such as a reward on every tenth action, lets people predict the payout and pause right after receiving it.

The design trade-off is between engagement and trust. Rewards that are too rare feel like nothing is happening and people leave; rewards that are too frequent lose their pull. Transparent odds and sensible caps keep the mechanism fair.

Example

Say a loot-box style reward in a mobile title gives a rare item with probability 5% per open. The average wait is 1 / 0.05 = 20 opens. Over 100 players each opening 20 boxes, about 100 would find the item on average, but individual results vary widely: some players get it on the first open and about 36% of them need more than 20 opens, because (0.95)^20 is roughly 0.36. A fixed schedule of exactly one rare item per 20 opens would give the same average with no suspense. This is an illustration.

How to model it in Machinations

Put a Source for player actions into a Gate that splits the flow by probability, with the reward share on one branch and nothing on the other. The rewarded branch leads to a Pool for rewards earned. Make the probability a Lever, then Play many times at once and chart the spread of how long players wait. Compare it with a fixed schedule built from a Queue or Delay to see the difference in the spread.

See variable reward schedule in a system you can Play

Build the rules in a Machinations diagram, change a value and Play it to watch how the system responds.