diff --git a/amazonka-core.cabal b/amazonka-core.cabal
--- a/amazonka-core.cabal
+++ b/amazonka-core.cabal
@@ -1,5 +1,5 @@
 name:                  amazonka-core
-version:               1.3.0
+version:               1.3.1
 synopsis:              Core data types and functionality for Amazonka libraries.
 homepage:              https://github.com/brendanhay/amazonka
 bug-reports:           https://github.com/brendanhay/amazonka/issues
diff --git a/src/Network/AWS/Data/Time.hs b/src/Network/AWS/Data/Time.hs
--- a/src/Network/AWS/Data/Time.hs
+++ b/src/Network/AWS/Data/Time.hs
@@ -98,7 +98,7 @@
     format :: Tagged a String
 
 instance TimeFormat RFC822    where format = Tagged "%a, %d %b %Y %H:%M:%S GMT"
-instance TimeFormat ISO8601   where format = Tagged (iso8601DateFormat (Just "%X%Q%Z"))
+instance TimeFormat ISO8601   where format = Tagged (iso8601DateFormat (Just "%X%QZ"))
 instance TimeFormat BasicTime where format = Tagged "%Y%m%d"
 instance TimeFormat AWSTime   where format = Tagged "%Y%m%dT%H%M%SZ"
 
@@ -112,13 +112,18 @@
 instance FromText ISO8601 where
     parser = (convert :: RFC822 -> ISO8601) <$> parseFormattedTime
          <|> parseFormattedTime
+         -- Deprecated, but ensure compatibility with examples until further investigation can be done
+         <|> parseFormattedTime' (Tagged $ iso8601DateFormat (Just "%X%Q%Z"))
 
 instance FromText POSIX where
     parser = Time . posixSecondsToUTCTime . realToFrac
         <$> (parser :: Parser Scientific)
 
 parseFormattedTime :: forall a. TimeFormat (Time a) => Parser (Time a)
-parseFormattedTime = do
+parseFormattedTime = parseFormattedTime' format
+
+parseFormattedTime' :: Tagged (Time a) String -> Parser (Time a)
+parseFormattedTime' f = do
     x <- Text.unpack <$> AText.takeText
     p (parseTime defaultTimeLocale (untag f) x) x
   where
@@ -131,9 +136,6 @@
         , s
         , "'"
         ]
-
-    f :: Tagged (Time a) String
-    f = format
 
 instance ToText RFC822    where toText = Text.pack . renderFormattedTime
 instance ToText ISO8601   where toText = Text.pack . renderFormattedTime
diff --git a/test/Test/AWS/Data/Time.hs b/test/Test/AWS/Data/Time.hs
--- a/test/Test/AWS/Data/Time.hs
+++ b/test/Test/AWS/Data/Time.hs
@@ -48,7 +48,7 @@
                 "Fri, 07 Nov 2014 04:42:13 GMT" (time :: RFC822)
 
             , testToText "iso8601"
-                "2014-11-07T04:42:13UTC" (time :: ISO8601)
+                "2014-11-07T04:42:13Z" (time :: ISO8601)
 
             , testToText "aws"
                 "20141107T044213Z" (time :: AWSTime)
@@ -64,7 +64,7 @@
                 "x=Fri%2C%2007%20Nov%202014%2004%3A42%3A13%20GMT" (time :: RFC822)
 
             , testToQuery "iso8601"
-                "x=2014-11-07T04%3A42%3A13UTC" (time :: ISO8601)
+                "x=2014-11-07T04%3A42%3A13Z" (time :: ISO8601)
 
             , testToQuery "aws"
                 "x=20141107T044213Z" (time :: AWSTime)
@@ -99,7 +99,7 @@
                 "Fri, 07 Nov 2014 04:42:13 GMT" (time :: RFC822)
 
             , testToXML "iso8601"
-                "2014-11-07T04:42:13UTC" (time :: ISO8601)
+                "2014-11-07T04:42:13Z" (time :: ISO8601)
 
             , testToXML "aws"
                 "20141107T044213Z" (time :: AWSTime)
@@ -137,7 +137,7 @@
                 (str "Fri, 07 Nov 2014 04:42:13 GMT") (time :: RFC822)
 
             , testToJSON "iso8601"
-                (str "2014-11-07T04:42:13UTC") (time :: ISO8601)
+                (str "2014-11-07T04:42:13Z") (time :: ISO8601)
 
             , testToJSON "aws"
                 (str "20141107T044213Z") (time :: AWSTime)
