X의 오픈 소스 랭킹 알고리즘을 분석했습니다: 당신의 게시물을 누가 보게 될지 결정하는 실제 요소
요약
X의 오픈 소스 랭킹 알고리즘을 분석하여 게시물 노출을 결정하는 참여 가중치의 원리를 설명합니다. 답글(reply)이 좋아요(like)보다 훨씬 높은 가중치를 갖는 이유를 앱 체류 시간 증대라는 목적 함수 관점에서 분석합니다.
핵심 포인트
- 답글은 좋아요보다 27배, 작성자의 답글은 150배 높은 가중치를 가짐
- 가중치 설계의 핵심 목적은 사용자의 앱 체류 시간(session length) 극대화
- 소규모 계정은 대형 계정에 답글을 다는 것이 도달 범위 확보에 유리함
- Grok을 활용한 콘텐츠 품질 점수화로 독창적이고 시의적절한 콘텐츠 선호
저는 제품을 혼자 출시합니다. 즉, 제가 마케팅 부서 역할도 겸한다는 뜻인데, 저는 마케팅에 서툽니다. 그래서 추측하는 대신, 문서(docs)가 부실할 때 개발자들이 하는 행동을 했습니다. 바로 소스 코드를 읽는 것이죠. X는 자신의 랭킹 알고리즘(ranking algorithm)을 오픈 소스로 공개했습니다. 참여 가중치(engagement weights)가 바로 거기에 적혀 있었고, 이는 왜 새로운 계정이 조회수 0을 기록하는지에 대해 거의 모든 것을 설명해 줍니다.
중요한 부분은 다음과 같습니다.
가중치 (The weights)
X는 일련의 참여 가중치(engagement weights)를 사용하여 사용자의 타임라인에 표시될 게시물의 점수를 매깁니다. 관련 수치는 다음과 같습니다:
like = 0.5
retweet = 1.0
reply = 13.5
...
(이 값들은 오픈 소스로 공개된 랭킹 알고리즘에서 널리 참조되는 값들입니다. 소수점 단위까지 절대적인 진리로 받아들이기보다는 시스템의 형태를 파악하는 용도로 간주하십시오.)
답글(reply) 하나는 좋아요(like)의 27배 가치가 있습니다. 원문 작성자가 답변을 남긴 답글은 150배의 가치를 가집니다. 이것은 반올림 오차가 아닙니다. 세 개의 숫자로 압축된 전체 설계 철학입니다.
숫자가 왜 이런 형태를 띠는가
이 가중치들은 하나의 지표, 즉 '앱 체류 시간(time on app)'을 대신하는 대리 지표입니다. X는 사용자가 머무를 때 돈을 법니다. 각 행동을 세션 길이 신호(session-length signal)로 모델링해 보겠습니다:
- 좋아요(like)는 약 500ms 정도의 상호작용이며, 그 후 당신은 계속 스크롤을 내립니다. 유지율(retention) 가치가 낮습니다.
- 답글(reply)은 당신이 멈춰서 타이핑을 하는 행위입니다. 가치가 더 높습니다.
- 작성자가 답변을 남긴 답글은 10분 동안 지속될 수 있으며 두 사용자를 반복적으로 다시 불러들이는 실시간 2인 대화입니다. 이것이 바로 잭팟이며, 75라는 가중치가 이를 명확히 보여줍니다.
랭킹을
따라서 소규모 계정에게 가장 기대 가치(EV, Expected Value)가 높은 행동은 게시물을 올리는 것이 아니라, 더 큰 계정의 글에 답글(reply)을 다는 것입니다. 답글은 해당 계정의 도달 범위(distribution)를 빌려올 수 있으며, 그 과정에서 '좋아요(like)'보다 27배 더 높은 가중치를 받기 때문입니다. 이것이 바로 '리플 가이(reply guy)' 전략이 작동하는 지루하고 기계적인 이유입니다. 이는 성장을 위한 편법(growth hack)이 아니라, 단순히 목적 함수(objective function)를 읽고 그에 따라 행동하는 것뿐입니다.
2026년의 변화: 최신성(recency)과 독창성(originality)
두 가지 요소가 더 변화했습니다. X는 Grok을 사용하여 콘텐츠 품질을 점수화하기 시작했으며, 재활용되거나 클릭베이트(clickbait) 성격이 강한 콘텐츠에 대한 크리에이터 수익 배분을 줄였습니다. 수익 배분 정책은 랭킹 정책을 예고합니다. 플랫폼이 수익을 지급하지 않기 시작하는 행동은 곧 플랫폼이 묻어버리는 법을 배우고 있는 행동입니다. 결과적으로, 시스템은 이제 빈번하고 정형화된(templated) 콘텐츠보다 독창적이고 시의적절한(timely) 콘텐츠를 선호합니다. 자신의 분야에서 뉴스에 가장 먼저 반응하는 것이, 하루에 재구성된 스레드(thread)를 다섯 개씩 올리는 것보다 더 효과적입니다.
내가 실제로 관심을 가졌던 엔지니어링 문제
여기서부터 구축하는 과정이 흥미로워졌습니다. 승리하는 전략이 "자신의 목소리로, 빠르게, 하루 종일 답글을 달고 게시물을 올리는 것"이라면, 병목 현상은 이를 수동으로 하는 것이 마치 파트타임 직업과 같다는 점입니다. 명백한 해결책(LLM을 통과시키는 것)은 새로운 품질 점수 산정 방식이 등급을 낮추는 바로 그 전형적인 저질 콘텐츠(generic slop)를 만들어냅니다. 따라서 진짜 문제는 생성이 아니라 필터(filter)입니다.
결국 나는 내가 확인하기 전에 모든 초안(draft)에 대해 실행되는 점수 산정 레이어(scoring layer)를 구축하게 되었습니다. 이 레이어는 다음과 같은 특징들을 감점합니다: 엠 대시(em dashes), 해시태그(hashtags), "delve / leverage / game-changer"와 같은 어휘, 반사적인 3개 항목 리스트, 일반적인 도입부, 수동태, 가짜 주체성 문구("the data tells us") 등입니다. 임계값 미만의 점수를 받은 초안은 다시 작성되거나 폐기되며, 절대 게시되지 않습니다. 이 게이트(gate)가 실제 제품이 되었습니다. 누구나 LLM을 호출할 수는 있습니다. 진짜 작업은 결과물이 LLM이 쓴 것처럼 읽히지 않게 만드는 것이며, 이는 X의 자체 품질 점수 산정 방식이 반대편에서 공격하고 있는 것과 동일한 문제입니다.
그 도구가 궁금하다면 VoicePost를 확인해 보세요. 이는 사용자의 니치(Niche, Hacker News, GitHub, Product Hunt, Google News, Reddit 등 사실상 인터넷 전체)를 모니터링하고, 앞서 언급한 점수 산정 게이트(scoring gate)를 적용하여 사용자가 훈련시킨 목소리로 시의적절한 게시물과 답글을 초안 작성해 주는 AI X (Twitter) 성장 도구입니다. 또한, '차단당하지 않고 홍보하기' 문제를 해결하기 위해 별도의 Reddit 엔진을 실행하는데, 이는 정말로 차원이 다른 문제입니다. Reddit의 차단은 카르마(Karma)보다는 계정 생성 기간(account-age)에 가중치를 둔 홍보에 대해 이루어지므로, 이 부분은 생성기가 아닌 워밍업 일정과 9:1 비율을 맞추는 작업이 필요합니다. 하지만 위 사항들을 활용하기 위해 반드시 도구가 필요한 것은 아닙니다. 가중치(Weights)는 공개되어 있으며 전략은 무료입니다.
요약 (TL;DR)
- X의 랭킹 알고리즘은 앱 체류 시간(time-on-app)을 최적화하기 위해, 답글(reply)에 '좋아요(like)'보다 27배 높은 가중치를 부여하며, 작성자가 답변을 남긴 답글에는 150배의 가중치를 부여합니다.
- 작은 계정은 허공에 대고 게시물을 올리는 것이 아니라, 더 큰 계정의 게시물에 답글을 달면서 성장합니다.
- 2026년에는 Grok 기반의 품질 점수 산정 방식이 추가되었고 재활용된 콘텐츠에 대한 수익 창출이 중단되었으므로, 빈번하고 템플릿화된 콘텐츠보다는 독창적이고 시의적절한 콘텐츠가 승리합니다.
- 이 과정 중 무엇이라도 자동화하려 한다면, 어려운 부분은 생성(generation)이 아니라 안티 슬롭 필터(anti-slop filter, 저질 콘텐츠 방지 필터)입니다.
직접 가중치를 확인해 보세요. 모든 것이 오픈 소스(open source)로 공개되어 있습니다. 이는 당신의 도달 범위(reach)를 조용히 결정하는 대부분의 다른 것들에 비하면 매우 이례적인 일입니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기