The chicken and egg problem

This post is part of a series on product design patterns.

The chicken and egg problem (also known as two sided markets) occurs whenever the value proposition to two separate groups is dependent on the penetration in the other. It typically requires an external force to break the deadlock and bootstrap the network effects.

It occurs commonly on products involving marketplaces (with consumers and sellers being the opposing forces) and social networks (where the opposing forces are between content creation and content consumption), where you can find a cycle in your design of incentives: for consumers to show up you need to have enough sellers, but sellers will only show up when there are enough consumers.

My two favorite examples is how credit cards were able to break the cycle (stores would only carry machines and accept credit cards if customers carried them, but customers would only carry credit cards if enough stores accepted them) and faxes failed to break the cycle (for a user to send a fax it required the other user to have a fax machine too).

Often, one underestimates the inertia of the two groups and the level of force required to bootstrap the system towards a self-fulfilling cycle. One often design their product based on an existing user base but forgets how to get it started in the first place (e.g. "I'll build a dating app" or "I'll build a market place for mentors").

There are a few ways to break the chicken and egg problem and they are typically a major part of your sequencing strategy.

Buy chickens

One of the simplest ways to break the chicken and egg problem is to throw money at it. If one of your players is financially incentivized, you can easily bring them over by paying them even in the absence of consumers/buyers. You can stock their goods, but most often you'll throw them away and will be paying them primarily for their presence.

Create eggs

If your players are not financially motivated (e.g. users in a social network) you can create features or side products that work in isolation (i.e. in the absence of other users) until you get critical mass and can pivot the initial user base into inviting the second group.

Partner with another farm

The third way to break the cycle is to bootstrap from an existing user base. For example, if there is already an existing marketplace in the real world (e.g. taxis, restaurants, etc) then starting from that user base and going from there can give you the initial gravity well to bootstrap a two sided network.