diff --git a/src/server/api/common/read-notification.ts b/src/server/api/common/read-notification.ts
index 7b9faf4cf..cdb87a411 100644
--- a/src/server/api/common/read-notification.ts
+++ b/src/server/api/common/read-notification.ts
@@ -1,6 +1,7 @@
 import * as mongo from 'mongodb';
 import { default as Notification, INotification } from '../../../models/notification';
 import publishUserStream from '../../../publishers/stream';
+import Mute from '../../../models/mute';
 
 /**
  * Mark as read notification(s)
@@ -26,6 +27,11 @@ export default (
 				? [new mongo.ObjectID(message)]
 				: [(message as INotification)._id];
 
+	const mute = await Mute.find({
+		muterId: userId
+	});
+	const mutedUserIds = mute.map(m => m.muteeId);
+
 	// Update documents
 	await Notification.update({
 		_id: { $in: ids },
@@ -42,6 +48,9 @@ export default (
 	const count = await Notification
 		.count({
 			notifieeId: userId,
+			notifierId: {
+				$nin: mutedUserIds
+			},
 			isRead: false
 		}, {
 			limit: 1
diff --git a/src/server/api/endpoints/notifications/get_unread_count.ts b/src/server/api/endpoints/notifications/get_unread_count.ts
index 600a80d19..9766366ff 100644
--- a/src/server/api/endpoints/notifications/get_unread_count.ts
+++ b/src/server/api/endpoints/notifications/get_unread_count.ts
@@ -9,8 +9,7 @@ import Mute from '../../../../models/mute';
  */
 module.exports = (params, user) => new Promise(async (res, rej) => {
 	const mute = await Mute.find({
-		muterId: user._id,
-		deletedAt: { $exists: false }
+		muterId: user._id
 	});
 	const mutedUserIds = mute.map(m => m.muteeId);