diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,10 @@
 
 ## Unreleased
 
+## 0.6.3.0
+
+* GHC 9.8 support
+
 ## 0.6.2.0
 
 * Expose generic type constructors `T4` through `T10`. (We only exposed `T`, `T1`, `T2`, and `T3` before.)
diff --git a/aeson-typescript.cabal b/aeson-typescript.cabal
--- a/aeson-typescript.cabal
+++ b/aeson-typescript.cabal
@@ -5,7 +5,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           aeson-typescript
-version:        0.6.2.0
+version:        0.6.3.0
 synopsis:       Generate TypeScript definition files from your ADTs
 description:    Please see the README on Github at <https://github.com/codedownio/aeson-typescript#readme>
 category:       Text, Web, JSON
diff --git a/src/Data/Aeson/TypeScript/Transform.hs b/src/Data/Aeson/TypeScript/Transform.hs
--- a/src/Data/Aeson/TypeScript/Transform.hs
+++ b/src/Data/Aeson/TypeScript/Transform.hs
@@ -45,7 +45,9 @@
             name' <- lift $ newName (nameBase typeFamilyName <> "'")
 
             f <- lift $ newName "f"
-#if MIN_VERSION_template_haskell(2,17,0)
+#if MIN_VERSION_template_haskell(2,21,0)
+            let inst1 = DataD [] name' [PlainTV f BndrReq] Nothing [] []
+#elif MIN_VERSION_template_haskell(2,17,0)
             let inst1 = DataD [] name' [PlainTV f ()] Nothing [] []
 #else
             let inst1 = DataD [] name' [PlainTV f] Nothing [] []
