Skip to content
Algorithm updatesX ranking weights

Algorithm updates

What X's published ranking weights reward

X's open ranking code weights a copy-link share at 20 and a like at 0.5. What the October 2026 values mean for clips, and why they are not counts.

Updated October 4, 202610 min read7 sources

In short

In X's open-source ranking code, read on October 4, 2026, a predicted copy-link share has the highest positive weight (20), then reply, quote and DM share (5 each), follow (4), share (2), repost (1) and like (0.5). Report (-234), mute (-58.8), not interested (-47.52) and block (-31.2) pull a post down. The weights multiply the model's predicted probability that one viewer takes each action, not your post's raw counts, and X changes them often.

On this page
  1. X publishes its For You weights, but each value is a dated snapshot
  2. The weights scale predictions, not your like count
  3. The default weights on October 4, 2026
  4. Video gets almost no direct credit for being watched
  5. Four steps change the score after the weighted sum
  6. The values drift: what changed between August and October 2026
  7. What a clipper should do with these weights
  8. What the weights do not tell you
  9. Questions
  10. Sources

X publishes its For You weights, but each value is a dated snapshot

X has published the code that builds its For You feed in the xai-org/x-algorithm repository on GitHub since January 20, 2026, and the weights themselves since August 13, 2026. The weights are the numbers that say how much each predicted viewer action counts toward a post's score. They live in one file: home-mixer/params/param.rs.

We read that file on October 4, 2026, at commit b412112 of October 3. The first line of the file says it was "mirrored from config feature-switch defaults", with a last sync on October 2, 2026 at 16:00 UTC. If you want the exact version we quote, open the file at that commit.

Treat every number in this article as a snapshot. The repository README says X runs cron scripts that set the code defaults "to be the primary production values". The same README says X runs experiments on a small share of traffic and aims to show experiments that reach about 10% of traffic or more in the repository. So the defaults describe what most users get, not what every user gets.

The update rhythm also changed. After the first release, the next commits came on May 15 and August 13, 2026. From August 13 to October 3, X pushed new commits on most weekdays. Some of those commits changed weights, as the table further down shows.

The weights scale predictions, not your like count

X's ranking model, called Phoenix, looks at one viewer's recent activity and predicts, for each candidate post, how likely that viewer is to like it, reply, share it, block the author and so on. The scorer then adds up each prediction times its weight: Final Score = sum of (weight × predicted probability).

This is the most common misreading of the file. X added a note to the README on August 14, 2026 saying it is incorrect to read the report weight as "1 report cancels out 468 likes". The comments in param.rs give the reason: the baseline probability of a report is "more than 1000x lower than a Like", so the weight must be large for the prediction to change the ranking at all.

Two more points from the same code comments matter for clippers:

  • Personalization limits mass reports. Because each prediction is per viewer, X says reports from bad actors mainly affect recommendations to users who resemble those bad actors.
  • Only Home Timeline engagement trains the ranking. The comment says an action counts only on a post served in the Home Timeline, and that "Directly navigating to a post (i.e., coordinating via groupchat) has no ranking impact."

Our reading: sending a campaign clip link to a Discord or Telegram group and asking people to like it does not feed the ranking signals X describes. It can still break campaign rules on artificial engagement.

The default weights on October 4, 2026

These are the values in param.rs on the date we read it. The right column is our reading for a clip post, not X's wording.

Predicted actionWeightWhat it means for a clip
Share via copy link20The strongest positive signal. A viewer copying the post link to send elsewhere
Reply5 (20 from a mutual follow)Conversation counts heavily. A mutual-follow boost adds 15 for original posts
Quote5Someone quoting your clip with their own text
Share via DM5Sending the post inside X messages
Follow author4The clip makes the viewer follow you
Share (generic)2Other share actions
Repost1Worth twice a like
Like0.5The weakest common action
Click into the post0.3Opening the post detail
Open link0.2Tapping a link in the post
Video open0.07Opening the video player
Dwell / photo expand0.05 eachStopping on the post / opening an image
Video quality view0No credit in the current defaults
Not dwelled-0.02Scrolling past without stopping
Block author-31.2Strong negative
Not interested-47.52Strong negative
Mute author-58.8Strong negative
Report-234Largest weight, but the rarest action

Three continuous values also count: dwell time (0.004), time spent after a click (0.4) and a small bonus for unexplored posts from accounts the viewer follows (0.02). Profile clicks carry 0.

The mutual-follow boost comes from a July 2026 change. X's own write-up of that change says an A/B test began on July 10, a boost of 20 reached many users on July 13, and X set it to 15 on July 24. It applies only to original posts (not replies or reposts) from authors the viewer follows who follow the viewer back.

Video gets almost no direct credit for being watched

For clippers, the most surprising number is the video quality view (VQV) weight. It is the model's prediction that a viewer gives the video a quality view; the repository does not define the watch threshold. In the August 13, 2026 release its default was 0.05. In the commit of August 25, 2026 it went to 0.0, and the dwell weight went from 0.0 to 0.05 at the same time. It was still 0.0 on October 4.

The code also limits which videos can earn a VQV at all: the video must run longer than 10,000 milliseconds (10 seconds). A 9-second clip could not collect VQV credit even if the weight came back.

Our reading: under the current defaults, a clip climbs For You because the model predicts that viewers will share, reply, quote or follow, not because it predicts a full watch. A clip that people watch to the end but never share has little to push it. The model may still learn that well-watched clips get shared more, so watch time can matter indirectly. X has not said this. For the video side in detail, see video and links on X in 2026.

Four steps change the score after the weighted sum

The weighted sum is not the final order. In the current code, the next steps run in a separate reranking service, vm-ranker, whose defaults are in vm-ranker/params.rs.

  • Author diversity. Your second-best post in one feed request is multiplied by 0.625, the third by 0.4375, the fourth by about 0.34, and later posts approach a floor of 0.25. The code uses a decay of 0.5 and a floor of 0.25 in the formula (1 - floor) × decay^n + floor.
  • Out-of-network discount. Posts from accounts the viewer does not follow are multiplied by 0.75 (0.5 on topic feeds). The same 0.75 applies to replies and reposts from accounts the viewer does follow.
  • New-author boost. One recent original post from a smaller account can be lifted toward the 16th scored position. This runs as an experiment; see X's new-author boost.
  • Similarity reranking. The reranker gives up a little score to put less similar posts next to each other, using post embeddings (a numeric summary of each post).

Before scoring, filters also remove candidates. One filter drops every post older than 48 hours. Another drops reposts and replies from accounts the viewer does not follow. For a clip page, this means a clip has two days at most to reach non-followers through For You, and its reach to strangers comes from the original post, not from reposts by other accounts.

The values drift: what changed between August and October 2026

Articles that quote X's weights go out of date fast. On September 21, 2026, PPC Land listed click at 0.4 and not interested at -43.2. Those were correct for the file it read, which had synced on September 18. Eight days later both values changed. The history of param.rs shows these changes to the values in this article:

Commit date (2026)Change in the default
August 13First release with weights: click 0.4, not interested -43.2, VQV 0.05, dwell 0.0
August 25VQV 0.05 to 0.0; dwell 0.0 to 0.05
September 24Author diversity and out-of-network defaults removed from home-mixer's param.rs; the same values stay in vm-ranker/params.rs
September 29Click 0.4 to 0.3; not interested -43.2 to -47.52; click dwell time 0.0 to 0.4
September 30New-author boost widened (see the new-author article)

The direction of travel in this window is toward stronger penalties for "not interested" and toward measured attention (time spent) over simple clicks. That is our reading of five data points, not a stated X policy.

If you quote these numbers to a client or in a campaign brief, give the date and link the commit. Check the commit history before you rely on any value.

What a clipper should do with these weights

The weights reward clips that people pass on and talk about, and punish clips that make people hide you. In practice:

  1. Cut for the send, not the like. Pick moments a viewer would copy the link for and send to a friend: a clear claim, a surprising number, a joke with a setup. A predicted copy-link share carries 40 times the weight of a predicted like.
  2. Write a post text that invites a reply. A specific question or a clear position in the post text gives the model a reason to predict replies (weight 5). Do not beg for engagement; X's Original Content Rewards rules ban repeated requests to like, reply or repost.
  3. Avoid the hide buttons. Misleading hooks and bait raise the predicted chance of "not interested" (-47.52) and mute (-58.8). One annoyed viewer type can cost you more than many likes earn.
  4. Space your posts. Your second post in the same feed request keeps 62.5% of its score and the fourth about a third. Posting ten clips in an hour mostly competes with yourself.
  5. Post while the source is fresh. The 48-hour filter ends For You distribution to strangers after two days. See posting speed and freshness.
  6. Do not rely on reposts by other accounts. Reposts and replies from accounts a viewer does not follow are filtered out of that viewer's For You feed.
  7. Recheck the file monthly. Note the date and the sync line at the top of param.rs each time you read it.

What the weights do not tell you

The weights explain the order among posts that can be shown. They do not decide whether a post can be shown at all. The README states that ranking and visibility are separate systems: labels such as spam labels can remove a post from recommendations to non-followers no matter how high it scores. X's Under the Hood report is the tool that shows those labels.

Some inputs are not public. The README says X keeps out the Grox prompts (the instructions given to its language-model classifiers) and some labeling rules "to reduce the risk of gaming".

The weights also have nothing to do with how X pays creators. Original Content Rewards pays on qualified impressions from Premium users, a different unit; see X view count vs paid impressions. Payout rules and eligibility are in Can clippers earn on X?.

Questions

Does a report really cancel out 468 likes on X?

No. X says this reading is wrong. The weight multiplies the predicted probability that one viewer reports the post, and reports are more than 1,000 times rarer than likes, so the large weight is there to let a rare prediction matter at all. It does not convert one actual report into a number of likes.

Are the weights in the GitHub file the ones X uses for my account?

They are the code defaults, which X says its cron scripts set to the primary production values. X also runs experiments on part of its traffic with different values. Your account or your viewers can be in an experiment, so the file shows the usual case, not a guarantee.

Why is the video quality view weight 0?

X has not explained it. The commit history shows the default moved from 0.05 to 0.0 on August 25, 2026, while the dwell weight moved from 0.0 to 0.05 in the same commit. The weight can return in a later commit.

Do bookmarks count in X's ranking weights?

Bookmarks do not appear in the list of predicted actions in the published scoring code we read on October 4, 2026. The actions are likes, replies, reposts, quotes, shares (generic, DM and copy link), clicks, dwell, video actions, follows and the negative actions.

Does X boost Premium or verified accounts in these weights?

We found no Premium or verified multiplier in the published scoring code on October 4, 2026. That does not rule out an effect elsewhere, for example in reply ranking or in systems that are not in the repository.

How often should I check for new weights?

X committed changes on most weekdays between August 13 and October 3, 2026, and changed several weights in that window. A monthly check of param.rs and its sync date is a practical minimum if you base decisions on the numbers.

Sources

We checked every claim on this page against these sources on the date above. Platform rules and rates change often. Found an error? Tell us.

  1. 1xai-org/x-algorithm: README (Notable Updates, Experiments and Configuration)
  2. 2home-mixer/params/param.rs at commit b412112 (read October 4, 2026)
  3. 3vm-ranker/params.rs: author diversity and out-of-network defaults
  4. 4xai-value-model/scoring.rs: how the weights are applied
  5. 5X: Example algorithm diff, bidirectional follow boost
  6. 6xai-org/x-algorithm: commit history
  7. 7PPC Land: X gives copy-link shares a feed weight of 20 against 0.5 for likes (September 21, 2026)

Was this page helpful?