Skip to main content
All posts
Algorithm

How the X algorithm actually works in 2026.

Replies beat reposts beat likes. The 30-minute window decides everything. What the For You algorithm rewards now, and what it quietly suppresses.

Daniel Smidstrup

Founder of ClimbX

Follow on X

I grew my X account from 0 to 10K followers in 137 days.

9 min read
Exploded-diagram illustration of an X post and the reactions the ranking model predicts, replies and reposts up, mutes down, drawn in charcoal lines on cream with orange highlights.

The For You feed decides who reads your posts. The follower-only Following feed is the minority case for most accounts now, and almost all reach comes from algorithmic recommendations to people who don't follow you yet. Understanding the ranking model is no longer optional if you want to grow.

X open-sourced the original ranking code in 2023 and later refreshed the release as xai-org/x-algorithm - a runnable, end-to-end For You pipeline built around a Grok-based transformer. The weights and the model have shifted, but the architecture is still the same retrieval plus ranking sandwich. Reading the actual code is the best way to see how reach is calculated. This post walks through what the algorithm measures, ranked by impact, and what it quietly demotes. Where a public number exists, I cite it. Where my read is based on operating an account through the changes, I say so.

The first 30 minutes decide everything

A post's score is calculated continuously, but the curve is heavily front-loaded. Engagement velocity in the first 15 to 30 minutes is the single largest signal for whether a post breaks out. After about 90 minutes, the ranker has mostly decided. After 24 hours, your post is effectively dead unless someone with a much larger account quotes or replies to it.

That leads to three practical rules.

  • Post when your audience is actually online. A post that gets 50 replies in the first 30 minutes outperforms an identical post that gets 200 replies over 12 hours.
  • Reply to your own post within the first few minutes. Adding context, a follow-up thought, or a question keeps engagement velocity high while the ranker is still deciding.
  • Don't post and walk away. The first hour is when your presence in the replies matters most. Engaging with early commenters multiplies their incentive to engage back.

The open-source code now spells out a small-account boost that makes the first two hours count even more. Details and dates are in the next section.

What changed in September and October 2026

Checked against the published code on October 25, 2026. Each change below is a default value in home-mixer/params/param.rs or a file the README names.

  • September 30: the small-account boost got wider and shorter. In this update the follower cap went from 1,000 to 50,000, the view ceiling from 1,000 to 200, and the age limit from 48 hours to 2 hours. The boost covers original posts only, not replies or reposts. Per feed load, at most one eligible post is lifted to about the 16th slot, and the pick now favors posts with more likes per view so far.
  • October 7: a popular posts source joined For You. In this update a shared list of popular recent posts was switched on as a new source. The README says it starts with posts from the most-followed active accounts. The list keeps posts from the last 24 hours, at most 5 per author, ranked by views for their age.
  • October 7: one small weight went down. The weight on a predicted "post unexplored" signal dropped from 0.02 to 0.015. It only applies to posts from accounts the viewer follows. The code does not say what the signal measures, so treat any claim that it is a "new post weight" as a guess.

October 2026 update

Checked October 25, 2026. One ranking change went live in the code. The engagement weights did not change.

  • October 21 and 22: "fair-share" trimming was added, then switched on. X scores up to 2,800 candidate posts per feed load. When it finds more than that, it has to drop some. The October 21 update added a filter that drops the same share from each source. Posts from accounts you follow and posts X found for you elsewhere each keep their slice. It shipped switched off. The October 22 update turned it on by default.
  • Time spent is being tested, not ranked on. The October 20 update points one test model at a viewer history built around long reads. It runs on shadow traffic, a copy of feed requests that is not what you see. If you read a claim that X now ranks by time spent, the code does not show that yet.
  • The weights stayed the same. The code has two weight files. I compared both at the October 17 and October 24 versions. Neither file's engagement weights changed. In home-mixer/params/param.rs a predicted reply is weighted 5.0, a like 0.66, a repost 1.0 and a reader stopping on a post (dwell) 0.05. In vm-ranker/params.rs reply, repost and dwell are the same, and a like is 0.5.

What it means for you: a small account's best shot at strangers is now the first two hours, with likes from its first couple of hundred viewers. Meanwhile big accounts got a new path into the same feeds. Post when your followers are awake, and stay in the replies while the post is young.

How predicted actions shape ranking

The current For You system predicts how likely each viewer is to take actions such as liking, replying, sharing, dwelling, visiting a profile, blocking, or reporting. It then combines those predictions with weights before applying additional scoring and filtering. The implementation and configuration are published in xai-org/x-algorithm.

Predicted actionWhat it suggests
ReplyThe viewer may join the conversation
RepostThe viewer may distribute the post to others
Profile visit after seeing postThe post may create interest in the author
Video played at least halfThe viewer may spend meaningful time with the media
LikeThe viewer may respond positively
Negative feedbackThe viewer may block, report, mute, or ask for less

X clarified on August 14, 2026 that these weights scale predicted probabilities for an individual viewer. They do not scale raw engagement counts. So you cannot turn one reply, report, or block into a fixed number of likes. That clarification matters because a points-based reading encourages bait instead of useful posts.

The useful writing lesson is not to maximize one raw action. Create posts that the right viewer is likely to read, discuss, share, and value without producing blocks, reports, or other negative feedback. A healthy mix of real responses says more than a made-up exchange rate between engagement types.

What X actively demotes

The visible signals get attention. The quiet demotions matter just as much. These are the categories the ranker is known to suppress, in rough order of how much they cost you.

External links

A post containing a URL to a domain X doesn't own gets a meaningful reach penalty. Founders who post studies, articles, or product links eat this every day. The workaround that actually works is to post the content as a thread or screenshot in the post itself, and put the link in the first reply. Reach on the original stays clean. People who care will scroll for the link.

AI-generated content

X has been tightening detection of fully-AI-written posts since 2025. Posts that read like a model wrote them get throttled. The signals X uses are not public, but people who run accounts see demotion on posts that fit common LLM patterns: long sentences, hedged claims, em-dashes, tricolons, and stock openers like "the truth is" or "here's the thing." Posts that get heavily edited by a human, or that include personal specifics no model would invent, don't see the same throttle.

"Show less often" feedback

The three-dot menu on every post has a "Not interested" and a "Show less from this account" option. Each tap is a strong negative signal, and the ranker treats it as a long-term penalty against your account, not just that post. The most reliable way to earn these is to bait engagement without delivering value. A post that goes viral on outrage will frequently underperform on the next ten posts that follow it.

New accounts and low-trust accounts

The published code does not put new accounts in a penalty box. Its cold-start logic is a boost: original posts from accounts with up to 50,000 followers can be lifted while they are under two hours old and under 200 views. Account age is not one of its checks. What still costs you is likely negative feedback: the predicted chance of a block, mute, report or "not interested" carries a negative weight. My read from running an account: a real profile, a verified email and phone, consistent posting and real replies from established accounts help a new account get past the early quiet.

The author features the ranker scores

Each post is also scored by who wrote it. The ranker reads a feature vector for the author and uses it as a multiplier on the engagement score. The features that matter most.

  • Premium subscriber. X Premium accounts get a documented boost in For You ranking. The boost is largest in the replies-to-large-accounts case, which is why Premium replies tend to surface above non-Premium replies on a popular post.
  • Follower-to-following ratio.A high ratio signals that the account earned its followers. Following back everyone who follows you suppresses this feature and is one of the easier mistakes to fix.
  • Recent engagement rate.The ratio of engagement to impressions on your last 30 days of posts. A run of weak posts drags this down for weeks. One outlier doesn't fix it. Consistency does.
  • Reciprocal engagement graph.The accounts you reply to, and that reply to you, form a private graph the ranker uses to seed early reach. Posts get shown first to accounts in your graph, and those accounts' reactions drive whether the post breaks out beyond it.

The reply window is where most accounts actually grow

The reciprocal engagement graph point deserves its own section because it explains the single largest mistake small accounts make. Posts from accounts under 5,000 followers rarely break out of the author's own network on their own. Posts that earn an early reply from an account with 50,000+ followers regularly do.

The big win is being in the replies of large accounts during the first 15 to 30 minutes after they post. A sharp reply that gets liked by the original author exposes your account to that author's full reader pool for the duration of the post's lifecycle. One good reply can produce more impressions than a week of your own posts.

This is also the mechanic that AI-generated reply tools poison. Bulk AI replies get flagged, suppressed, and increasingly reported, and the accounts running them get throttled at the profile level. The reply-window mechanic only works when the reply is actually good. There's no shortcut.

What this means if you're trying to grow

The ranker is not a black box. It rewards specific behavior and penalizes specific behavior, and the patterns are stable across the last two years of updates. Here is one short list to work from.

  1. 1Post when your audience is awake. Reply velocity in the first 30 minutes is worth more than total engagement over a day.
  2. 2Write posts that earn a reply, not just a like. A specific claim, a contradiction, a question someone has a real answer to.
  3. 3Keep links out of the post. Put them in the first reply.
  4. 4Reply early on posts from accounts 2 to 5 times your size. That's where your reach ceiling actually moves.
  5. 5Don't bulk-post AI text. Heavy human editing is the difference between a post that ships and a post the ranker quietly buries.
  6. 6Watch your "show less often" rate. One bait post that earns mutes hurts the next ten posts you ship.

The algorithm rewards specific, replyable, human posts written by accounts with a real reciprocal graph. That's also what readers actually want. Most of the time, the algo rewards the right thing for the right reason. The mistake is treating "what works on X" as a separate question from "what's worth posting." It usually isn't.

ClimbX builds around these rules.

You get a 30-day calendar of posts in your voice, drafted from what worked for 3 to 5 accounts ahead of you in your niche. Reply-friendly hooks, no links in the post, edit-before-publish on every draft. ClimbX does the drafting. You decide what goes out.

Read next

Sources

Allow optional cookies for ads, analytics and referrals? Privacy details