diff --git a/src/database/user.rs b/src/database/user.rs
index 8def8e61254c0859c960ac4507ffb2ed1458999f..0dc8d95b68c253a3241151dcb3bea34307127de1 100644
--- a/src/database/user.rs
+++ b/src/database/user.rs
@@ -130,13 +130,21 @@ impl User {
                 )
             })
             .collect();
+        
+        let guild_objects = fetch_guilds(&self.find_guilds()?)?;
+        let mut cids: Vec<String> = guild_objects
+            .iter()
+            .flat_map(|x| x.channels.clone())
+            .collect();
+
+        cids.append(&mut self.find_dms()?);
 
-        let channels: Vec<JsonValue> = fetch_channels(&self.find_dms()?)?
+        let channels: Vec<JsonValue> = fetch_channels(&cids)?
             .into_iter()
             .map(|x| x.serialise())
             .collect();
         
-        let guilds: Vec<JsonValue> = fetch_guilds(&self.find_guilds()?)?
+        let guilds: Vec<JsonValue> = guild_objects
             .into_iter()
             .map(|x| x.serialise())
             .collect();