diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,9 @@
+0.2.3.1
+=======
+
+*   Add missing NFData instance for `Natural` when build with
+    deepseq>=1.4 and base<4.8.
+
 0.2.3
 =====
 
diff --git a/src/System/Logger/Logger/Internal.hs b/src/System/Logger/Logger/Internal.hs
--- a/src/System/Logger/Logger/Internal.hs
+++ b/src/System/Logger/Logger/Internal.hs
@@ -79,6 +79,10 @@
 , runLogT
 ) where
 
+#ifndef MIN_VERSION_base
+#define MIN_VESION_base(a,b,c) 1
+#endif
+
 #ifndef MIN_VERSION_deepseq
 #define MIN_VESION_deepseq(a,b,c) 1
 #endif
@@ -194,11 +198,14 @@
 loggerConfigExitTimeout ∷ Lens' LoggerConfig (Maybe Natural)
 loggerConfigExitTimeout = lens _loggerConfigExitTimeout $ \a b → a { _loggerConfigExitTimeout = b }
 
+#if ! MIN_VERSION_deepseq(1,4,0) || ! MIN_VERSION_base(4,8,0)
+instance NFData Natural where
+    rnf a = a `seq` ()
+#endif
+
 #if MIN_VERSION_deepseq(1,4,0)
 instance NFData LoggerConfig
 #else
-instance NFData Natural where
-    rnf a = a `seq` ()
 instance NFData LoggerConfig where
     rnf (LoggerConfig a0 a1 a2 a3 a4 a5 a6) =
         rnf a0 `seq` rnf a1 `seq` rnf a2 `seq` rnf a3 `seq` rnf a4 `seq` rnf a5 `seq` rnf a6
diff --git a/yet-another-logger.cabal b/yet-another-logger.cabal
--- a/yet-another-logger.cabal
+++ b/yet-another-logger.cabal
@@ -1,5 +1,5 @@
 Name: yet-another-logger
-Version: 0.2.3
+Version: 0.2.3.1
 Synopsis: Yet Another Logger
 Description:
     A logging framework written with flexibility and performance
@@ -73,7 +73,7 @@
     type: git
     location: https://github.com/alephcloud/hs-yet-another-logger
     branch: master
-    tag: 0.2.3
+    tag: 0.2.3.1
 
 Library
     default-language: Haskell2010
