Log-linearizing
Thijs van Rens
January 23, 2008
1 What log-linearization is and how to do it
� Log-linearization means nothing else than linearization (i.e.
rst-order
Taylor approximation) in logs.
Just like for linearization, the
rst question is log-linearize around
what?. We typically (log-)linearize our models around the steady
state or (for more complicated models with frictions) around the
frictionless steady state.
A technicality: if a variable has a zero steady state (like e.g. the
nominal interest rate in a new Keynesian model), then we cannot
log-linearize around the steady state for that variable. In that case,
we normally log-linearize around 1+ the variable, so that the original
variable reappears in the log-linearized model.d1 + i = log (1 + i)� log (1 +�{) ' i
� Compared to linearization in levels log-linearization has some advantages:
Many models in economics are approximately log-linear, so log-linearization
might be a better approximation than linearization.
The variables in the log-linearized model are easy to interpret because
they are relative deviations from steady state.
x^ = log x� log �x ' x� �x
�x
Parameters in the log-linearized model are easy to interpret because
they are elasticities.
� There are several ways to log-linearize, some more cumbersome than oth-
ers, depending on the speci
c equation:
1. Linearize and substract and divide by steady state (example 1 below)
2. Linearize in logs: let x = logX, so that X = ex and linearize around
x
1
A variant of this is to substitute
x = elog x = elog �xelog x�log �x = �xex^
for all variables and linearize around x^ (see example 2 below)
It is sometimes useful to know some Taylor approximations by
heart, in particular (Uhlig, see Canova p.53):
ex^ ' 1 + x^
x^y^ ' 0
Learn a few tricks by heart (see below)
� For all methods, it is important to realize that we can switch derivatives
and integrals and are therefore allowed to (log)linearize inside the expec-
tations operator.
1.1 Example 1
� Log-linearizing the Euler equation in the RBC model by linearizing and
then substracting and dividing by the steady state.
The Euler equation
u0 (ct) = �Et [At+1F1 (Kt+1; ht+1)u0 (ct+1)]
Linearizing left-hand side:
u0 (ct) ' u0 (�c) + u00 (�c) (ct � �c)
Linearizing right-hand side:
�Et [At+1F1 (Kt+1; ht+1)u
0 (ct+1)]
' � �AF1
�
�K; �h
�
u0 (�c) + �F1
�
�K; �h
�
u0 (�c)
�
EtAt+1 � �A
�
+�u0 (�c) �A
�
F11
�
�K; �h
� �
EtKt+1 � �K
�
+ F12
�
�K; �h
� �
Etht+1 � �h
��
+� �AF1
�
�K; �h
�
u00 (�c) (Etct+1 � �c)
By the original equation, the steady state terms drop out on both
sides
Divide by steady state (left and right steady state are the same)
u00 (�c)
u0 (�c)
(ct � �c) '
�F1
�
�K; �h
�
u0 (�c)
� �AF1
�
�K; �h
�
u0 (�c)
�
EtAt+1 � �A
�
+
�u0 (�c) �A
� �AF1
�
�K; �h
�
u0 (�c)
�
F11
�
�K; �h
� �
EtKt+1 � �K
�
+ F12
�
�K; �h
� �
Etht+1 � �h
��
+
� �AF1
�
�K; �h
�
u00 (�c)
� �AF1
�
�K; �h
�
u0 (�c)
(Etct+1 � �c)
2
Making it look nice:
�cu00 (�c)
u0 (�c)
c^t ' EtA^t+1+
�KF11
�
�K; �h
�
F1
�
�K; �h
� EtK^t+1+�hF12 � �K; �h�
F1
�
�K; �h
� Eth^t+1+�cu00 (�c)
u0 (�c)
Etc^t+1
With CRRA utility and Cobb Douglas production function
u (c) =
1
1� � c
1��; F (K;h) = K�h1��
��c^t ' EtA^t+1 � (1� �)
�
EtK^t+1 � Eth^t+1
�
� �Etc^t+1
U¤!
1.2 Example 2
� Same example, but linearizing in logs
Directly log-linearize (using Taylor approximation):
u0
�
�cec^t
�
= �Et
h
�AeA^t+1F1
�
�KeK^t+1 ; �heh^t+1
�
u0
�
�cec^t+1
�i
�c��e��c^t = �Et
h
�AeA^t+1� �K�(1��)e�(1��)K^t+1�h1��e(1��)h^t+1�c��e��c^t+1
i
�c��e��c^t = � �A� �K�(1��)�h1���c��Et
h
eA^t+1e�(1��)K^t+1e(1��)h^t+1e��c^t+1
i
e��c^t = Et
h
eA^t+1e�(1��)K^t+1e(1��)h^t+1e��c^t+1
i
1� �c^t ' Et
h�
1 + A^t+1
��
1� (1� �) K^t+1
��
1 + (1� �) h^t+1
�
(1� �c^t+1)
i
' Et
h
1 + A^t+1 � (1� �) K^t+1 + (1� �) h^t+1 � �c^t+1
i
��c^t ' EtA^t+1 � (1� �)
�
EtK^t+1 � Eth^t+1
�
� �Etc^t+1
Note: it looks like we could have just taken logs, but then how do
we deal with the expectation operator? So, even though the original
equation is multiplicative, this is still an approximation!
2 Some useful tricks
1. z = xy ) z^ = x^+ y^
2. z = x=y ) z^ = x^� y^
3. z = ax) z^ = x^
4. z = xa ) z^ = ax^
5. z = x+ y ) z^ = �x�z x^+ �y�z y^
3
� These are just tricks that you may want to learn by heart in order to
save time. There is nothing mystical about them: all are easily proven by
linearizing and dividing by the steady state.
2.1 Example 3
� This is the neoclassical growth model from question 1 in the
rst problem
set. I log-linearize the equations using the tricks.
Euler equation
c^t+1 =
d
��Ak
�(1��)
t+1 ct
=
d
k
�(1��)
t+1 ct by trick 3
=
d
k
�(1��)
t+1 + c^t by trick 1
= � (1� �) k^t+1 + c^t by trick 4
Resource constraint
k^t+1 = dAk�t � ct
=
�y
�y � �c
dAk�t + ��c�y � �cd�ct by trick 5
where �y = A�k�
k^t+1 =
�y
�y � �c
ck�t � �c�y � �c bct by trick 3
=
��y
�y � �c
bkt � �c
�y � �c bct by trick 4
Often, we like to simplify notation a bit by writing something like
k^t+1 = � (1 +
) bkt �
bct
where
= �c= (�y � �c).
4