diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,9 @@
 # ChangeLog for monad-logger
 
+## 0.3.37
+
+* Add `Semigroup`/`Monoid` instances to `LoggingT`, `NoLoggingT`, and `WriterLoggingT`
+
 ## 0.3.36
 
 * Export the `defaultOutput` function, useful for defining custom instances of `MonadLogger`. [#29](https://github.com/snoyberg/monad-logger/pull/29)
diff --git a/Control/Monad/Logger.hs b/Control/Monad/Logger.hs
--- a/Control/Monad/Logger.hs
+++ b/Control/Monad/Logger.hs
@@ -434,6 +434,12 @@
     return (UnliftIO (unliftIO u . runNoLoggingT))
 #endif
 
+instance (Applicative m, Semigroup a) => Semigroup (NoLoggingT m a) where
+  (<>) = liftA2 (<>)
+
+instance (Applicative m, Monoid a) => Monoid (NoLoggingT m a) where
+  mempty = pure mempty
+
 -- | @since 0.3.32
 type LogLine = (Loc, LogSource, LogLevel, LogStr)
 
@@ -554,6 +560,12 @@
           return (y, appendDList w1 w2))
 #endif
 
+instance (Applicative m, Semigroup a) => Semigroup (WriterLoggingT m a) where
+  (<>) = liftA2 (<>)
+
+instance (Applicative m, Monoid a) => Monoid (WriterLoggingT m a) where
+  mempty = pure mempty
+
 -- | Monad transformer that adds a new logging function.
 --
 -- @since 0.2.2
@@ -664,6 +676,12 @@
     withUnliftIO $ \u ->
     return (UnliftIO (unliftIO u . flip runLoggingT f))
 #endif
+
+instance (Applicative m, Semigroup a) => Semigroup (LoggingT m a) where
+  (<>) = liftA2 (<>)
+
+instance (Applicative m, Monoid a) => Monoid (LoggingT m a) where
+  mempty = pure mempty
 
 -- | A default implementation of 'monadLoggerLog' that accepts a file
 -- handle as the first argument.
diff --git a/monad-logger.cabal b/monad-logger.cabal
--- a/monad-logger.cabal
+++ b/monad-logger.cabal
@@ -1,13 +1,11 @@
 cabal-version: 1.12
 
--- This file has been generated from package.yaml by hpack version 0.33.0.
+-- This file has been generated from package.yaml by hpack version 0.34.4.
 --
 -- see: https://github.com/sol/hpack
---
--- hash: ae72d70b6bc9b10cacdb9b7f8ea8d66a762c3eab2f3799c2749514255181ebfe
 
 name:           monad-logger
-version:        0.3.36
+version:        0.3.37
 synopsis:       A class of monads which can log messages.
 description:    See README and Haddocks at <https://www.stackage.org/package/monad-logger>
 category:       System
@@ -42,7 +40,7 @@
     , conduit >=1.0 && <1.4
     , conduit-extra >=1.1 && <1.4
     , exceptions >=0.6 && <0.11
-    , fast-logger >=2.1 && <3.1
+    , fast-logger >=2.1 && <3.2
     , lifted-base
     , monad-control >=1.0
     , monad-loops
