diff --git a/src/server/api/endpoints/hashtags/trend.ts b/src/server/api/endpoints/hashtags/trend.ts
index a004732f81..f820f0bed5 100644
--- a/src/server/api/endpoints/hashtags/trend.ts
+++ b/src/server/api/endpoints/hashtags/trend.ts
@@ -1,3 +1,4 @@
+import { Brackets } from 'typeorm';
 import define from '../../define';
 import { fetchMeta } from '../../../../misc/fetch-meta';
 import { Notes } from '../../../../models';
@@ -59,6 +60,10 @@ export default define(meta, async () => {
 
 	const tagNotes = await Notes.createQueryBuilder('note')
 		.where(`note.createdAt > :date`, { date: new Date(now.getTime() - rangeA) })
+		.andWhere(new Brackets(qb => { qb
+			.where(`note.visibility = 'public'`)
+			.orWhere(`note.visibility = 'home'`);
+		}))
 		.andWhere(`note.tags != '{}'`)
 		.select(['note.tags', 'note.userId'])
 		.cache(60000) // 1 min
diff --git a/src/services/note/create.ts b/src/services/note/create.ts
index e6433ac04d..8bcf0d7d09 100644
--- a/src/services/note/create.ts
+++ b/src/services/note/create.ts
@@ -203,7 +203,9 @@ export default async (user: User, data: Option, silent = false) => new Promise<N
 	}
 
 	// ハッシュタグ更新
-	updateHashtags(user, tags);
+	if (data.visibility === 'public' || data.visibility === 'home') {
+		updateHashtags(user, tags);
+	}
 
 	// Increment notes count (user)
 	incNotesCountOfUser(user);