diff --git a/purescript-iso.cabal b/purescript-iso.cabal
--- a/purescript-iso.cabal
+++ b/purescript-iso.cabal
@@ -2,10 +2,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: d9bd27f3f772661c1d156cc5f951c88b009f12d3503b2f854261cffff5c622c4
+-- hash: 7622cbeb17c52f906696206c7e02f83cd6dfb3ca454388b390a2db19162a9eae
 
 name:           purescript-iso
-version:        0.0.1.8
+version:        0.0.1.9
 synopsis:       Isomorphic trivial data type definitions over JSON
 description:    Please see the README on GitHub at <https://github.com/githubuser/purescript-iso#readme>
 category:       Web
@@ -47,6 +47,7 @@
       QuickCheck
     , aeson
     , aeson-attoparsec
+    , aeson-diff
     , async
     , attoparsec
     , attoparsec-uri >=0.0.5.1 && <0.0.6
@@ -80,6 +81,7 @@
       QuickCheck
     , aeson
     , aeson-attoparsec
+    , aeson-diff
     , async
     , attoparsec
     , attoparsec-uri >=0.0.5.1 && <0.0.6
diff --git a/src/Test/Serialization/Types.hs b/src/Test/Serialization/Types.hs
--- a/src/Test/Serialization/Types.hs
+++ b/src/Test/Serialization/Types.hs
@@ -24,6 +24,7 @@
 import Data.Aeson
   (FromJSON (..), ToJSON (..), object, (.:), (.=), Value (..), encode, decode)
 import Data.Aeson.Types (typeMismatch, Parser, parseEither)
+import Data.Aeson.Diff (diff)
 import Data.Proxy (Proxy (..))
 import Data.String (IsString)
 import Control.Applicative ((<|>))
@@ -568,7 +569,9 @@
               Just clientS' -> fmap HasClientS $ do
                 let serverG'' = serialize serverG'
                 if serverG'' /= clientS'
-                  then pure $ ServerSerializedMismatch serverG'' clientS' (encode serverG'') (encode clientS')
+                  then do
+                    putStrLn $ "Diff: " ++ show (diff serverG'' clientS')
+                    pure $ ServerSerializedMismatch serverG'' clientS' (encode serverG'') (encode clientS')
                   else ServerSerializedMatch <$> x clientS'
       serverDMatch :: IO _ -> Value -> IO (HasServerD (DesValue (ServerDeSerializedMatch _)))
       serverDMatch x clientS' = do
@@ -593,7 +596,9 @@
               Just serverS' -> fmap HasServerS $ do
                 let clientG'' = serialize clientG'
                 if clientG'' /= serverS'
-                  then pure $ ClientSerializedMismatch clientG'' serverS' (encode clientG'') (encode serverS')
+                  then do
+                    putStrLn $ "Diff: " ++ show (diff clientG'' serverS')
+                    pure $ ClientSerializedMismatch clientG'' serverS' (encode clientG'') (encode serverS')
                   else ClientSerializedMatch <$> x serverS'
       clientDMatch :: Value -> IO (HasClientD (DesValue (ClientDeSerializedMatch ())))
       clientDMatch serverS' = do
