How the X algorithm actually works, by its own numbers
- Author
- SpacerrX Team
- Published on
- July 28, 2026
- Updated on
- July 28, 2026
- Reading time
- 6 min read
Almost everything written about the X algorithm is vibes. Post at 9am. Threads are dead. Threads are back. Nobody sourcing any of it.
There is a better source. X open-sourced its recommendation code, and the ranking weights inside it are specific, public, and say something genuinely uncomfortable: the timeline is not scoring your post on whether it is good, or even on how many people liked it. It is predicting whether the post will start a conversation, and it punishes irritation roughly seven hundred times harder than it rewards approval.
Once you have seen the actual numbers, most X advice sorts itself into "follows from this" and "someone made it up."
What the For You timeline is actually doing
Every refresh runs the same three stages:
- Candidate sourcing. Roughly 1,500 posts are pulled as candidates, split about half from accounts you follow and half from accounts you don't. That out-of-network half is the entire reason a stranger's post can reach you, and the entire reason yours can reach strangers.
- Ranking. A neural network scores each candidate by predicting how likely you are to take each of several actions on it. Each predicted action carries a weight. The weighted sum is the score.
- Filtering. Heuristics run last: no two consecutive posts from the same author, nothing you have already seen, nothing from accounts you muted or blocked.
The part worth internalizing is stage two. Your post never competes on quality. It competes on a predicted-engagement score, and that score is a specific formula with specific numbers in it.
What the published weights say
These are the relative weights from the ranking code X made public, ordered by how much they move the score:
| What the model predicts | Weight |
|---|---|
| A reply, which the author then replies back to | 75 |
| A reply | 13.5 |
| A profile click that leads to a like or reply | 12 |
| Two minutes or more of dwell time on the post | ~10 |
| A repost | 1 |
| A like | 0.5 |
| "Show less often" on your post | -74 |
| A report, block, or mute | -369 |
Fair caveat: those exact multipliers are a snapshot, and X has certainly retuned them since. The ordering is the durable part, and it has held in every version that has been public. Treat the numbers as a shape, not a spec.
Why one reply is worth roughly 27 likes
13.5 against 0.5. A single reply moves your score about as much as twenty-seven likes do. A reply you answer moves it about as much as a hundred and fifty.
Sit with what that does to the leaderboard. A post with 40 likes and no conversation scores below a post with 3 replies you answered. The metric sitting in the biggest font on your screen is the one the ranker weights lowest of everything it counts.
This also quietly explains a thing every creator notices and misattributes: the post you thought was your best one, the polished, complete, nothing-left-to-say post, underperformed the half-formed one. A finished post is a dead end. There is nothing to add. Nobody replies to a closed door.
The number that should change your behavior is -369
One report, block, or mute cancels about 738 likes. One "show less often" cancels about 148.
That asymmetry is the whole ballgame, and it is why engagement bait fails as a strategy rather than merely as an aesthetic. "Like if you agree", mass-tagging strangers, copy-pasting the same reply under forty posts: these do generate cheap engagement. They also generate the one signal that costs two orders of magnitude more than the engagement is worth. You do not need many annoyed people to erase a good week.
Read the negative weights as the platform's actual instruction: it is far more concerned with not wasting people's attention than with rewarding you for getting it. Most "shadowban" stories are this arithmetic, working exactly as designed, on an account that spent a month farming.
So what should you actually post?
Everything above collapses into five rules:
- Write posts that can be answered. Take a position, leave a gap, ask a question you actually want answered. The goal is not agreement, it is a reason to type.
- Answer your replies. It is the single highest-weighted action in the whole table, it is free, and almost nobody does it consistently. Every reply you answer is worth about a hundred and fifty likes to the post's score, and it makes the next reply likelier.
- Stop optimizing for likes. They are the cheapest signal you can earn and the least valuable one you can be given.
- Say the thing in the post. X has been consistent that it favors content that keeps people on the platform, and creators consistently measure lower reach on posts carrying an outbound link. If you need the link, put it in the first reply.
- Don't be muteable. Nothing else on this list survives contact with an audience that finds you tiring.
Worth naming what is not on that list: posting time, hashtags, thread length, emoji count. None of them appear in the weights. They matter only in so far as they change whether a human replies.
Why replying under other people's posts is the cheap way in
The rules above assume people already see you. At a small account they don't, and no amount of post-craft fixes a distribution problem: half the candidate pool is in-network, and your network is small.
Replies invert it. A reply under a big account's fresh post rides their distribution to their audience, which is your target audience by definition, and it earns the highest-weighted signal in the table on their post while putting your name in front of everyone reading. That is why nearly every account that grew from zero in the last few years grew reply-first. We wrote the full mechanic up in reply-first growth, and being early is most of it, which is what makes live trends in your niche worth watching.
What the algorithm cannot do for you
It cannot make a generic post interesting. Every weight in that table is downstream of a human deciding you were worth answering, and nothing sounds less worth answering than text that could have come from anyone.
This is the real cost of generic AI writing on X. It does not get you penalized; it gets you scrolled, which the model reads as a weak signal and prices accordingly. Sounding like yourself is not a branding preference here, it is the input the whole formula depends on. We went deeper on that in sound like yourself, not like AI, and on staying safe while you scale in the ban-safe playbook.
Running the loop without living in the app
None of this is complicated. It is just relentless: find the fresh posts worth answering, write something genuinely additive under each, answer everyone who replies to you, every day. Done by hand that is hours, which is why most people do it for two weeks.
That grind is what SpacerrX is for. It drafts posts and replies in your own voice, learned from how you actually write, surfaces what is taking off in your niche so you are early rather than late, and keeps the whole loop inside x.com. You review and send each one, which keeps the pace human and the account safe. The strategy is still yours. The typing is the part worth automating.
The one-line version
The timeline is a conversation-prediction engine with a heavy penalty for annoyance. Write things people answer, to people who won't mute you. Everything else is a rounding error.