diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,12 @@
+# 0.1.3.0
+
+- Added a manual flag `nothunks`, which is on by default. Switching this flag
+  off removes the `NoThunks` instance for `MonoidMap`, and removes `nothunks`
+  from the dependencies of `monoidmap`.
+
+- The `NoThunks` instance for `MonoidMap` will move to a separate
+  `monoidmap-nothunks` package in a future major version of `monoidmap`.
+
 # 0.1.2.0
 
 - Changed the `NoThunks` instance for `MonoidMap` to report `MonoidMap`
diff --git a/components/monoidmap/Data/MonoidMap.hs b/components/monoidmap/Data/MonoidMap.hs
--- a/components/monoidmap/Data/MonoidMap.hs
+++ b/components/monoidmap/Data/MonoidMap.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP #-}
 {-# LANGUAGE RoleAnnotations #-}
 {-# OPTIONS_GHC -fno-warn-redundant-constraints #-}
 {-# OPTIONS_GHC -fno-warn-unused-imports #-}
@@ -231,8 +232,10 @@
     ( Set )
 import GHC.Exts
     ( IsList (Item) )
+#ifdef NOTHUNKS
 import NoThunks.Class
     ( NoThunks (showTypeOf, wNoThunks) )
+#endif
 import Text.Read
     ( Read (..) )
 
@@ -629,6 +632,7 @@
 fromListConstr :: Constr
 fromListConstr = mkConstr dataType "fromList" [] Prefix
 
+#ifdef NOTHUNKS
 --------------------------------------------------------------------------------
 -- Instances: NoThunks
 --------------------------------------------------------------------------------
@@ -637,6 +641,7 @@
 instance (NoThunks k, NoThunks v) => NoThunks (MonoidMap k v) where
     showTypeOf _ = "MonoidMap"
     wNoThunks ctx = wNoThunks ctx . toMap
+#endif
 
 --------------------------------------------------------------------------------
 -- Instances: Semigroup and subclasses
@@ -2779,7 +2784,7 @@
 -- greatest map that is both a /suffix/ of __@m1@__ and a /prefix/ of __@m2@__:
 --
 -- @
--- m1 '==' r1 '<>' o \  \
+-- m1 '==' r1 '<>' o
 -- m2 '=='    \  \ o '<>' r2
 -- @
 --
@@ -2862,7 +2867,7 @@
 -- __@r2@__:
 --
 -- @
--- m1 '==' r1 '<>' o \  \
+-- m1 '==' r1 '<>' o
 -- m2 '=='    \  \ o '<>' r2
 -- @
 --
@@ -2944,7 +2949,7 @@
 -- __@r1@__:
 --
 -- @
--- m1 '==' r1 '<>' o \  \
+-- m1 '==' r1 '<>' o
 -- m2 '=='    \  \ o '<>' r2
 -- @
 --
@@ -3025,7 +3030,7 @@
 -- __@(r1, o, r2)@__, where:
 --
 -- @
--- m1 '==' r1 '<>' o \  \
+-- m1 '==' r1 '<>' o
 -- m2 '=='    \  \ o '<>' r2
 -- @
 --
diff --git a/monoidmap.cabal b/monoidmap.cabal
--- a/monoidmap.cabal
+++ b/monoidmap.cabal
@@ -1,6 +1,6 @@
 cabal-version:  3.0
 name:           monoidmap
-version:        0.1.2.0
+version:        0.1.3.0
 homepage:       https://github.com/jonathanknowles/monoidmap
 bug-reports:    https://github.com/jonathanknowles/monoidmap/issues
 license:        Apache-2.0
@@ -17,6 +17,14 @@
     CHANGELOG.md
     README.md
 
+flag nothunks
+    description:
+        Provide a `NoThunks` instance for `MonoidMap`.
+        This instance will move to the `monoidmap-nothunks` package
+        in a future version of the `monoidmap` package.
+    default: True
+    manual: True
+
 common dependency-base
     build-depends:base                          >= 4.14.3.0   && < 4.23
 common dependency-containers
@@ -34,7 +42,9 @@
 common dependency-monoidmap-internal
     build-depends:monoidmap-internal            >= 0.5.0.0    && < 0.6
 common dependency-nothunks
-    build-depends:nothunks                      >= 0.1.3      && < 0.4
+    if flag(nothunks)
+        build-depends:nothunks                  >= 0.1.3      && < 0.4
+        cpp-options:-DNOTHUNKS
 common dependency-pretty-show
     build-depends:pretty-show                   >= 1.10       && < 1.11
 common dependency-QuickCheck
