How to go Viral on the New X Algorithm
A Visual Guide to X’s Open Source Release
No matter what you do, don’t get reported. Better to get blocked than to get muted. Replies and link shares are the best way to boost. Effort investigated the latest open-source X algorithm release. This is the tip of the iceberg.
These scores come from the “Phoenix” app, a part of the X algorithm that predicts how likely users are to block, like, copy the link, or interact with a tweet in other ways.1 Based on those odds, it gives the post a score.
What affects tweet score?2
The results of three apps are combined to craft the home feed. “Phoenix“ is the first. “Thunder” serves tweets from people you follow. “Simclusters”, an older feature returning in the new X algorithm, finds accounts similar to your own. There’s a hard cap to each: 1200 for Thunder, 1000 for Phoenix, and 800 for Simclusters.3
Simclusters - the algorithmic version of “This Part of Twitter” - adds tweets to your feed from people with similar followers and similar interests.4 It constantly reweighs posts based on who liked them and people based on which posts they liked.
Within SimClusters, posts decay with an 8-hour half-life, prioritizing new posts.5
After all that, tweets from all three sources arrive at the Home Mixer. The Home Mixer filters these tweets based on 3 hardcoded penalties.8
There are 25% penalties for replies and for tweets from non-followers. Both penalties are increased to 50% if the reader is scrolling through a topic section.7 Finally, the algorithm penalizes multiple tweets from the same user with an exponential decay that bottoms out at a 75% penalty.
Same-author Penalty
There’s a special filter on political topics that rewards consistency in posting the same kind of content. Topics like Politics, Elections, News and the Iran War, can be set to three different consistency filters, which remove everyone who doesn’t spend 50%, 75%, or 90% of their most recent tweets talking about that topic.9
There are two hidden lists — V0 and V1 — of special accounts to promote under certain filters. Despite open-sourcing this penalty, X has not released these special lists.
| Mode | Value | Rule |
|---|---|---|
Unfiltered | 0 | Keep every topic label |
CuratedV0 | 1 | Keep a topic when the author appears in its V0 curated category |
CuratedV0V1 | 2 | Use the imported V1 author-to-category map |
PostBased90Pct | 3 | The topic appears in at least 90% of the author’s recent qualifying posts |
PostBased75Pct | 4 | The topic appears in at least 75% of the author’s recent qualifying posts |
PostBased50Pct | 5 | The topic appears in at least 50% of the author’s recent qualifying posts |
Bit by bit, X is becoming more transparent. That process reveals ham-fisted filters and hardcoded numbers. Nonetheless, X remains the most open social media algorithm to date.
Footnotes
Phoenix supplies the action predictions; Home Mixer applies the published weights in the primary scoring defaults and ranking implementation.
Excluded from visual: Photo expand (+0.05); Video open (+0.05); Video-quality view (+0.05); Quoted-post click (+0.05); Post unexplored (+0.02); Not dwelled (−0.02); Dwell time (+0.004/s).
Reply definitions: Reply (mutual) — Viewer follows the author, author follows the viewer, and the candidate is neither a reply nor a repost; Reply (ordinary) — Every other reply candidate.The checked-in source caps are defined together in the Home Mixer parameters; the SimClusters source also imposes its own 800-candidate cap.
SimClusters builds account clusters in the KnownFor updater, aggregates viewer interests from follows and favorites in InterestedIn, and retrieves posts through the Home source.
The streaming SimClusters configuration sets the post-vector half-life to eight hours.
Simulation of the released algorithm using example data for entry times and original post scores.
The primary multiplier defaults and ranking code define the out-of-network, topic-request, reply/repost, and author-diversity reductions.
Mechanism Score retained Reduction Scope Standard out-of-network original 0.750000 25% Posts by accounts outside the viewer’s follow graph Topic-request out-of-network original 0.500000 50% Topic-filtered requests In-network reply or repost 0.75 / 0.50 25% / 50% Treated like out-of-network content; topic requests use 0.50 Same author: first item 1.000000 0% Formula: 0.75 × 0.5k + 0.25, where k counts earlier items by that author Same author: second item 0.625000 37.5% Same author: third item 0.437500 56.25% Same author: fourth item 0.343750 65.625% Same author: fifth item 0.296875 70.3125% Same author: long-run floor 0.250000 75% Home Mixer ranking stages:
Stage Details Request context Recent actions, following, blocks, mutes, topics, and seen and served history. Retrieve + hydrate Thunder, Phoenix and SimClusters candidates plus post, media, author, label, language and engagement data. Eligibility + dedupe Cross-source deduplication, age, access, blocks and mutes, and seen and served posts. Score + rerank Phoenix action predictions, the weighted sum and score adjustments, then VM Ranker reranking. Select + visibility Top-K selection, per-post visibility filtering and conversation deduplication. Additional feed sources Ads, Who to Follow, prompts and modules. Blend feed items BlenderSelector interleaves modules and enforces ad adjacency before the For You timeline is returned. Home Mixer Ranking
A simplified Home Mixer ranking flow. Request context leads to candidate retrieval and hydration, eligibility and deduplication, scoring and reranking, then selection and visibility filtering. Ranked posts and additional feed sources connect to the feed-blending stage before delivery to the For You timeline. The accompanying footnote explains every stage. POST PIPELINE Request context Retrieve + hydrate Eligibility + dedupe Score + rerank Select + visibility BLENDING PIPELINE Additional feed sources Blend feed items ranked posts For You timeline A mobile layout of the simplified Home Mixer ranking flow. Request context moves through retrieval and hydration, eligibility and deduplication, scoring and reranking, then selection and visibility filtering. Ranked posts join additional feed sources at the blending stage before delivery to the For You timeline. The accompanying footnote explains every stage. POST PIPELINE Request context Retrieve + hydrate Eligibility + dedupe Score + rerank Select + visibility BLENDING PIPELINE ranked posts Additional feed sources Blend feed items For You timeline The six mode values and the post-based index builder show the 50%, 75%, and 90% tests across typically the author’s 15 most recent qualifying posts.
| Action or factor | Weight | Effect of a +0.01 prediction change | Condition |
|---|---|---|---|
| Report | −234 | −2.34 | Prediction head |
| Mute author | −58.8 | −0.588 | Prediction head |
| Not interested | −43.2 | −0.432 | Prediction head |
| Block author | −31.2 | −0.312 | Prediction head |
| Share by copy link | +20 | +0.2 | Prediction head |
| Reply · mutual | +20 | +0.2 | Effective base +5 and conditional +15 |
| Reply · ordinary | +5 | +0.05 | Base reply context |
| Share by direct message | +5 | +0.05 | Prediction head |
| Quote | +5 | +0.05 | Prediction head |
| Follow author | +4 | +0.04 | Prediction head |
| Share | +2 | +0.02 | Prediction head |
| Repost | +1 | +0.01 | Prediction head |
| Favorite | +0.5 | +0.005 | Prediction head |
| Post click | +0.4 | +0.004 | Prediction head |
| Open link | +0.2 | +0.002 | Prediction head |
| Photo expand | +0.05 | +0.0005 | Prediction head |
| Video open | +0.05 | +0.0005 | Prediction head |
| Video-quality view | +0.05 | +0.0005 | Viewer has fewer than 10,000 followers; video is longer than 10 seconds |
| Quoted-post click | +0.05 | +0.0005 | Prediction head |
| Post unexplored | +0.02 | +0.0002 | Additive; in-network only |
| Not dwelled | −0.02 | −0.0002 | Prediction head |
| Dwell time | +0.004 | +0.00004 | Continuous-value head |