What is Bass diffusion model?

A model of how a new product spreads through a market, in which people adopt either on their own or by copying others who already adopted.

Bass diffusion model diagram example

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

The Bass diffusion model describes how adoption of a new product grows over time. It splits adopters into innovators, who adopt on their own, and imitators, who adopt because others have. It matters because it explains why many launches follow an S-shaped path with a peak in new adopters, and it can be fitted to early sales to forecast the whole curve.

How it works

The model has three inputs. M is the total number who will ever adopt. The coefficient of innovation, p, is the chance per period that a non-adopter adopts without influence from others. The coefficient of imitation, q, measures how strongly existing adopters pull others in. New adopters per period equal (p + q × N / M) × (M − N), where N is the number who have adopted so far.

At the start N is near zero, so adoption is driven by p alone. As N grows, imitation takes over and new adopters peak, then fall as the pool of non-adopters shrinks. The cumulative result is S-shaped growth. A larger q relative to p gives a sharper, earlier peak. The parameters are usually estimated by calibration against early sales data. It is an aggregate model, so it ignores individual differences, which agent-based modeling can add.

Example

Say M is 1,000,000 households, p is 0.03, and q is 0.38 per year. In year one, N is zero, so new adopters are 0.03 times 1,000,000, which is 30,000. When N reaches 200,000, adopters are (0.03 + 0.38 × 0.2) times 800,000, which is about 84,800. When N reaches 500,000, adopters are (0.03 + 0.19) times 500,000, which is 110,000, near the peak. This is an illustration with round numbers.

How to model it in Machinations

Use a Pool for potential adopters and a Pool for adopters, joined by a Converter. A Register computes the adoption rate from p, q, and the two Pools, and sets the Converter's rate through a state connection. Chart both Pools, Play, and move the imitation Lever to see the peak shift earlier or later.

See Bass diffusion model 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.