diff --git a/app/ldap/server/sync.js b/app/ldap/server/sync.js
index c11d9ed733675a061d102bc21116f9cc71d6086c..7d6dc753fa4fdce233d76e0ef34eef675ed1b3f4 100644
--- a/app/ldap/server/sync.js
+++ b/app/ldap/server/sync.js
@@ -337,6 +337,40 @@ export function mapLDAPGroupsToChannels(ldap, ldapUser, user) {
 	return userChannels;
 }
 
+function syncUserAvatar(user, ldapUser) {
+	if (!user?._id || settings.get('LDAP_Sync_User_Avatar') !== true) {
+		return;
+	}
+
+	const avatarField = (settings.get('LDAP_Avatar_Field') || 'thumbnailPhoto').trim();
+	const avatar = ldapUser._raw[avatarField] || ldapUser._raw.thumbnailPhoto || ldapUser._raw.jpegPhoto;
+	if (!avatar) {
+		return;
+	}
+
+	logger.info('Syncing user avatar');
+
+	Meteor.defer(() => {
+		const rs = RocketChatFile.bufferToStream(avatar);
+		const fileStore = FileUpload.getStore('Avatars');
+		fileStore.deleteByName(user.username);
+
+		const file = {
+			userId: user._id,
+			type: 'image/jpeg',
+		};
+
+		Meteor.runAsUser(user._id, () => {
+			fileStore.insert(file, rs, (err, result) => {
+				Meteor.setTimeout(function() {
+					Users.setAvatarData(user._id, 'ldap', result.etag);
+					Notifications.notifyLogged('updateAvatar', { username: user.username, etag: result.etag });
+				}, 500);
+			});
+		});
+	});
+}
+
 export function syncUserData(user, ldapUser, ldap) {
 	logger.info('Syncing user data');
 	logger.debug('user', { email: user.email, _id: user._id });
@@ -397,33 +431,7 @@ export function syncUserData(user, ldapUser, ldap) {
 		}
 	}
 
-	const avatarField = (settings.get('LDAP_Avatar_Field') || 'thumbnailPhoto').trim();
-
-	if (user && user._id && settings.get('LDAP_Sync_User_Avatar') === true) {
-		const avatar = ldapUser._raw[avatarField] || ldapUser._raw.thumbnailPhoto || ldapUser._raw.jpegPhoto;
-
-		if (avatar) {
-			logger.info('Syncing user avatar');
-
-			const rs = RocketChatFile.bufferToStream(avatar);
-			const fileStore = FileUpload.getStore('Avatars');
-			fileStore.deleteByName(user.username);
-
-			const file = {
-				userId: user._id,
-				type: 'image/jpeg',
-			};
-
-			Meteor.runAsUser(user._id, () => {
-				fileStore.insert(file, rs, (err, result) => {
-					Meteor.setTimeout(function() {
-						Users.setAvatarData(user._id, 'ldap', result.etag);
-						Notifications.notifyLogged('updateAvatar', { username: user.username, etag: result.etag });
-					}, 500);
-				});
-			});
-		}
-	}
+	syncUserAvatar(user, ldapUser);
 }
 
 export function addLdapUser(ldapUser, username, password, ldap) {