diff --git a/CHANGES.md b/CHANGES.md
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -1,3 +1,7 @@
+Version 1.5.2
+-------------
+* Sweeten kinds more, too.
+
 Version 1.5.1
 -------------
 * Thanks to David Fox (@ddssff), sweetening now tries to use more of TH's `Type`
diff --git a/Language/Haskell/TH/Desugar/Sweeten.hs b/Language/Haskell/TH/Desugar/Sweeten.hs
--- a/Language/Haskell/TH/Desugar/Sweeten.hs
+++ b/Language/Haskell/TH/Desugar/Sweeten.hs
@@ -174,18 +174,7 @@
 typeToTH (DAppT t1 t2)          = AppT (typeToTH t1) (typeToTH t2)
 typeToTH (DSigT ty ki)          = SigT (typeToTH ty) (kindToTH ki)
 typeToTH (DVarT n)              = VarT n
-typeToTH (DConT n)
-  | n == ''[]                   = ListT
-#if __GLASGOW_HASKELL__ >= 709
-  | n == ''(~)                  = EqualityT
-#endif
-  | n == '[]                    = PromotedNilT
-  | n == '(:)                   = PromotedConsT
-  | Just deg <- tupleNameDegree_maybe n        = if isDataName n
-                                                 then PromotedTupleT deg
-                                                 else TupleT deg
-  | Just deg <- unboxedTupleNameDegree_maybe n = UnboxedTupleT deg
-  | otherwise                   = ConT n
+typeToTH (DConT n)              = tyconToTH n
 typeToTH DArrowT                = ArrowT
 typeToTH (DLitT lit)            = LitT lit
 
@@ -220,6 +209,20 @@
 kindToTH :: DKind -> Kind
 kindToTH (DForallK names ki) = ForallT (map PlainTV names) [] (kindToTH ki)
 kindToTH (DVarK n)           = VarT n
-kindToTH (DConK n kis)       = foldl AppT (ConT n) (map kindToTH kis)
+kindToTH (DConK n kis)       = foldl AppT (tyconToTH n) (map kindToTH kis)
 kindToTH (DArrowK k1 k2)     = AppT (AppT ArrowT (kindToTH k1)) (kindToTH k2)
 kindToTH DStarK              = StarT
+
+tyconToTH :: Name -> Type
+tyconToTH n
+  | n == ''[]                   = ListT
+#if __GLASGOW_HASKELL__ >= 709
+  | n == ''(~)                  = EqualityT
+#endif
+  | n == '[]                    = PromotedNilT
+  | n == '(:)                   = PromotedConsT
+  | Just deg <- tupleNameDegree_maybe n        = if isDataName n
+                                                 then PromotedTupleT deg
+                                                 else TupleT deg
+  | Just deg <- unboxedTupleNameDegree_maybe n = UnboxedTupleT deg
+  | otherwise                   = ConT n
diff --git a/th-desugar.cabal b/th-desugar.cabal
--- a/th-desugar.cabal
+++ b/th-desugar.cabal
@@ -1,5 +1,5 @@
 name:           th-desugar
-version:        1.5.1
+version:        1.5.2
 cabal-version:  >= 1.10
 synopsis:       Functions to desugar Template Haskell
 homepage:       http://www.cis.upenn.edu/~eir/packages/th-desugar
@@ -26,7 +26,7 @@
 source-repository this
   type:     git
   location: https://github.com/goldfirere/th-desugar.git
-  tag:      v1.5.1
+  tag:      v1.5.2
 
 library
   build-depends:      
