diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
 # Revision history for error
 
+## 0.2.0.0 -- 2021-10-29
+
+* Add `Show` instance to `Error`.
+
 ## 0.1.1.0 -- 2021-10-28
 
 * Add `HasCallStack` to `expectError` and `unwrapError`.
@@ -8,5 +12,5 @@
 
 ## 0.1.0.0 -- 2021-06-26
 
-* Initial version. More or less feature complete, 
+* Initial version. More or less feature complete,
   unless we decide we need extra helper functions.
diff --git a/error.cabal b/error.cabal
--- a/error.cabal
+++ b/error.cabal
@@ -1,6 +1,6 @@
 cabal-version:      2.4
 name:               error
-version:            0.1.1.0
+version:            0.2.0.0
 
 synopsis: The canonical error type
 
diff --git a/src/Data/Error.hs b/src/Data/Error.hs
--- a/src/Data/Error.hs
+++ b/src/Data/Error.hs
@@ -1,4 +1,5 @@
 {-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE StandaloneDeriving #-}
 module Data.Error
   ( Error,
     -- * Error creation
@@ -43,6 +44,11 @@
 -- * more semantic context can be added to an existing @Error@ ('addContext')
 -- * pretty-printed (`prettyError`)
 newtype Error = Error [Text]
+
+-- | The 'Show' instance exists for the user’s convenience on the REPL.
+--
+-- If you want to display an error, use 'prettyError' instead.
+deriving instance Show Error
 
 -- | Create an ad-hoc 'Error' from an error message.
 newError :: Text -> Error
