Learn to Read Causal Loop Diagrams

Most of our posts include causal loop diagrams because some things are better expressed with a visual model than in words alone. Systems thinking takes on complex, dynamic systems and how they behave over time, which calls for a different sort of language. This quick tutorial will teach you the basics about reading causal loop diagrams through a Population model.

Causal loop diagrams consist of variables (things, actions or feelings) connected by causal links (arrows) with polarities (+ and – signs) and delays (||). Together, these create positive and negative feedback loops that describe the circles of cause and effect that take on a life of their own. Let’s hop into our example to make this more concrete.

Population Model

The two things that cause the Population to change are Births and Deaths, so we use arrows to represent these causal links. We know that more Births lead to a greater Population, and fewer Births will lead to a lower Population, all else equal. We would say this relationship has a positive polarity, meaning that the two variables move in the same direction: more leads to more, or less leads to less. We indicate that a causal relationship has a positive polarity by placing a + sign next to the arrow head.

More Births Lead to Greater Population
More births causes the population to increase.

We also know that more deaths lead to a lower Population, and fewer deaths lead to a greater population. The variables move in the opposite direction, more leads to less, or less leads to more, so we would say that this relationship has a negative polarity. We represent this by labeling the arrow head with a – sign.

Deaths decrease the population
More deaths cause the population to decrease.

These causal links are true independently, and they are also both true at the same time. On their own, they don’t tell us what’s actually happening to the population. The direction of change in population is determined by whichever of these two relationships is dominant. As long as births exceed deaths population will grow, and whenever deaths exceed births, the population will shrink.

Population Growth is a function of Births and Deaths

Now let’s introduce some Feedback into the model. While more Births lead to a greater Population, a greater Population also leads to more Births since more people make more babies, given a birth rate stays constant (this is why we say “all else equal”, because we only consider the two variables that we are linking when we think about polarity). Therefore, we draw a positive causal link from Population back to Births.

Reinforcing and Balancing Loops impact Population

This link forms our first feedback loop, shown on the left side of the image above. A feedback loop is what we call a set of relationships where one variable leads to a change in another variable that eventually leads to a change in the original variable. To read a feedback loop, you pick a variable to start with and arbitrarily pick a direction – either More or Less.

So let’s read this one starting with Population and More. More population leads to more births which leads to more population. This is called a Reinforcing Feedback Loop (marked with an R) because more births today lead to more births in the future – births reinforce births. Similarly, less Births would lead to a lower Population which would lead to less births in the future; the reinforcing process works in the opposite direction too. If this were the only Feedback Loop in the Population system and people did not die, then we would see exponential growth in the number of people.

We see a different type of Feedback Loop when we examine Deaths. More Deaths today leads to fewer Deaths in the future. This is because more deaths today will cause the population to fall, which means less people will be around to die later. These types of loops are called Balancing Feedback Loops (marked with a B) since more leads to less or less leads to more – the original change is balanced by a change in the opposite direction.

Feedback loops take on a life of their own. We see a set of relationships that are always happening over and over again generating behavior that unfold over time. These two feedback loops can cause a few different behaviors based on the the birth rate and life expectancy – we will observe Population growing and growing ever faster as long as the reinforcing Births loop dominates, and leveling off if the Deaths balancing loop is dominant.

Notice in the image above that there are two hash marks, || ,  on the causal links between Population and Births and between Population and Deaths. Hash marks represent a Delay, a situations where it takes time before the effect plays out. It takes time for an individual to be of-age to have a child which is why there is a delay between Population and Births. This delay is longer in some countries like New Zealand where the average woman has children at age 29, wherease it’s less than 20 years of age in certain developing countries.

The delay in deaths is one where we see huge differences across various countries. In Japan, the life expectancy is over 80 years of age, while it’s only 49 years in Afghanistan. Delays have important implications, so whenever you run into one, think to your self, “how long is this delay?” If delays are relatively long, that could lead to a lag in responsiveness or inability to adapt (i.e. you simply can’t change the population instantly), whereas if delays are very short or non-existent, the system might be more sporadic.

The delay it takes for people to change their opinions is very short in a young child, and very long in adults (some adults never change their worldviews after a certain age).

A Resource-Constrained Poor Country

Now let’s take a look at a model that captures a resource-constrained, poor country below. Can you trace the two new Balancing and Reinforcing Loops and make sense of them? Let’s give it a try!

Population Model with Resource Constraints

We’ll begin with the new balancing loop on the bottom right. As Population increases, the number of Resources per Person falls, and when this happens, the average Life Expectancy will also fall since fewer resources means less food, a weaker economy, fewer doctors, and fewer jobs. As Life Expectancy falls, the rate of Deaths increases, which causes the Population to fall. This balancing loop makes sense, but it will only come into play given that resource constraints are a serious issue.

Another interesting thing plays out as related to Life Expectancy in the new reinforcing loop on the bottom left. When Life Expectancy falls and infant mortality rates increases, people may desire to have larger families. This ultimately leads to more children in each household, which increases the Population size, exacerbates resource constraints and decreases Life Expectancy further.  This reinforcing loop represents a vicious cycle where people essentially get what they want in the present at the expense of the future. Does this mechanism make sense? It certainly wouldn’t apply in every context, but in some situations, you could imagine how a mother, expecting several of her children to die before they reach a ripe old age, would want to have more children in anticipation of early deaths. The model is true in the context of a prevailing set of factors (resource constraints matter) and beliefs (having many children is the best way to ensure that you have family in the future).

Context Is Key

Keep in mind that this is just one simplified population model of a hypothetical population. It may represent some countries more than others. For example, some would argue that the link between Resources and Life Expectancy is a weak one as long as technological progress and innovations allow us to support our consumption habits without extracting resources at too high of a rate. But others argue that technology can only do so much, and that even the U.S. will eventually reach its limits.  Some believe that we are using oil as if we’re fetching water from a well – we have no idea how much is left, so we behave as if it’s bottomless.

The particular problem and context of a model should always be clear. Models are used to frame problems and answer questions. They are explicit theories of why something behaves the way it does. They should help to clarify what is being considered and what is being excluded and present opportunities to suggest corrections and additions and improvements.


So next time you see a causal loop diagram:

  1. Ask what problem is this describing
  2. Walk through the major feedback loops, identify what type they are, and boil them down to the process that they are capturing
  3. Estimate the delays to get an idea of the timescale of each feedback loop
  4. Identify which variables and loops are dominant
  5. Think about what is missing

Now practice what you’ve learned in this short Causal Loop Diagram Quiz!

Practice Reading More Causal Loop Diagrams (or see full list of essays with CLDs):

Learn the Foundations:


  1. Pingback: Systems & Us

Leave a Thought


WordPress.com Logo


Twitter picture


Facebook photo


Google+ photo


Connecting to %s