diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,7 @@
+0.3.0.1
+
+* Do not export the `Exitcode` constructor
+
 0.3.0.0
 
 * Replace `Int` exit code representation with `NotZero` from the `natural` package, making it impossible to construct a failure with exit code 0
diff --git a/exitcode.cabal b/exitcode.cabal
--- a/exitcode.cabal
+++ b/exitcode.cabal
@@ -1,6 +1,6 @@
 cabal-version:          2.4
 name:                   exitcode
-version:                0.3.0.0
+version:                0.3.0.1
 synopsis:               Monad transformer for exit codes
 description:
   Monad transformer for exit codes
diff --git a/src/Control/Exitcode/Exitcode.hs b/src/Control/Exitcode/Exitcode.hs
--- a/src/Control/Exitcode/Exitcode.hs
+++ b/src/Control/Exitcode/Exitcode.hs
@@ -13,7 +13,7 @@
 
 module Control.Exitcode.Exitcode
   ( -- * Types
-    Exitcode (..),
+    Exitcode,
     Exitcode',
     ExitcodeBifunctor (..),
     ExitcodeBifunctor',
