diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,10 @@
 # Changelog for Calamity
 
+## 0.1.25.1
+
++ Add `Upgradeable` instances for `VoiceChannnel`, `DMChannel`_, `GroupChannel`, 
+  `TextChannel`, and `Category`.
+
 ## 0.1.25.0
 
 + Changed how `ModifyGuildMemberData`, and `ModifyGuildRoleData` are implemented
diff --git a/calamity.cabal b/calamity.cabal
--- a/calamity.cabal
+++ b/calamity.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 71d166a4c21a7ffb9bf5da8669b3c29f3ba92c9447240a50efd0fad4c1804208
+-- hash: 6e705665b05a2018fff8c2a198b5edffcc7cdb2c34a9f83425214c5d2b04a62e
 
 name:           calamity
-version:        0.1.25.0
+version:        0.1.25.1
 synopsis:       A library for writing discord bots in haskell
 description:    Please see the README on GitHub at <https://github.com/nitros12/calamity#readme>
 category:       Network, Web
diff --git a/src/Calamity/Types/Upgradeable.hs b/src/Calamity/Types/Upgradeable.hs
--- a/src/Calamity/Types/Upgradeable.hs
+++ b/src/Calamity/Types/Upgradeable.hs
@@ -87,6 +87,32 @@
         insertChannel c
         maybeToAlt (c ^? _Ctor @"GuildChannel'")
 
+instance Upgradeable VoiceChannel (Snowflake VoiceChannel) where
+    upgrade s = upgrade (coerceSnowflake @_ @Channel s) <&> \case
+            Just (GuildChannel' (GuildVoiceChannel vc)) -> Just vc
+            _ -> Nothing
+
+instance Upgradeable DMChannel (Snowflake DMChannel) where
+    upgrade s = upgrade (coerceSnowflake @_ @Channel s) <&> \case
+            Just (DMChannel' dc) -> Just dc
+            _ -> Nothing
+
+instance Upgradeable GroupChannel (Snowflake GroupChannel) where
+    upgrade s = upgrade (coerceSnowflake @_ @Channel s) <&> \case
+            Just (GroupChannel' gc) -> Just gc
+            _ -> Nothing
+
+instance Upgradeable TextChannel (Snowflake TextChannel) where
+    upgrade s = upgrade (coerceSnowflake @_ @Channel s) <&> \case
+            Just (GuildChannel' (GuildTextChannel tc)) -> Just tc
+            _ -> Nothing
+
+instance Upgradeable Category (Snowflake Category) where
+    upgrade s = upgrade (coerceSnowflake @_ @Channel s) <&> \case
+            Just (GuildChannel' (GuildCategory c)) -> Just c
+            _ -> Nothing
+
+
 instance Upgradeable Emoji (Snowflake Guild, Snowflake Emoji) where
   upgrade (gid, eid) = P.runNonDetMaybe (getcache <|> gethttp)
     where
