diff --git a/Criterion/Main.hs b/Criterion/Main.hs
--- a/Criterion/Main.hs
+++ b/Criterion/Main.hs
@@ -75,7 +75,6 @@
 import System.Environment (getProgName)
 import System.Exit (ExitCode(..), exitWith)
 import System.FilePath.Glob
-import System.IO.CodePage (withCP65001)
 
 -- | An entry point that can be used as a @main@ function.
 --
@@ -147,7 +146,7 @@
 defaultMainWith :: Config
                 -> [Benchmark]
                 -> IO ()
-defaultMainWith defCfg bs = withCP65001 $ do
+defaultMainWith defCfg bs = do
   wat <- execParser (describe defCfg)
   runMode wat bs
 
diff --git a/Criterion/Monad.hs b/Criterion/Monad.hs
--- a/Criterion/Monad.hs
+++ b/Criterion/Monad.hs
@@ -21,11 +21,12 @@
 import Criterion.Monad.Internal (Criterion(..), Crit(..))
 import Criterion.Types hiding (measure)
 import Data.IORef (IORef, newIORef, readIORef, writeIORef)
+import System.IO.CodePage (withCP65001)
 import System.Random.MWC (GenIO, createSystemRandom)
 
 -- | Run a 'Criterion' action with the given 'Config'.
 withConfig :: Config -> Criterion a -> IO a
-withConfig cfg (Criterion act) = do
+withConfig cfg (Criterion act) = withCP65001 $ do
   g <- newIORef Nothing
   runReaderT act (Crit cfg g)
 
diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,8 @@
+1.5.3.0
+
+* Make more functions (e.g., `runMode`) able to print the `µ` character on
+  non-UTF-8 encodings.
+
 1.5.2.0
 
 * Fix a bug in which HTML reports would render incorrectly when including
diff --git a/criterion.cabal b/criterion.cabal
--- a/criterion.cabal
+++ b/criterion.cabal
@@ -1,5 +1,5 @@
 name:           criterion
-version:        1.5.2.0
+version:        1.5.3.0
 synopsis:       Robust, reliable performance measurement and analysis
 license:        BSD3
 license-file:   LICENSE
@@ -24,8 +24,8 @@
   GHC==7.10.3,
   GHC==8.0.2,
   GHC==8.2.2,
-  GHC==8.4.3,
-  GHC==8.6.1
+  GHC==8.4.4,
+  GHC==8.6.2
 
 data-files:
   templates/*.css
@@ -99,7 +99,7 @@
     mwc-random >= 0.8.0.3,
     optparse-applicative >= 0.13,
     parsec >= 3.1.0,
-    statistics >= 0.14 && < 0.15,
+    statistics >= 0.14 && < 0.16,
     text >= 0.11,
     time,
     transformers,
diff --git a/examples/Maps.hs b/examples/Maps.hs
--- a/examples/Maps.hs
+++ b/examples/Maps.hs
@@ -7,7 +7,6 @@
 import Data.ByteString (ByteString, pack)
 import Data.Hashable (Hashable)
 import System.Random.MWC
-import qualified Data.CritBit.Map.Lazy as C
 import qualified Data.HashMap.Lazy as H
 import qualified Data.IntMap as I
 import qualified Data.Map as M
@@ -71,16 +70,8 @@
            , bench "random"    $ whnf hashmap random
            , bench "revsorted" $ whnf hashmap revsorted
            ]
-         , bgroup "CritBit" [
-             bench "sorted"    $ whnf critbit sorted
-           , bench "random"    $ whnf critbit random
-           , bench "revsorted" $ whnf critbit revsorted
-           ]
          ]
        ]
-
-critbit :: (G.Vector v k, C.CritBitKey k) => v k -> C.CritBit k Int
-critbit xs = G.foldl' (\m k -> C.insert k value m) C.empty xs
 
 hashmap :: (G.Vector v k, Hashable k, Eq k) => v k -> H.HashMap k Int
 hashmap xs = G.foldl' (\m k -> H.insert k value m) H.empty xs
diff --git a/examples/criterion-examples.cabal b/examples/criterion-examples.cabal
--- a/examples/criterion-examples.cabal
+++ b/examples/criterion-examples.cabal
@@ -17,8 +17,8 @@
   GHC==7.10.3,
   GHC==8.0.2,
   GHC==8.2.2,
-  GHC==8.4.3,
-  GHC==8.6.1
+  GHC==8.4.4,
+  GHC==8.6.2
 
 flag conduit-vs-pipes
   default: True
@@ -59,7 +59,6 @@
     base == 4.*,
     bytestring,
     containers,
-    critbit,
     criterion,
     deepseq,
     hashable,
