I suspect that a lot of us will throw the codebase into an LLM and ask it to summarize the highlights. So to save everyone time and tokens, below is a Opus 4.5 generated summary of the algorithm.
X's For You feed algorithm uses a Grok-based transformer model (Phoenix) to predict the likelihood that you'll engage with a post in 19 different ways. Each type of engagement is a "signal" that tells us how relevant or interesting a post is to you.
The algorithm doesn't just predict one score—it predicts 19 separate probabilities, one for each type of engagement:
These 19 predictions are then combined using a weighted formula to produce a final relevance score for each post. Posts with higher scores appear higher in your feed.
Positive actions like favorites and retweets have positive weights (boost the score), while negative actions like blocks and reports have negative weights (lower the score).
The attributes are organized into four tiers based on engagement type and depth. While the exact numerical weights are proprietary, this organization reflects the logical importance hierarchy used in social media ranking.
These are the primary actions that require deliberate user effort and clearly indicate content quality. These are universally the strongest signals across all social media platforms.
What it is: Writing and posting a comment in response to the post
Why it matters: Requires significant effort and time investment. Replies indicate the content sparked enough interest to warrant a thoughtful response.
Signal type: Positive - Very Strong
Easy explanation: How likely are you to reply to this post?
What it is: Sharing the post to your own followers
Why it matters: You're putting your reputation on the line by sharing this content with your audience. This is one of the strongest endorsements possible.
Signal type: Positive - Very Strong
Easy explanation: How likely are you to repost this to your followers?
Code reference:retweet_score in weighted_scorer.rs
Note: Called "repost" in the model output but "retweet" in the scoring code
These actions show interest but require less effort than core engagements. They're valuable supporting signals that help the algorithm understand what catches your attention.
What it is: Watching a video for a meaningful duration (high-quality view)
Why it matters: Video engagement is valuable because it requires sustained attention. This measures whether you actually watched (not just scrolled past).
Signal type: Positive - Moderate to Strong
Easy explanation: How likely are you to watch this video?
Code reference:vqv_score in weighted_scorer.rs
Special note: Only applied to videos longer than a minimum duration threshold (see weighted_scorer.rs)
What it is: Sending the post directly to someone in a private message
Why it matters: Personal recommendation to a specific person. This is one of the strongest signals—you're explicitly telling someone "you need to see this."
Signal type: Positive - Very Strong
Easy explanation: How likely are you to send this post to someone in a direct message?
Code reference:share_via_dm_score in weighted_scorer.rs
These are actions that explicitly tell the algorithm "I don't want to see this." They carry negative weights in the scoring formula to suppress similar content in the future.
What it is: Muting the post's author to stop seeing their content
Why it matters: Strong negative signal—you don't want to see content from this creator anymore. Not as severe as blocking but indicates content fatigue or annoyance.
Signal type: Negative - Strong
Easy explanation: How likely are you to mute this author?
Code reference:mute_author_score in weighted_scorer.rs
This document describes the 19 engagement attributes and how they're used in the scoring formula. However, the following details are proprietary and not included in the open-source release:
Exact weight values: The specific FAVORITE_WEIGHT, REPLY_WEIGHT, etc. constants are in the params module which is not open-sourced
Weight optimization process: How the weights were tuned or learned
Weight relationships: The relative magnitudes between different weights
Threshold values: Specific values for minimum video duration, score offsets, etc.
What IS open-sourced:
The 19 attributes being predicted
The scoring formula structure (Score = Σ weight × probability)
The entire Phoenix transformer architecture
The complete candidate pipeline and filtering logic