diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,10 @@
 The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
 and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
 
+## 0.9.21
+### Removed
+- Removed unnecessary logging.
+
 ## 0.9.20
 ### Changed
 - Better log messages.
diff --git a/haskoin-node.cabal b/haskoin-node.cabal
--- a/haskoin-node.cabal
+++ b/haskoin-node.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 3105ca1d000db59e33f68ffd6a2ed2990da90f79557b1a3f38798d486912a3b9
+-- hash: 2cbb34333781c523b209d86f7674b1a21365315ce08863477817a85165e96af3
 
 name:           haskoin-node
-version:        0.9.20
+version:        0.9.21
 synopsis:       Haskoin Node P2P library for Bitcoin and Bitcoin Cash
 description:    Bitcoin and Bitcoin Cash peer-to-peer protocol library featuring headers-first synchronisation.
 category:       Bitcoin, Finance, Network
diff --git a/src/Network/Haskoin/Node/Chain.hs b/src/Network/Haskoin/Node/Chain.hs
--- a/src/Network/Haskoin/Node/Chain.hs
+++ b/src/Network/Haskoin/Node/Chain.hs
@@ -22,7 +22,8 @@
     ( chain
     ) where
 
-import           Control.Monad               (forever, guard, void, when)
+import           Control.Monad               (forever, guard, unless, void,
+                                              when)
 import           Control.Monad.Except        (runExceptT, throwError)
 import           Control.Monad.Logger        (MonadLoggerIO, logErrorS,
                                               logInfoS)
@@ -105,7 +106,7 @@
 processHeaders p hs =
     void . runMaybeT $ do
         net <- chainConfNetwork <$> asks myReader
-        $(logInfoS) "Chain" $
+        unless (null hs) . $(logInfoS) "Chain" $
             "Importing " <> cs (show (length hs)) <> " headers"
         now <- round <$> liftIO getPOSIXTime
         pbest <- getBestBlockHeader
