diff --git a/serial-test-generators.cabal b/serial-test-generators.cabal
--- a/serial-test-generators.cabal
+++ b/serial-test-generators.cabal
@@ -1,5 +1,5 @@
 Name:                   serial-test-generators
-Version:                0.1.2
+Version:                0.1.3
 Author:                 Scott <scottmurphy09@gmail.com>
 Maintainer:             Scott <scottmurphy09@gmail.com>
 License:                MIT
@@ -26,6 +26,7 @@
                       , binary >= 0.6.3.0
                       , cereal >= 0.3.5.0
                       , bytestring >= 0.9.0
+                      , here
                         
 
 Test-Suite spec
@@ -44,6 +45,7 @@
                       , bytestring
                       , transformers >= 0.3.0
                       , system-fileio
+                      , here
 
 
 Source-Repository head
diff --git a/src/Test/Serial.hs b/src/Test/Serial.hs
--- a/src/Test/Serial.hs
+++ b/src/Test/Serial.hs
@@ -1,3 +1,7 @@
+{-# LANGUAGE TemplateHaskell #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE QuasiQuotes #-}
 {- |
 Module      :  Test.Serial
 Description :  Test.Serial run serialization tests against static files
@@ -11,9 +15,6 @@
 -}
 
 
-{-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE DeriveGeneric #-}
-
 module Test.Serial (runAesonSerializationTest
                    , runBinarySerializationTest
                    , runCerealSerializationTest
@@ -25,6 +26,7 @@
 import qualified Data.ByteString as BStrict
 import qualified Data.ByteString.Lazy as BLazy
 import           GHC.Generics
+import Data.String.Here.Interpolated (i)
 import           System.IO (withFile, IOMode(..),hIsEOF)
 --------------------------------------------------
 
@@ -65,13 +67,18 @@
         (Right a) 
           |(A.toJSON . makeMockAesonInference $ a) == (A.toJSON.makeMockAesonInference $ dataUnderTest)
            -> return . Right $ a
-          |otherwise -> return . Left . AesonError $ "Serializations do not match"
-  
+          |otherwise -> return . Left . AesonError . explainError (A.toJSON . makeMockAesonInference $ a) $ (A.toJSON . makeMockAesonInference $ dataUnderTest)
+
     writeOutputAndExit h = do
       putStrLn "file not found, writing given serialization to disk, rerun tests"
       BLazy.hPut h $ A.encode dataUnderTest
       return . Left $ NoFileFound
 
+explainError old new = [i|
+  JSON doesn't match: 
+   old:  ${old}
+   new:  ${new}
+  |]
 
 
 
@@ -146,5 +153,4 @@
       putStrLn "file not found, writing given serialization to disk, rerun tests"
       BStrict.hPut h $ C.encode dataUnderTest
       return . Left $ NoFileFound
-
 
