Last week, Twitter released some of its code, allowing us to see what does and doesn’t work with the Twitter algorithm.
Steve Nouri recently tweeted some great information about how what you tweet and how people interact with your tweets matter.
Things that help you go viral:
- Images/videos get a 2x boost.
- Likes (30x) get more of a boost than a retweet (20x) – like-shares get much less.
- Twitter Blue (verified) gets 2-4x of a boost.
Some things that will hurt your reach:
- External links
- Images/video with no text
- Using more than one hashtag (botlike behaviors)
- Your tweet led to being ‘muted,’ blocked, unfollowed, and reported.
It looks like Twitter Blue subscribers do get a boost in the algorithm.
So yes, pay-to-play does make a difference.
When it comes to making your tweets get exposure, its likes, then retweets, then replies. Here are the ranking parameters:
- Each like gets a 30x boost
- Each retweet a 20x
- Each reply only 1x
In other words, a like will give your tweet a 30 times boost, while a reply will only give it a 1x boost. It’s crazy how much more impactful to earn likes and retweets than replies.
Both images and videos lead to a nice 2x boost. An image and a video is currently treated the same, but that could change.
What does “selftweetboost” mean?
It’s not sure, but James Bachini says, “selfTweetBoost is a parameter that assigns a weight of 2 to tweets that perhaps reply to your own tweet such as threads.”
There are a few factors that determine if your tweet will appear on someone’s “For You” tab, mainly, the probability the user will:
- like/RT your tweet
- click into your tweet & reply/stay there for >2 mins
- check out your profile
Links generally hurt, unless you have enough engagement. Usually, external links get you marked as spam. Unless you have enough engagement.
Mutes & unfollows hurt as well. These are the things that hurt your engagement:
- Spam reports
- Abuse reports
Again a huge thanks to Steve Nouri (@SteveNouri) for sharing this amazing information with everyone.
Here is the full list of ranking metrics from James Bachini.
- favCountParams (weight 30) counts the number of times a tweet has been liked.
- retweetCountParams (weight 20) counts the number of times a tweet has been retweeted.
- inDirectFollowBoost (weight 4) tweets from users who are followed indirectly by the viewer. i.e. if you follow someone who follows the writer it gets boosted.
- inTrustedCircleBoost (weight 3) tweets from users who are in the viewer’s trusted circle according to their social graph.
- urlParams (weight 2) feature that counts the number of URLs included in the tweet which negatively impact the score as it directs users away from the social media application. Twitter wants to keep users on the app so external links are negatively weighted.
- luceneScoreParams (weight 2) It’s unclear what lucene means. It also might not be live as further down the code there is “getLuceneScore = false” in the options.
- selfTweetBoost A parameter that assigns a weight of 2 to tweets that perhaps reply to your own tweet such as threads.
- tweetHasImageUrlBoost (weight 2) to tweets that contain at least one image URL.
- tweetHasVideoUrlBoost (weight 2) tweets that contain at least one video URL.
- tweetHasTrendBoost (weight 1.1) tweets that contain a trending topic.
- isReplyParams A parameter that assigns a weight of 1 to the feature that indicates whether the tweet is a reply to another tweet.
- replyCountParams (weight 1) feature that counts the number of times a tweet has been replied to.
- multipleHashtagsOrTrendsBoost (weight 0.6) tweets that contain multiple hashtags or trends. This is likely a negative factor to prevent people spamming hash tags.
- langEnglishUIBoost (weight 0.5) tweets written in English, as determined by the user interface language.
- reputationParams (weight 0.2) feature that measures the reputation of the user who tweeted.
- langEnglishTweetBoost (weight 0.2) perhaps prioritising tweets written in English, as determined by the language of the user or the tweet itself.
- textScoreParams (weight 0.18) feature that measures the relevance of the tweet’s text.
- offensiveBoost (weight 0.1) tweets that have been marked as offensive by users. I am surprised this doesn’t have a higher weighting but perhaps it is filtered more efficiently in the heuristics & filtering module.
- unknownLanguageBoost (weight 0.05) tweets written in an unknown language.
- langDefaultBoost (weight 0.02) to tweets written in a language other than English.