RankingScorer
Published weights, not a secret score.
home-mixer/params/param.rs holds the production defaults. Experiments at a notable share of traffic are supposed to land here too.
Author diversity
Each extra post from the same author is multiplied by 0.5k, floored at 0.25. First post is untouched.
Out-of-network
Non-follows × 0.75. Topic surfaces × 0.5. In-network replies and reposts take the same discount.
Mutual-follow boost
Original posts from people who follow you back add +15 to the reply head. Settled at 15 on July 24, 2026.
Every head
Run them on a post| Action | Kind | Weight | Note |
|---|---|---|---|
| Share via copy link | Engagement | +20 | Highest positive weight. Phoenix treats a copied link as a strong intent signal. |
| Reply | Engagement | +5 | Conversation is valued far above a like. Mutual follows add +15 on original posts. |
| Quote | Engagement | +5 | Same weight as a reply. Public commentary is treated as high-value engagement. |
| Share via DM | Engagement | +5 | Private forwarding is scored like a reply, not like a public share. |
| Follow author | Author | +4 | Predicted follows lift out-of-network discovery posts. |
| Share | Engagement | +2 | Generic share action. Copy-link and DM shares are scored separately and higher. |
| Repost | Engagement | +1 | Amplification without added text. Weaker than quote or reply. |
| Like | Engagement | +0.5 | Cheap, common, and therefore down-weighted. A like is not a strong ranking lever. |
| Click post | Clicks | +0.4 | Opening the post detail is a mild positive. |
| Open link | Clicks | +0.2 | Outbound clicks count, but less than staying on the post itself. |
| Click quoted post | Clicks | +0.05 | Credit for expanding the quoted post inside a quote-tweet. |
| Expand photo | Clicks | +0.05 | Media curiosity. Small, because it is common and cheap. |
| Open video | Clicks | +0.05 | Starting a video. Quality view is a separate, also-small head. |
| Video quality view | Attention | +0.05 | A qualified video view. Duration gates apply in production. |
| Unexplored post | Attention | +0.02 | Small exploration bonus. Default is in-network only. |
| Dwell time | Attention | +0.004 | Continuous dwell. Small per-unit weight; it adds up on long reads. |
| Dwell (binary) | Attention | 0 | Binary dwell head is currently weighted at 0. Continuous dwell is used instead. |
| Profile click | Clicks | 0 | Predicted but currently unused in the weighted sum. |
| Not dwelled | Negative | -0.02 | Skip / bounce. Mild, because it is common. |
| Block author | Negative | -31.2 | A predicted block is a severe penalty. Rare, so the weight is large. |
| Not interested | Negative | -43.2 | Explicit reject. Stronger than a block in the current table. |
| Mute author | Negative | -58.8 | Highest everyday negative besides report. Quiet rejection is treated as strong dislike. |
| Report | Negative | -234 | Nuclear. One predicted report wipes out almost any combination of positives. |