Under The Hood X Report Analyzer
Scoring Architecture Guide

How X Scores Your Posts

X does not appear to use one simple “viral score” based on likes, replies, and reposts. The current open-source X recommendation system uses a ranking model called Phoenix to predict multiple possible actions a viewer may take on a post. Those predictions are then combined by a weighted scoring stage to produce a ranking score. (GitHub)

This guide explains what the open-source code actually shows—and, importantly, what it doesn't reveal.

The Simple Version

The scoring process can be represented like this:

Post + User Context
Phoenix Model
• Like
• Reply
• Repost / Quote
• Click / Profile Click
• Share / Dwell
• Follow
• Not Interested / Block / Report
Weighted Scorer
Ranking Score → For You Feed

The important part is that Phoenix predicts a collection of engagement probabilities rather than producing one generic relevance number. (GitHub)

1 to 5. Multi-Action Prediction and Weighted Combination

1. Phoenix Predicts What a User Might Do: Rather than a single score, Phoenix outputs distinct action probabilities for 19+ engagement types (Likes, Replies, Dwells, Clicks, Blocks, etc.). (GitHub)

2. A Like Is Only One Prediction: Visible likes are just one probability among many evaluated by the transformer model.

3. The Weighted Scorer Combines Predictions: The codebase explicitly multiplies action probabilities by respective weights (e.g., favorite_score × FAVORITE_WEIGHT + reply_score × REPLY_WEIGHT + ...) before normalization. (GitHub)

4. Different Actions Have Different Weights: Replies, reposts, dwell events, and likes can contribute differently to the final score.

5. Negative Actions Are Also Predicted: Actions like "Not Interested", "Block", "Mute", and "Report" are incorporated as negative penalties. (GitHub)

6 to 12. Personalization, Isolation, Diversity, and Selection

6 & 7. Negative Feedback & Dwell Time: Predicted blocks and dwell duration allow the system to distinguish between casual scrolling and deep consumption behavior.

8 & 9. The Score Is Personalized: Because Phoenix combines candidate features with the viewer's personal engagement history, the same post receives different scores for different users.

10. Candidates Are Isolated During Ranking: Candidate posts do not directly attend to each other inside the transformer, ensuring consistent and cacheable scoring. (GitHub)

11 & 12. Author Diversity and Final Positioning: Raw recommendation scores are subsequently adjusted by Author Diversity and Out-of-Network scorers before final selection.

The Practical Scoring Model

YOUR POST + USER CONTEXT (History & Interests)
PHOENIX MODEL (Multi-Action Probabilities)
WEIGHTED SCORER (Positive + Negative Signals)
DIVERSITY & OON ADJUSTMENTS → RANKING → SELECT → FOR YOU

The key takeaway: X doesn't simply score your post. It scores the predicted value of your post for a particular viewer.

Official Open-Source References