Modeling Bass Diffusion with Rivalry
This is the last of a three-part series on the Limits to Growth Archetype. The first part can be accessed here and the second part here.
Last time, we explored the effects of Type 1 rivalry (rivalry between different companies in a developing market) on the Bass diffusion model by replicating the model structure. This part will generalize this structure and add Type 2 rivalry (customers switching between brands).
Bass Diffusion with Type 1 Rivalry
To model the general case of an emerging market with multiple competitors, we can return to the original single company case and use arrays to add additional companies. In this case, everything except Potential Customers needs to be arrayed, as shown below (and available by clicking here).
![]()
For this example, three companies will be competing for the pool of Potential Customers. Each array has one-dimension, named Company, and that dimension has three elements, named A, B, and C, one for each company. Although each different parameter, wom multiplier, fraction gained per $K, and marketing spend in $K, can be separately specified for each company, all three companies use the same values initially. All three companies, however, do not enter the market at the same time. Company A enters the market at the start of the simulation, company B enters six months later, and company C enters six months after that.
Recall that the marketing spend is the trigger for a company to start gaining customers. Thus, the staggered market entrance can be modeled with the following equation for marketing spend in $K:
STEP(10, STARTTIME + (ARRAYIDX() – 1)*6)
The STEP function is used to start the marketing spend for each company at the desired time. The ARRAYIDX function returns the integer index of the array element, so it will be 1 for company A, 2 for company B, and 3 for company C. Thus, the offsets from the start of the simulation for the launch of each company’s marketing campaign are 0, 6, and 12, respectively.
This leads to the following behavior:
![]()
Note that under these circumstances, the first company to enter the market retains a leadership position. However, companies B and C could anticipate this and market more strongly. What if company B spent 50% more and company C spent 100% more than company A on marketing that is similarly effective? This could be modeling by once again changing the equation for marketing spend in $K, this time to:
STEP(10 + (ARRAYIDX() – 1)*5, STARTTIME + (ARRAYIDX() – 1)*6)




