기술

추천이 매번 같은 5건이었습니다 - 사용자가 추론하기 전에 시스템이 먼저 말해야 합니다

2026.05.2210분 읽기

"왜 매번 같은 항목만 나오지?"

PM 도구의 "오늘의 할 일" 추천 기능을 운영하다가 사용자 피드백이 들어왔습니다.

"추천이 매번 같은 5건만 나오는데요?"

처음에는 알고리즘 문제일 거라 생각했습니다. 추천 로직이 단조롭게 만들거나, 가중치가 한쪽으로 쏠려 있거나, 아니면 후보 다양성을 보장하는 로직이 빠졌거나. 알고리즘 코드를 열어볼 준비를 했습니다.

그런데 원인 분석을 해보니 다른 답이 나왔습니다. 알고리즘은 정상이었어요. 다른 후보들이 추천 풀에 아예 안 들어오고 있었습니다.

원인은 단순했습니다. 다른 프로젝트의 할 일들은 상태가 "대기"였지만 마감일 필드가 비어 있었어요. 추천 알고리즘은 마감일을 기준으로 후보를 선정하는데, 마감일이 없으면 후보 풀에 진입조차 못 하는 구조였습니다.

이게 의도된 동작이었습니다. 마감일 없는 항목까지 추천에 넣으면 노이즈가 폭증하니까요. 알고리즘은 정상이고, 데이터가 부족한 게 본질이었습니다.

문제는 이 사실을 사용자가 모르고 있었다는 점이었습니다.


사용자가 추론하면 UX 비용이 발생합니다

사용자 입장에서 보면 상황은 이렇습니다.

추천이 매번 같은 5건만 나옴

왜 그런지 사용자는 모름

추론 시도: "알고리즘이 이상한가?", "내가 뭘 잘못 설정했나?", "다른 항목들은 왜 안 보이지?"

추론 실패 → 그냥 불편함만 누적

이 추론 과정 자체가 UX 비용이에요. 사용자는 시스템의 내부 동작을 모르는 게 정상이고, 안 알려주면 추론할 수밖에 없습니다. 추론이 맞으면 다행이지만, 보통 틀린 결론에 도달합니다. "이 도구는 이상하네"로 끝나는 경우가 많습니다.

사용자에게 추론 부담을 떠넘기지 말고, 시스템이 먼저 설명해주는 게 답이었습니다.


3가지 대응 옵션의 트레이드오프

"추천이 단조롭다"는 사용자 신호에 대응하는 방법은 보통 세 가지입니다.

옵션

동작

트레이드오프

A. 알고리즘 조정

마감일 없는 항목도 후보에 포함

노이즈 증가, 의도된 가드 해제

B. 가이드 문서

"마감일 채우면 다양해져요" 도움말 추가

사용자가 안 읽음, 도움말 위치 모름

C. 시스템이 직접 알림

컨텍스트 줄에 "마감 미정 N건" 표시

메타데이터 노출 비용, alert 남발 위험

옵션 A — 알고리즘 조정

가장 직관적인 대응입니다. 마감일 없는 항목도 후보에 포함시키면 추천이 다양해집니다. 다만 그러면 마감일 없는 항목이 모든 추천에 섞여서 노이즈가 폭증합니다. "오늘 할 일"인데 언제 해야 할지 모르는 항목들이 추천되는 격이에요. 사용자가 "오늘 무엇부터"라는 질문에 대한 답을 받기 어려워집니다.

옵션 B — 가이드 문서

"마감일을 채우면 추천이 다양해집니다" 같은 도움말을 도구 어딘가에 추가합니다. 정공법이지만 효과가 약합니다. 사용자가 도움말을 찾아 읽을 동기가 약하고, 위치를 모르면 존재해도 의미가 없습니다. 도움말 페이지 조회수는 보통 사용자의 1% 미만입니다.

옵션 C — 시스템이 직접 알림

추천 화면의 컨텍스트 줄에 짧은 메타데이터를 노출합니다. "⚠ 마감 미정 N건"이라는 amber 색 표시가 추천 결과 옆에 함께 보입니다. 마우스를 올리면 tooltip으로 "대기 plan에 마감일 채우면 후보로 잡힙니다"라는 안내가 뜹니다.

장점: 사용자가 자연스럽게 인지, 다음 액션이 명확
단점: alert 남발 시 무뎌짐 (중요도 임계값 필요)

선택은 옵션 C였습니다. 알고리즘은 그대로 두고, 후보 풀의 메타데이터를 노출해서 사용자가 직접 데이터를 채우게 유도하는 방식이었어요.

추천이 매번 같은 5건이었습니다 - 사용자가 추론하기 전에 시스템이 먼저 말해야 합니다 그림 1


메타데이터 노출의 구체 디자인

옵션 C를 어떻게 구현했는지 정리해보겠습니다.

컨텍스트 줄에 짧은 alert

추천 결과 위쪽에 한 줄로 메타데이터를 표시했습니다.

오늘의 할 일 (5건)
⚠ 마감 미정 N건

amber 색을 썼어요. 빨간색은 너무 강하고, 회색은 눈에 안 들어오는데, amber는 "주의해서 보세요" 정도의 적정 강도입니다.

0건이면 숨김

마감 미정이 0건이면 alert 자체를 표시하지 않습니다. "0건"이라는 정보가 의미 없을 뿐 아니라 화면 노이즈를 만듭니다. 표시할 가치가 있을 때만 표시한다는 원칙이었어요.

Hover tooltip으로 행동 가이드

alert에 마우스를 올리면 tooltip이 뜹니다.

대기 plan에 마감일 채우면 후보로 잡힙니다

짧은 한 줄. 사용자가 알아야 할 다음 액션이 명확하게 적혀 있습니다. "왜 이게 나오지"의 답과 "어떻게 바꾸지"의 답이 함께 들어가요.

alert + tooltip 조합의 의미

이 두 가지 조합이 핵심이었습니다.

alert: 주의를 끄는 짧은 신호

tooltip: 깊이 있는 행동 가이드

alert만 있으면 "뭐 어쩌라는 거지?"가 되고, tooltip만 있으면 발견 자체가 어렵습니다. 두 가지를 같이 깔아야 발견과 행동이 자연스럽게 이어집니다.


단조로운 출력은 입력 부족의 신호입니다

이번 사건에서 얻은 일반 통찰입니다.

단조로운 출력 = 입력 부족의 신호

추천이 단조로울 때 본능적으로는 알고리즘을 의심하게 됩니다. "알고리즘이 이상한가?" 하고 코드부터 열어보죠. 그런데 많은 경우 알고리즘은 정상이고, 입력 데이터의 풍부함이 부족한 게 원인입니다.

같은 패턴이 다른 시스템에서도 보입니다.

검색 결과가 빈약함 → 보통 인덱스 데이터 부족

필터 결과가 항상 비슷함 → 필터링 기준 필드가 비어 있음

AI 답변이 단조로움 → 컨텍스트 입력이 빈약함

분석 대시보드가 의미 없음 → 원천 데이터가 부족함

알고리즘을 손보기 전에 입력을 점검하는 게 일반 원칙이에요. 입력이 정상인데 출력이 이상하면 알고리즘 문제고, 입력 자체가 부족하면 입력을 채우는 게 답입니다.

사용자가 입력을 채우게 만들려면 시스템이 신호를 줘야 합니다. 입력 부족의 사실을 사용자에게 명확히 알려야 사용자가 채우러 갑니다. 안 알려주면 사용자는 시스템이 이상하다고만 느낍니다.

추천이 매번 같은 5건이었습니다 - 사용자가 추론하기 전에 시스템이 먼저 말해야 합니다 그림 2


의사결정자가 점검할 4가지

추천 시스템·검색·필터·AI 인터페이스를 검토하실 때 점검할 일반 체크리스트입니다.

1. 단조로운 출력 시 입력부터 점검합니다

알고리즘을 의심하기 전에 입력 데이터의 풍부함을 봅니다. 입력이 부족한 게 원인이면 알고리즘을 손봐도 해결 안 됩니다. 입력 → 알고리즘 → 출력 순서로 점검합니다.

2. 사용자에게 추론 부담을 떠넘기지 않습니다

시스템이 어떤 가드를 가지고 있고, 왜 이런 출력이 나오는지를 사용자에게 명시적으로 보여줍니다. 사용자가 추론해서 시스템 내부 동작을 짐작하게 만들면 UX 비용이 누적됩니다.

3. 메타데이터 노출이 액션 트리거가 됩니다

"마감 미정 N건" 같은 짧은 메타데이터가 사용자의 다음 액션을 명확하게 만듭니다. 가이드 문서는 안 읽혀도, 인라인 alert는 즉시 행동을 유발합니다. 단, 임계값을 정해서 alert 남발은 피합니다.

4. alert + tooltip 조합으로 발견과 행동을 연결합니다

alert만 있으면 "뭐 어쩌라는 거지?"가 되고, tooltip만 있으면 발견이 어렵습니다. alert로 주의를 끌고, hover tooltip으로 깊이 있는 행동 가이드를 제공합니다.

비슷한 발상이 다른 운영 결정에서도 흐릅니다. 사용자가 추론하게 두지 않는 것, 시스템 내부 상태를 적절히 노출하는 것, 다음 액션이 자연스럽게 이어지게 만드는 것. 좋은 UX의 핵심 기준입니다.


마무리

추천이 매번 같은 5건만 나오는 문제는 알고리즘이 아니라 후보 풀에 진입하지 못한 데이터가 원인이었습니다. 다른 항목들의 마감일 필드가 비어 있었기 때문입니다. 알고리즘 조정 대신, 후보 풀의 메타데이터(마감 미정 N건)를 컨텍스트 줄에 amber 색 alert로 노출하고 hover tooltip으로 행동 가이드를 추가하는 방식을 선택했습니다.

핵심 교훈은 세 가지입니다.

단조로운 출력은 알고리즘 문제가 아니라 입력 부족의 신호일 수 있다 — 입력 → 알고리즘 → 출력 순서로 점검

사용자에게 추론 부담을 떠넘기지 않는다 — 시스템이 먼저 설명하면 다음 액션이 명확해짐

메타데이터 노출이 곧 액션 트리거다 — alert + tooltip 조합으로 발견과 행동을 연결

추천 시스템·검색·필터·AI 인터페이스를 검토하신다면, 이번 글의 4가지 체크리스트(입력 점검 / 추론 부담 회피 / 메타데이터 노출 / alert + tooltip 조합)를 한 번 살펴보시길 추천합니다. 사용자가 추론하게 두는 순간 UX 비용이 누적되고, 시스템이 먼저 설명하면 사용자는 다음 액션으로 자연스럽게 이어집니다.

#UX#추천시스템#사용자경험#메타데이터노출#제품설계#운영의기술