diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,7 @@
+## 0.3.20.1
+
+* Fix #106 by correcting the default signature for MonadLoggerIO [#108](https://github.com/kazu-yamamoto/logger/pull/108)
+
 ## 0.3.20
 
 * Generalize the type of `unChanLoggingT`
diff --git a/Control/Monad/Logger.hs b/Control/Monad/Logger.hs
--- a/Control/Monad/Logger.hs
+++ b/Control/Monad/Logger.hs
@@ -215,8 +215,8 @@
     --
     -- Since 0.3.10
     askLoggerIO :: m (Loc -> LogSource -> LogLevel -> LogStr -> IO ())
-    default askLoggerIO :: (Trans.MonadTrans t, MonadLogger (t m), MonadIO (t m))
-                        => t m (Loc -> LogSource -> LogLevel -> LogStr -> IO ())
+    default askLoggerIO :: (Trans.MonadTrans t, MonadLoggerIO n, m ~ t n)
+                        => m (Loc -> LogSource -> LogLevel -> LogStr -> IO ())
     askLoggerIO = Trans.lift askLoggerIO
 
 
diff --git a/monad-logger.cabal b/monad-logger.cabal
--- a/monad-logger.cabal
+++ b/monad-logger.cabal
@@ -1,5 +1,5 @@
 name:                monad-logger
-version:             0.3.20
+version:             0.3.20.1
 synopsis:            A class of monads which can log messages.
 description:         Hackage documentation generation is not reliable. For up to date documentation, please see: <http://www.stackage.org/package/monad-logger>.
 homepage:            https://github.com/kazu-yamamoto/logger
