# What X's published ranking weights reward

> Which viewer actions push a clip into X's For You feed?

Source: https://fastclips.app/learn/x-ranking-weights · Updated 2026-10-04 · Published by FastClip (fastclips.app)

## Short answer

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.

## 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](https://github.com/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](https://github.com/xai-org/x-algorithm/blob/main/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](https://github.com/xai-org/x-algorithm/blob/b412112d03f27acbfd668e0cc040abcafa1080c1/home-mixer/params/param.rs).

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 action | Weight | What it means for a clip |
| --- | --- | --- |
| Share via copy link | 20 | The strongest positive signal. A viewer copying the post link to send elsewhere |
| Reply | 5 (20 from a mutual follow) | Conversation counts heavily. A mutual-follow boost adds 15 for original posts |
| Quote | 5 | Someone quoting your clip with their own text |
| Share via DM | 5 | Sending the post inside X messages |
| Follow author | 4 | The clip makes the viewer follow you |
| Share (generic) | 2 | Other share actions |
| Repost | 1 | Worth twice a like |
| Like | 0.5 | The weakest common action |
| Click into the post | 0.3 | Opening the post detail |
| Open link | 0.2 | Tapping a link in the post |
| Video open | 0.07 | Opening the video player |
| Dwell / photo expand | 0.05 each | Stopping on the post / opening an image |
| Video quality view | 0 | No credit in the current defaults |
| Not dwelled | -0.02 | Scrolling past without stopping |
| Block author | -31.2 | Strong negative |
| Not interested | -47.52 | Strong negative |
| Mute author | -58.8 | Strong negative |
| Report | -234 | Largest 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](https://github.com/xai-org/x-algorithm/blob/main/docs/BIDIRECTIONAL_BOOST_CHANGE.md) 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](https://fastclips.app/learn/x-video-and-links-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](https://github.com/xai-org/x-algorithm/blob/main/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](https://fastclips.app/learn/x-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](https://ppc.land/x-gives-copy-link-shares-a-feed-weight-of-20-against-0-5-for-likes/) 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 13 | First release with weights: click 0.4, not interested -43.2, VQV 0.05, dwell 0.0 |
| August 25 | VQV 0.05 to 0.0; dwell 0.0 to 0.05 |
| September 24 | Author diversity and out-of-network defaults removed from home-mixer's param.rs; the same values stay in vm-ranker/params.rs |
| September 29 | Click 0.4 to 0.3; not interested -43.2 to -47.52; click dwell time 0.0 to 0.4 |
| September 30 | New-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](https://github.com/xai-org/x-algorithm/commits/main) 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](https://fastclips.app/learn/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](https://fastclips.app/learn/x-under-the-hood-account-labels) 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](https://fastclips.app/learn/x-views-vs-paid-impressions). Payout rules and eligibility are in [Can clippers earn on X?](https://fastclips.app/learn/x-for-clippers).

## 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

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