Modelling the fiscal multiplier

Some additional considerations for modelling building

Posted on 10 April 2017 by Andrew Berkeley

This is the third post in a series of posts looking at the fiscal multiplier. Previously, we have examined how the circular flow of money interacts with government spending and taxation (as well as private saving) by considering a mathematical structure called a geometric series. This interpretation of the fiscal multiplier is based around the concept of "spending rounds" which represent successive events in which income received previously is spent onwards, creating new income which is spent in the next round, and so on. Each spending round involves a successively smaller amount of circulating money because a fraction of all income is collected in tax (or saved). Eventually, all of the money has been withdrawn from circulation via taxation (and saving) and the spending stops. In the interim period, the circulation of the ever-reducing money stock produces a total, cumulative amount of income.

This approach is an intuitive way of thinking about sequences of spending. It enables us to conceive of how the money initially introduced by government spending is passed around the economy and what the implications of taxation and saving are. But whilst it arguably does a good job of describing how individual acts of spending follow the receipt of income, it should be recognised that in real economies collective spending does not precede collective income in discrete, ordered stages. Spending and the receipt of incomes arise via an incredibly complex network of millions of overlapping transactions occuring continuously.

The concept of the spending round also leads to questions such as how long it takes for a single spending round to occur, or the number of rounds that should be considered. It seems reasonable, for example, that the number of spending rounds included in any analysis would depend on the time period under consideration. But it is not really clear how spending rounds relate to absolute time. However, it turns out that these concerns can be adequately side-stepped by using a coherent accounting framework. This post attempts to tighten up our understanding of the fiscal multiplier and presents an alternative mathematical derivation which is more conducive to inclusion in more complex models.

Accounting for time

In the previous posts we looked at two ways of using geometric series to look at the fiscal multiplier. We either examine: (1) the income arising from a specific, finite number of spending rounds; or (2) the income as the number of spending rounds converges towards infinity. In practise, an infinite number of spending rounds can not actually occur because of the indivisibility of the smallest unit of the currency (a penny). The implication, therefore, of over-generously compounding our spending all the way through to the theoretical limit at infinity, is that we conceivably overstate the multiplier effect of the last penny in circulation. With government spending at a scale of, say, thousands or millions of pounds at a time, even the most pedantic among us would be hard pushed to be overly distressed by this. So, for all practical purposes, the infinite geometric sum is a perfectly reasonable way of encapsulating the "complete" consequences of money circulating under a certain set of taxation and saving conditions.

The question then arises as to whether there are any reasons to examine a truncated number of rounds versus the fully compounded set of spending rounds. If we're only concerned with a short time period, for example, is it appropriate to truncate the geometric series to some smaller number of spending rounds? The answer is "no", because we can describe any scenario we want, completely, without stipulating anything about the number or frequency of spending events.

The key is to understand that, since spending and income are flows, when we track them we are implicitly considering a particular time period. Up until now, we've discussed the fiscal multipler equations without considering what time period they may represent. But there is always some time reference implicit in them since they deal with flow variables (i.e. values per time). When we calculate income, \(Y\), it has to represent income over some time period, e.g a week, or a month or a year, because that is what income is. And all we need to do is get the accounting correct over this time period. We don't need to resolve individual transactions or spending rounds.

To illustrate this, suppose we're interested in resolving our economy over a time period of 1 week. We can use our equations to simulate the flows of income during that week. One thing we now have clarification on - that we didn't necessarily have before - is that the value for \(G\) now implicitly represents weekly government spending. Suppose now, for arguments sake, that we believe that only 5 spending rounds could possibly occur in a week (for whatever reason). And further, we'll assume no saving desire on the part of the private sector, to keep it simple. Then we can solve our equations for 5 rounds of spending only and obtain an estimate for the total amount of income generated over those 5 rounds.

The equation for calculating the cumulative income over a finite sequence of spending rounds without saving (originally derived here) is:

\[\sum_{n=0}^{m-1} Y_{n} = \frac {1-(1-\theta)^m}{\theta}G \hspace{2cm} (1)\]

Let's calculate the income over 5 spending rounds using the same values for \(G\) and \(\theta\) as previously.

In [62]:
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline

G     = 100 # government spending
theta = 0.2 # tax rate

rounds = 5

# solve equation 1 for the 5th spending round
sum_y = G*(1-(1-theta)**(rounds+1))/(1-(1-theta))


So we find that, after 5 rounds of spending, with no saving, 369 pounds of total income has been generated by the initial 100 pound government spend. We can calculate the tax paid on this amount very simply by multiplying it by the tax rate:

In [63]:
# calculate the total tax paid after the 5th spending round
T = theta*sum_y


So the government has recouped ~74 pounds of its original 100 pounds spending outlay by the 5th spending round. But this means that the economy is still holding on to some money. This money is the disposable income left over on the 5th and final round of spending, which would have been spent in the 6th round had we not truncated the series. We can easily calculate this amount of disposable income by determining the gross income received on the 5th spending round and then subtracting the tax paid. The equation for the gross income generated by an individual spending round without saving (originally derived here) is:

\[Y_n = (1-\theta)^nG \hspace{2cm} (2)\]

In [58]:
# solve equation 2 for the 6th spending round
y = G*(1-theta)**(rounds) # gross income

# subtract the tax paid
y_d = (1-theta)*y           # disposable income


So after 5 spending rounds, the private sector is still holding on to 26 pounds, which exactly matches the amount of the initial government spend which has not yet been collected in taxes (\(100 - 74 = 26\)). From the perspective of our accounting period (1 week), this looks indistinguishable from a scenario in which saving has occurred, despite the fact that we specified no saving. Well, we could achieve the same result by simply specifying the appropriate propensity to spend (\(\alpha\)) at the outset and allowing the full compounding of these behaviours through the cycle of spending.

The equation for calculating the fully compounded, cumulative income with saving (originally derived here) is:

\[Y = \frac {G}{1-\alpha(1-\theta)} \hspace{2cm} (3)\]

Rearranging this to solve for \(\alpha\), we get:

\[\alpha = \frac {1- \frac {G}{Y}}{1-\theta}\]

And if we plug in the income (\(Y\)) we arrived at after 5 spending rounds of the no saving scenario we can calculate the implied value for \(\alpha\).

In [59]:
alpha = (1-(G/sum_y))/(1-theta)


We get a propensity to consume of ~91%, which implies a propensity to save of ~9%. Let's test this out by using this calculated value for \(\alpha\) in equation 3.

In [60]:
sum_y = G/(1-alpha*(1-theta))


Sure enough, we get the same total income calculated using a fully compounding spending sequence with a savings rate of ~9% as we did when we looked at only 5 spending rounds with no saving. And if we check the savings and tax, we find the same (cumulative savings equation described here).

In [61]:
s = (1-alpha)*(1-theta)*sum_y
T = theta*sum_y


So we've shown that we can describe the exact same scenario by either examining: (1) a truncated number of spending rounds; or (2) the fully compounded, complete (mathematically infinite) series of spending rounds. The difference is simply accommodated by the \(\alpha\) parameter.

The fully compounding approach is preferable for at least two reasons. Firstly, as illustrated in the example above, the fully compounding approach explicitly includes a propensity to consume parameter (\(\alpha\)) which is less than \(1\) and therefore very clearly describes a scenario with private saving. This approach therefore captures the spirit of the scenario in a much more obvious way than the truncated spending round approach. In the truncated approach, there was saving occuring (in the accounting period under consideration) but this was obscured by the choice of a mathematical structure which implied no saving (an implicit spending propensity of \(1\); saving propensity of \(0\)). Even if we were comparing two scenarios with saving explicitly defined, one truncated and one fully compounded, the fully compounded approach would contain the more pertinent propensity to consume parameter. In general, it is good practice to use models which are as clear, tidy and intuitive as possible, and the use of a model which produces behaviour which is seemingly at odds with the model design and parameter choices is asking for trouble. The fully compounding approach is therefore a more reliable means of achieving a desired model scenario.

Secondly, the fully compounding approach allows us to make one less assumption about the model: namely, the number of spending rounds to consider. What's the point in setting two parameters when one will do to completely specify whatever it is we are trying to do? Importantly, this means we now also don't even have to entertain questions pertaining to how long a single spending round takes or how many spending rounds occur within a particular time period, which seemed like a bit of an awkward problem at the start. Instead, we simply satisfy ourselves with always compounding the spending through to the logical conclusion determined by our clear and deterministic tax and spending (or saving) parameters.

A more elegant approach

Now that we have convinced ourselves that we don't need to worry about individual spending rounds too much, we can lose the geometric series and look at an alternative mathematical derivation which is arguably more succinct and elegant. This approach is also more conducive to inclusion in more complex models that require additional equations.

Recall that aggregate income represents the cumulative income of successive spending events via the circular flow of spending and incomes. Previously, we wrote this as:

\[\sum_{n=0}^{\infty} Y_{n} = Y_0 + Y_1 + Y_2 + Y_3 + ... \]

Now, we know that the initial income, \(Y_0\) is due to government spending, \(G\), and so we can rewrite this as:

\[\sum_{n=0}^{\infty} Y_{n} = G + Y_1 + Y_2 + Y_3 + ... \]

Now, all of the remaining \(Y_n\) terms represent the income arising from private sector - i.e. non-government - spending. So total income is made up of two quite distinct forms of spending: government spending and private spending, the private spending being a more complicated phenomena in that it involves the circular flow of repeatedly spent incomes.

We can call this private sector spending consumption and denote it as \(C_n\), i.e. we have repeated rounds of consumption - as distinct from government spending \(G\):

\[\sum_{n=0}^{\infty} Y_{n} = G + C_1 + C_2 + C_3 + ... \]

and writing this more succinctly, we can combine the consumption terms:

\[\sum_{n=0}^{\infty} Y_{n} = G + \sum_{n=1}^{\infty} C_n \]

This equation simply states that total income is equal to government spending plus the cumulative total of subsequent private consumption spending. The term \(\sum C_n\) is called final consumption which attests to the fact that it represents the compounding of spending and incomes through a repeated, circular process, as opposed to the flow of a single spending event (the process we've thus far modelled using geometric series).

Being even more neat and tidy we can drop the \(\sum\) notation and simply write:

\[Y = G + C \hspace{1cm} (4)\]

where \(Y\) is understood to represent total aggregate income and \(C\) is understood to represent final consumption, i.e.:

\[C = \sum_{n=1}^{\infty} C_n \]

Equation 4 is now closer to the income equation that is more commonly used in models of the economy. But it looks too simple doesn't it? How can it possibly include the compounding effects of consumption spending cycle that we understood via geometric series? The answer is that we need to combine equation 4 with one other equation - one that describes the spending behaviour of the private sector. For now, let's assume non-saving behaviour for simplicity:

\[C = (1-\theta)Y \hspace{1cm} (5a)\]

This equation - termed a consumption function - defines the level of final consumption as being equal to aggregate income after tax, and simply implies that all disposable (i.e. after-tax) income is used for consumption spending, with nothing saved. We now have two equations that describe our economy, equations 4 and 5a. Notice that there are no subscripts in these equations. They do not describe individual spending rounds. Rather these are a pair of coupled equations, both referring to aggregate \(C\) and \(Y\) and therefore implying an exact solution for each.

We can solve them simultaneously if we substitute equation 5a in to equation 4:

\[Y = G + (1-\theta)Y\]

And solving for \(Y\) gives:

\[Y = \frac {G}{(1 - (1-\theta))}\]

which simplifies to:

\[Y = \frac {G}{\theta}\]

This is same result we obtained using the geometric series approach to non-saving behaviour. In other words, the values of \(C\) and \(Y\) which simultaneously satisfy equations 4 and 5a are the same as those that we rather mechanistically derived previously when considering the sequence of repeated spending and taxation cycles that occurs following government spending via geometric series.

If we want to include saving then we simply define the consumption function (equation 5a) with an additional propensity to consume term (\(\alpha\)):

\[C = \alpha(1-\theta)Y \hspace{1cm} (5b)\]

Again, we have coupled equations describing our economy, which now involves saving. To solve these equations we can substitute our new expression for \(C\) (equation 5b) into equation 4:

\[Y = G + \alpha(1-\theta)Y\]

and solving for \(Y\):

\[Y = \frac {G}{1 - \alpha(1-\theta)}\]

Again, the same result as the one derived using the geometric series approach for the saving scenario.

When viewed separately, equations 4 and 5a/5b seem to state some rather trivial things about how spending relates to income. But taken together as a system of coupled equations they describe the full effects of the fiscal multiplier: the compounding of incomes and tax revenue through repeated but diminishing cycles of consumption spending. This is much more succinct and elegant than dealing with the geometric series equations, although geometric series approach perhaps does describe what's going on more intuitively.

An advantage to this formulation is that we have separated our model in to equations which describe distinct things. Equation 4 is an identity describing the relationship of spending to income; equations 5a and 5b characterise the behaviour of folk in the private sector; we could characterise it as a "behavioural" equation. With more complicated scenarios this "separation of concerns" into a number of individual, focussed equations can provide a cleaner and more flexible system for building a mathematical model than trying to shoehorn all of the complexity into a single geometric series (although a reasonably complicated model may still be less trival to solve than the example described here).

Summing up

We started with a model of the fiscal multiplier which was rather intuitive but proceeded quite mechanically through a series of discrete spending rounds which had an ambiguous relationship with time. What we've arrived at now is a more succinct model which encapsulates the compounding effects of the cycle of spending and the implications of taxation and saving, but all within clearly defined accounting periods which represent an absolute interval of time. We can use this as a basis for building more complicated models that describe the evolution of an economy through a succession of such clearly defined time periods, with each itself incorporating the full fiscal multiplier effect. This is preferable to trying to resolve every individual spending round because: (1) we (or I!) don't know how to relate spending rounds to time; and (2) spending, on aggregate, doesn't really occur in discrete, successive rounds anyway.

The idea of modelling a succession of such "fully-compounded" accounting periods which describe an economy evolving through time leads to another type of question: what if some of the money saved in one time period is spent in a subsequent time period? This requires a more complicated consumption function that describes both spending out of income and spending out of savings during any given time period. Such an approach would effectively describe a smoothing of spending across time periods whilst still keeping the accounting within any individual time period completely watertight. This highlights the need to properly account for stocks (e.g. the total amount saved at any given point in time) as well as flows, and will hopefully be described in more detail in subsequent posts.

This post was written using the iPython Notebook

The source can be found on Github or viewed in the iPython Notebook Viewer.

The Python code used in this post is also available in script form on Github here.