Raz1ner
Provide a detailed explanation of Twitter’s algorithm and its delivery mechanism.
I will provide a detailed explanation of my personal understanding of the Twitter algorithm code and include sources. However, different engineers may draw different conclusions from their analysis, and the Twitter algorithm may change at any time. Therefore, please approach the content of this article with a rational perspective and use it for reference only.
If you intend to republish this article, please provide proper attribution and include a link to the original source.
Twitter Tweet Weight Algorithm
Twitter’s algorithm model includes a machine learning model called "Heavy Ranker," which retrieves and ranks the weight scores of tweets for the "For You" section on the homepage.
Below are the summarized weight values and upper limits for each type. Different functions have different upper limit values, and even if the quantity of a certain function is large, the gain will not be infinitely stacked.
category | score | limit |
---|---|---|
Like | +0.5 points | 100 points |
The user has liked the tweet. | ||
Retweeted | +1.0 points | 100 points |
The user has retweeted the tweet. | ||
Reply | +13.5 points | 100 points |
User’s reply to a tweet. | ||
Access personal profile page. | +12 points | 1000000 points |
Follow a tweet to the author’s page and show your support by liking or replying to their content. | ||
The video is being played. | +0.005 points | 100 points |
For tweets that contain videos, viewers are required to watch at least 50% of the content. | ||
Author’s response | +75 points | 200 points |
The author of the tweet responded to a user’s reply to the tweet. | ||
Reply to a reply | +11 points | 1000000 points |
Users can like or reply to replies to a tweet. | ||
View 2 minutes | +10 points | 1000000 points |
Users spend no less than 2 minutes view tweets. | ||
Negative reaction | -74 points | -1000 points |
Users have a negative reaction to the tweet (not interested in this tweet, block the author, hide the author). | ||
Reported | -369 points | -20000 points |
The user reported a tweet. Can you please provide me with more context on the situation? |
Code related to scores for various types. As the code for the upper limit is too lengthy, it is not included here but can be found in the source below.
Algorithm for Calculating Total Score
Total Score = Weight * Number of Participations.
For example, let’s say 10 users have liked a tweet, giving it a weight of +0.5 points. With 10 participants, the engagement score would be 0.5 * 10 = 5. Thus, the total weight would be 5 points.
Source of tweet algorithm and overall score algorithm: README.md
However, there is a widely circulated notion online that the weight of a "like" is 30, while that of a retweet is 20. I looked up the source code of this claim.
The code did set default values for the permission to like at 30 and to retweet at 20, but it has since been removed as it was deemed unnecessary and was not being used for ranking purposes.
Advertising Weight Algorithm
Advertising: +10,000 weight points
Twitter Blue Weighting Algorithm
Subscribing to Twitter Blue provides additional weighting bonuses.
category | Score |
---|---|
Twitter Blue (followed) | 4x |
Accounts already followed. | |
Twitter Blue (unfollowed) | 2x |
Account that is not being followed. |
Code related to weight for Twitter Blue.
Sources of Weighting for Twitter Blue:HomeGlobalParams.scala
Account Weight Algorithm
Calculate the weight value of an account based on its status.
Inactive accounts: 0 points
Verified accounts: 100 points
Unverified accounts: Score is calculated based on a combination of device, account information, and age, with a maximum of 55 points.
In addition, the ratio of followers to following will also be factored in to determine the final weight value.
Here are some variable values defined:
- currentTimestamp: current timestamp (used to calculate the difference between account and current time).
- constantDivisionFactorGt_threshFriendsToFollowersRatioUMass: constant factor for the ratio of friends to followers (used to measure the proportion of a user’s friends to followers).
- threshAbsNumFriendsUMass: minimum number of friends a user must have (used to calculate user weight).
- threshFriendsToFollowersRatioUMass: threshold for the ratio of friends to followers (minimum allowed value for the ratio of a user’s friends to followers; exceeding this value can have negative consequences).
- deviceWeightAdditive: device weight.
- ageWeightAdditive: age weight (seems to be unused).
- restrictedWeightMultiplicative: weight for restricted users.
When calculating the score, the account status is first checked. If the account has been deactivated, the score is 0. If the account is verified, the score is 100. If the account is not verified, the score is calculated based on certain conditions.
In this code, it first checks whether a valid device is held and then adds the initial weight. However, I couldn’t find any other code that checks the validity of the device in more detail. If the device is valid, it returns 0.5 points, and if it’s invalid, it returns 0 points. The default value of deviceWeightAdditive is 0.5, so according to the following algorithm, assuming the device is valid, the score would be 0.55 points (0.5 * 0.1 + 0.5).
After calculating based on age, if the age is greater than 30 years old, return 1 point. If the age is less than or equal to 30 years old, proceed to the next calculation by dividing the age by 15, adding 1, and then taking the natural logarithm.
The natural logarithm is the logarithm with base e, denoted as ln(x).
Assuming the age is 22 years old, ln(1 + 22/15) ≈ 0.9028677115420144.
If the natural logarithm is less than 1, return the natural logarithm. If the natural logarithm is greater than 1, return 1. This means the maximum value of normalizedAge will not exceed 1.
Finally, multiply the calculated result by the previously calculated score, which is 0.55 * 0.9028677115420144 = 0.49657724134810793.
Some additional checks were made below. If the score is less than 0.01, it will return 0.01, but according to the above conditions, the score will not be lower than 0.01.
If the account is restricted, the total score will be multiplied by the restricted weight, which is 0.1.
If the score is greater than 1, it will be set to 1. If the score is less than 1, the current score will be returned. Finally, the score is multiplied by 100.
Assuming the account is not restricted, based on the above conditions, the score is 49.657724134810793.
Next, the score will be calculated based on the account’s number of following and followers. It is calculated by adding 1 to the sum of following and dividing by 1 plus the sum of followers. For example, assuming the account has 600 following and 450 followers, the ratio of following to followers would be (1 + 600) / (1 + 450) ≈ 1.3325942350332594.
First, two conditions are evaluated: whether the number of followers is greater than the user’s minimum follower count (500) and whether the ratio of followers to following is greater than the threshold (0.6). If these two conditions are not met, the previously calculated score is returned without further calculation.
If both conditions are met, the difference between the ratio of followers to following and the threshold is multiplied by the constant factor of followers and fans, resulting in 5 * (1.3325942350332594 — 0.6) = 3.6629711751662968. This result is then used to calculate the exponent using the exponential function.
The exponential function formula is: f(x) = a^x.
Using the calculated result, we can calculate the exponential function by computing e^3.6629711751662968 ≈ 2.565617039296528. This result is the final account weight score.
Как работает алгоритм Твиттера в 2023
Илон Маск выполнил свое обещание и выложил алгоритм Twitter в открытый доступ, а точнее код залили на GitHub, где его и проанализировали энтузиасты. Какую пользу из этого можем извлечь мы, контент-креаторы из других соцсетей? А очень даже конкретную, другие соцсети скрывают работу своих алгоритмов, но мы-то понимаем, что на всех площадках это плюс-минус похожая история. Я собрала в публикации ряд наиболее значимых моментов из алгоритма ранжирования Twitter
Часть 1. Как работает алгоритм Twitter
Twitter зарабатывает деньги на том, что показывает нам рекламу. Чем больше рекламы мы смотрим, тем больше денег зарабатывает Twitter. Поэтому главная задача алгоритма — показать такой контент, который заставит нас проводить в приложении все больше и больше времени.
Для этого алгоритм пытается угадать:
- Какой тип контента конкретный пользователь скорее всего оценит?
- Что популярно у пользователей с похожими предпочтениями?
Алгоритм делает это в 3 шага:
- Он угадывает, какие из 100 миллионов твитов на платформе наиболее вероятно вам понравятся.
- Он присваивает каждому твиту «оценку вероятности взаимодействия» и ранжирует их от лучшего к худшему. Самые лучшие твиты — это те, с которыми вы, вероятно, провзаимодействуете.
- Очищает список твитов, удаляя дезинформацию, заблокированные аккаунты и т.д. и показывает твиты с наивысшей оценкой первыми, вставляя рекламу после каждых 2-3 твитов.
И то, что Twitter показывает нам после этих 3 шагов и называется «лентой Twitter».
Понимание того, как он выбирает, ранжирует и фильтрует твиты, может помочь создавать высоко ранжируемый контент, который увидят миллионы пользователей.
Как алгоритм находит соответствующие твиты, ранжирует и фильтрует их?!
Источники кандидатов (Выбор твитов)
Twitter использует три типа данных:
- Граф подписчиков, указывающий, кто следит за вами
- Данные об активности, такие как лайки, ретвиты и ответы
- Данные пользователя, такие как скрытие, отписка и жалобы на спам
На основе этих данных Twitter пытается выбрать лучшие 1500 твитов из множества сотен миллионов: 50% вашей ленты или 750 твитов формируются из контента людей на которых вы подписаны.
Внутри сети используется сложная логистическая регрессионная модель, которая тщательно отбирает самые важные и актуальные сообщения от пользователей, на которых вы подписаны. Это происходит через реальный граф. Он предсказывает вероятность взаимодействия двух пользователей. Чем выше оценка, тем вероятнее, что они будут видны в вашей ленте. Лучшие твиты проходят на следующий уровень.
Следующие около 50% вашей ленты или 750 твитов формируются из твитов людей на которых вы не подписаны.
Как мы можем определить, будет ли определенный твит для вас актуальным, если вы не подписаны на автора? Twitter использует 2 подхода:
- Социальный граф. Эти твиты в настоящее время составляют примерно 15% твитов на главной странице.
При этом учитываются 2 вещи: с какими твитами недавно взаимодействовали люди, на которых я подписан? Кому нравятся похожие твиты и что они недавно лайкнули?
Затем твиты, полученные в результате этого, ранжируются с использованием логистической регрессионной модели — GraphJet, графового обработчика, который поддерживает граф взаимодействий в реальном времени между пользователями и твитами.
- Вложенные пространства, которые работают на основе сходства контента. Какие твиты и пользователи похожи на ваши интересы?
Одним из наиболее полезных вложенных пространств в Twitter являются SimClusters. SimClusters алгоритм использует ваш контент, чтобы категоризировать вас вместе с другими похожими пользователями и создавать кластеры. И таким образом ваш контент показывается другим людям еще не подписанным на вас.
Существует 145 тысяч сообществ, которые обновляются каждые три недели. Пользователи и твиты представлены в пространстве сообществ и могут принадлежать нескольким сообществам. Сообщества могут варьироваться от нескольких тысяч пользователей для индивидуальных групп друзей до сотен миллионов пользователей для новостей или поп-культуры.
Люди внутри тематического кластера чаще видят посты друг друга. По этой причине логичной выглядит рекомендация специалистов по соцсетям придерживаться в блоге конкретной выбранной темы, узкой ниши, так нас проще распределять по кластерам и показывать интересующимся людям внутри кластера.
Система ранжирования
Мы знаем очевидные вещи, что на охваты влияют лайки, ретвиты, ответы, изображения, видео, переходы в профиль, Twitter Blue — синяя галочка, репутация аккаунта, новые слова, неизвестный язык, ссылки, дезинформация, хэштеги, тип текста и т. Д.
Эти переменные положительно и отрицательно влияют на ранжирование вашего твита и в конечном итоге определяют, будет ли ваш твит выбран среди топ-1500 твитов или нет.
Переменная | положительное ранжирование | Вес |
Лайки | положительное ранжирование | 30x |
Ретвиты | положительное ранжирование | 20x |
Ответы | положительное ранжирование | 1x |
Изображение и видео | положительное ранжирование | 2x |
Twitter Blue | положительное ранжирование | 2x |
Хорошая репутация аккаунта (рассчитывается на основе соотношения подписчиков, использования, верификации, был ли бан) | положительное ранжирование | |
Новые слова или неизвестный язык | отрицательное ранжирование | 0,01x |
Ссылки (если у вас низкая активность) | отрицательное ранжирование | |
Дезинформация | отрицательное ранжирование | |
Несколько хэштегов | отрицательное ранжирование | |
Тип текста | отрицательное ранжирование | |
Взаимодействие с аккаунтами низкого качества и темами из черного списка | отрицательное ранжирование | |
Запрос «показывать реже» для вашего твита/вас, блокировка/скрытие вас, жалобы | отрицательное ранжирование |
После этого в ленте каждого пользователя, исходя из действий, которые они, вероятно, совершат с этим твитом, твиты подаются в порядке, который наиболее вероятно максимизирует удержание внимание подписчика.
Алгоритм вычисляет с какой вероятностью пользователь совершит действие и присваивает каждому действию вес:
Поставить лайк вашему твиту | положительное ранжирование | вес 0,5 |
Ретвитнуть ваш твит | положительное ранжирование | 1 |
Перейти в ваш твит и оставить ответ/лайк или находиться там более 2 минут | положительное ранжирование | 11 |
Посетить ваш профиль и поставить лайк/ответить на твит | положительное ранжирование | 12 |
Ответить на ваш твит | положительное ранжирование | 27 |
Ответить на ваш твит и вы взаимодействуете с этим ответом | положительное ранжирование | 75 |
Запросить «показывать реже» для вашего твита/вас, заблокировать или скрыть вас | отрицательное ранжирование | -74 |
Пожаловаться на ваш твит | отрицательное ранжирование | -369 |
Это означает, что:
Когда кто-то кликает на мой твит и находится там более двух минут, это имеет вес в 22 раза больше, чем если бы человек просто поставил лайк моему твиту.
Если люди переходят в мой профиль через мой твит и ставят лайк или отвечают на твит, это в 24 раза больше, чем просто лайк.
Когда отвечают на мой твит, это в 54 раза больше, чем лайк.
Если отвечают на мой твит, и я отвечаю на этот комментарий, это в 150 раз больше, чем лайк.
Однако, если кто-то жалуется на мой твит, это в 738 раз сильнее воздействует, что означает, что мне, по сути, «пришел конец».
Фильтрация и эвристика
После ранжирования твитов используются фильтры и эвристика для создания сбалансированной и разнообразной ленты:
Фильтрация видимости: из ленты убираются твиты от заблокированных или скрытых аккаунтов. Снижается видимость твитов, которые получили от вас негативную обратную связь.
Разнообразие авторов: алгоритм отслеживает количество показываемых твитов от одного и того же человека подряд.
Баланс контента: смешанный набор твитов от людей, на которых вы подписаны, и других пользователей.
Беседы: добавьте контекст к ответным твитам, связав их с исходным твитом.
Система также встраивает дополнительный контент, такой как реклама, рекомендации на подписку и подсказки для новых пользователей, создавая пользовательский опыт.
Ответы на популярные вопросы
Изображения и видео
Добавление изображений и видео усиливает эффект в 2 раза.
Это означает, что если вы хотите, чтобы ваши твиты достигали более широкой аудитории, важно включать визуальный контент. Но не добавляйте просто любое изображение или видео, убедитесь, что оно высокого качества и соответствует тематике твита.
Имеет ли значение соотношение подписок к подписчикам?
На охват вашего аккаунта отрицательно влияет, если количество пользователей, на которых вы подписаны, превышает 60% от количества ваших подписчиков.
Например, если у вас есть 1000 подписчиков и вы подписаны на 800 человек, попробуйте отписаться от 200 аккаунтов, чтобы улучшить свой охват.
Но, помните, что массовая отписка также может привести к тому, что ваш аккаунт будет скрыт, поэтому не отписывайтесь от всех сразу.
Имеет ли значение наличие Twitter Blue — синей галочки?
Да, Twitter Blue положительно влияет на ваши охваты. Плюс в этом статусе лучше ранжирование в ответах и поиске, скрывается половина рекламы в ленте, есть возможность публикации более длинные видео высокого качества (1080p), редактирование твитов, появляются папки для сохранения, а также предоставляется ранний доступ к новым функциям.
Как попасть на вкладку «Для вас»?
Увеличьте свои шансы попасть на вкладку «Для вас», учитывая следующие факторы:
- Содержание твитов, что лучше лайкают и ретвитят
- Напишите твиты, которые побуждают пользователей нажимать, отвечать и взаимодействовать с вашим контентом более 2 минут
- Создайте привлекательный профиль, который заставляет людей кликать
- Хорошая репутация аккаунта
- Обратить внимание на соотношения подписчиков, верификации и того, были ли ранее блокировки
Итоговый балл по шкале от 0 до 100 — это балл «tweepcred», который представляет репутацию пользователя в Twitter. Этот балл используется для определения того, каким пользователям рекомендуется подписаться или какой контент должен быть выделен.
Ваше «влияние» в Twitter и, соответственно, вероятность просмотра ваших твитов в значительной степени определяются качеством пользователей, с которыми вы взаимодействуете.
Качество контента
В настоящее время, если ваш балл «tweepcred» меньше 65, максимальное количество твитов, которые будут учитываться алгоритмом ранжирования, ограничено 3.
Если ваш балл меньше 65, ваши треды не будут учитываться.
Однако, если ваш балл «tweepcred» больше 65, это ограничение снимается, что означает, что вы можете публиковать столько твитов, сколько хотите, и алгоритм учтет все из них.
Также важно, чтобы ваш контент не был отмечен как «низкого качества», чтобы ваш «tweepcred» был достаточно высоким для учета.
Взаимодействие с аккаунтами низкого качества
Как оказалось, взаимодействие с аккаунтами низкого качества наказуемо.
Репутация аккаунта рассчитывается на основе соотношения подписчиков к подпискам, возраста аккаунта, использования устройства, если вы были ограничены или заблокированы, и если у вас есть верификация.
Если вы взаимодействуете с аккаунтами низкого качества с плохим соотношением подписчиков к подпискам и они отмечены как спам/NSFW/боты/токсичные, вам будет нанесено наказание.
Актуальность твитов со временем
Твиты имеют время жизни в 360 минут, это означает, что оценка актуальности твита уменьшается на 50% каждые 6 часов. Общая скорость снижения оценки актуальности старых твитов установлена на уровне 0,003.
Ссылки
Ссылки приводят к отрицательному ранжированию. За внешние ссылки алгоритм может пометить вас как спам (если у вас низкая активность).
Исходящие ссылки на неинформационные или медийные сайты ухудшают ранжирование.
И публикация только URL-адресов или только изображений (без текста) также снижает ваш рейтинг
Отключения и отписки
Отключения, отписки (не так плохо, как остальное), блокировки, жалобы на спам, жалобы на злоупотребления приводят к отрицательному ранжированию.
Жалоба на твит снижает ранжирование в 700 раз.
Новые слова или неизвестный язык
Неизвестные языки получают низкое ранжирование. Выдуманные слова или орфографические ошибки получают 0,01, что является очень плохим.
Несколько хэштегов
Добавление большого количества хэштегов снижает ранг вашего поста.
Тип текста
Оценка статического качества текста, вычисляется в файле TweetTextScorer.java в модуле Ingester. Она основывается на факторах, таких как оскорбительность, энтропия содержания, «шумность» текста, длина и читабельность — все это так же влияет на ваш охват и вовлеченность.
Часть 2: Что нужно сделать для максимизации охвата
Получите Twitter Blue
Если вы являетесь подписчиком Twitter Blue, то нравитесь алгоритму в 4 раза больше, если находитесь в одной сети с автором твита, и в 2 раза, если вы НЕ находитесь в одной сети. Здесь речь про кластеры о которых можно почитать ранее в этой статье.
Поддерживайте высокое соотношение подписчиков к подпискам
Этот метод снижает ранг страницы пользователей, у которых мало подписчиков, но много исходящих подписок. Он вычисляет коэффициент деления на основе соотношения подписок к подписчикам и уменьшает ранг страницы пользователя, разделив его на этот коэффициент.
Удерживайте свой «Tweepcred» выше 65
«Tweepcred» — это оценка, присваиваемая пользователям на основе количества и качества их взаимодействий с другими пользователями, возраста аккаунта, количества подписчиков и использования устройства, что определяет, должно ли быть выделено более 3 ваших твита (включая треды) или нет. Здоровое взаимодействие может помочь поддерживать его на высоком уровне, а жалобы на спам, блокировки и отключения могут сильно навредить.
Специализируйтесь и станьте доверенным голосом в одной нише
Становитесь популярными в конкретном сообществе, взаимодействуя с известными аккаунтами в этой нише. По мере того, как все больше пользователей из этого сообщества повзаимодействуют с вашим контентом, он станет более связанным с этой нишей. Расфокус на нескольких темах, как мы видим, не поможет быстро набрать охваты.
Больше взаимодейсвия с твитами в первые 6 часов поле публикации
Твиты имеют полувремя жизни в 360 минут, поэтому оценка актуальности твита уменьшается на 50% каждые 6 часов. С течением времени старые твиты становятся менее актуальными (и показываются другим людям в меньшей степени). Взаимодействие и ответы на комментарии в этот период помогут повысить вовлеченность и охваты.
Добавляйте изображения и видео
В текущей модели ранжирования (Earlybird) твиты с изображениями и видео нравятся алгоритму в 2 раза больше. Однако это старая модель, которую Twitter планирует полностью перестроить, поэтому в будущем могут произойти изменения.
Избегайте блокировок и жалоб
Это плохо. Очень плохо. Такие вещи снижают ваш «балл репутации» в Twitter. Блокировки, отключения, жалобы на злоупотребления, жалобы на спам и отписки могут сильно негативно сказаться на вашем «балле tweepscore».
Создайте причину для вовлечения пользователей
После ранжирования в топ-1500 твитов вероятность того, что ваш твит достигнет ленты кого-то, в значительной степени зависит от факторов, таких как время, проведенное на твите, посещение профиля и ответы. Контент, который побуждает пользователей к таким действиям, может значительно увеличить ваш охват.
Отвечайте на каждый ответ ваших подписчиков
Если лайк на ваш твит дает этому твиту 1 балл, то ваше взаимодействие с ответом на ваш твит дает вам 150 баллов.
Не добавляйте ссылки, если вы не уверены, что они вызовут взаимодействие
Внешние ссылки могут ранжировать вас как спам, и публикация только URL-адресов может значительно снизить ваш ранг, если ваш твит не получает хороший отклик от читателей в первые несколько часов.
Резюмируем
Пишите грамотные публикации, реже добавляйте ссылки на сторонние ресуры, не злоупотребляйте хештегами, отпишитесь от аккаунтов, которые не читаете, особенно от аккаунтов с сомнительной репутацией, отмеченных как спам/NSFW/боты/токсичные.
Избегайте негативных и сверхнегативных факторов: н еизвестный язык, новые выдуманные слова, грамматические ошибки, д езинформация, посты на темы из черного списка и т.д. и будет вам хорошее ранжирование от алгоритма Твиттера.
Cracking the Code: Lessons from the Twitter Algorithm for Writing Better
Building an audience is a critical part of business development. I am learning to build my audience on Twitter and am always looking for ways to improve my process. Many experts have analyzed the Twitter algorithm since it became open-source on March 31, 2023. I have spent hours understanding the implications for anyone who is new to Twitter and is yet to grow her audience to 10,000+ (that’s me!). I had created this post as my own guide, and then decided to publish it to help anyone who is in a similar situation.
This post has three sections. First, I want to share my understanding of the principles of building an audience on Twitter. Second, I provide an overview of the Twitter algorithm. Third, I share 5 lessons I have curated for myself to strengthen my habits on Twitter.
The last part will evolve as my understanding of the algorithm improves, as there are changes to the algorithm, or as I learn to become better myself. Nevertheless, this should serve as a useful reference for me for the next few months of my journey.
Context: Building an audience on Twitter
In the last few weeks, I have spent hundreds of hours on various blogs and tutorials that explain about audience building on Twitter. The experts that influenced me the most with their thoughts are Daniel Vassallo, Arvid Kahl, Dagobert Renouf, and Jay Clouse. To take small steps, I also like Jay’s Tweet100 and Hypefury’s Daily Tasks.
I have learnt that there are a few basic principles that most experts with a sizeable audience, have followed in their Twitter journey. First is about establishing credibility — giving enough signals for anyone to trust. Second is about sharing what others can make use of. And third is about engaging with others to build relationships.
When Twitter made its recommendation algorithm open-source, I wondered if one should even think about it if the principles are sound.
I think that the answer depends on the stage of audience growth, as the creator’s focus changes in each stage. I could think of 3 indicative stages:
- 0 to 1000 followers: Focus is to find one’s voice. Experiment with topics and the process. See what overlaps with what you like to write about, what others want to consume, and what someone will pay for (if the intent is monetization of content).
- 1000 to 10,000 followers: Focus is to make one’s voice unique. Niche firmed up; this stage is where the process takes over. Building a robust operating system to write consistently is the key.
- 10,000+ followers: Focus is to build a bigger brand and reputation. Consistency continues, but one also becomes experimental once again. While the core is focused on the niche, I see creators engaging on a wider variety of topics for fun as well.
The numbers are not hard, but they are indicative of how the focus changes in the process.
Stage 2 is where the Twitter Algorithm could become relevant. In Stage 1, when one is still finding a voice, it doesn’t matter what the algorithm is all about. It might be a distraction if too much focus is given to the algorithm. Stage 2, when processes and habits are being strengthened, is where a deeper understanding of the algorithm helps.
Having said so, building habits and processes starts early. So it helps to understand the algorithm while still finding one’s voice.
This then sets the context on why the algorithm matters and for whom. Let me next share without too much jargon (I am not a techie!) what I understood about the algorithm.
Understanding the Twitter Recommendation Algorithm
One of the core features of getting discovered by people is the ‘For You’ timeline. This is not the only aspect of audience growth, but this is how the algorithm ‘helps’ with audience growth on Twitter. From Twitter’s perspective, showing only a handful of the most relevant tweets is important to engage a user.
Suppose I have written a tweet, which I expect to land in the For You timeline of as many users as possible. The algorithm’s Home Mixer service adopts a 3-steps process to assess if and where all my tweets land (see graphic above).
Step 1: Candidate sourcing or aggregation of millions of tweets
Step 2: Rank tweets based on a machine learning model
Step 3: Apply heuristics and filters to finalize the shortlist, which is shown to the user.
Step 1
In this step, the algorithm aims to extract the best 1500 tweets for a user from a pool of hundreds of millions of tweets. My profile and tweet needs to be one of the 1500 for the users for whom I might be writing on Twitter.
As per Twitter, on average, the extraction of 1500 tweets and profiles consists of 50% in-network (user is following) and 50% out-of-network (user is not following — so an opportunity to discover a new creator).
In-network: A model called Real Graph gives a score between me and everyone in my network. This score is based on the likelihood of engagement between us. Wherever this score is high, my tweet would be part of the pool for the next step. So previous engagement with my existing followers is a big determinant of future tweets being shown to them.
Out-of-network: For users who are not following me, Twitter takes two different approaches to decide if my tweet should be considered for them. One is called the Social Graph, and the second is called Embedding Spaces. My understanding is that the latter is a bigger determinant of out-of-network tweets. Both of these approaches try to search for:
(a) Tweets and users with similar interests
(b) Tweets engaged by those who the user follows
(c) Tweets engaged by those with similar interests.
In this way, the algorithm identifies the set of users who are do not follow me, but are likely to engage with what what I write.
The main takeaway in Step 1 is that for my tweet to be considered, regular engagement with in-network followers is important. And for out-of-network users, my engagement with the users they follow is important. So once again engagement by me is important — even with those who are not following me. Apart from engagement, writing well could result in popularity of my tweet in one of the many communities that Twitter considers important.
From my tweet’s point of view, a handful of users get selected in Step 1. My tweet at this stage is one of the 1500 tweets that may be relevant to these users.
Step 2
Let’s assume that there are 100 users that Twitter is considering in Step 1 for my tweet. For these users, my tweet is one of 1500 candidates. In Step 2, the algorithm ranks these tweets and gives them a score. Tweets that score the highest for a user are finally shown in the For You timeline of the user.
As per Twitter’s blog, there is a 48-megabyte neural network behind the ranking. For me, the takeaway is that the chances of my tweet getting a good score depends on the likelihood of engagement (e.g., likes, retweets, and replies) from the 100 users for whom it is being considered.
While the blog doesn’t say much here, fortunately for us, many Twitter users and experts have analyzed the code for us. I have tried to summarize the actionable from them in the third section of this post.
Step 3
Now comes the hard part. Let’s assume that out of the 100 users from Step 1, only 50 remain in Step 2. These are the users for whom my tweet is among the highest ranked. The algorithm further prunes this list based on certain heuristics, filters, and product features.
One example is that in step 3, accounts that have blocked or muted me would be removed. Similarly, only users who follow anyone who has either engaged with my tweet or followed me, remain in consideration. In other words, there has to be a second-degree connection.
There are many more such examples. The result is a small set of users (it could be zero!) who are finally shown my tweet.
Once again, I have relied on the experts who analyzed the code deeply, to derive the actionable.
With a basic understanding of the Twitter Recommendation Algorithm taken care of, I am now ready to share key lessons and actionable for me.
5 Lessons from the Algorithm for Writing Better and Building an Audience on Twitter
The lessons I have curated are contextual to my stage of audience growth. I do not want to worry too much about the algorithm, but I do want to build good habits at this stage. I have tried to highlight the algorithm aspect considered, before describing the actionable in each lesson. The algorithm aspect is from the code-analysis done by other experts. I am grateful to NFT God, Steven Tey, Aakash Gupta and many other Twitter users who shared their wisdom about the code on Twitter.
Here are the 5 lessons for me from the algorithm.
Lesson 1: Mindset of Giving
Algorithm aspect considered: Follower to Following Ratio
Before any other tactic is considered, I need to be clear about why I am on Twitter. Is it to get updated on what’s happening in the world? To get updated on topics relevant to my business? To learn from others about perspectives on life?
For a long time, all the above were true for me. I was a consumer of content until then.
Over the years, I have been through the $0 to $100k journey a few times. I have built a small portfolio of side hustles, which I intend to grow further. I have also come a long way as a parent and wellness enthusiast. I am grateful to the people who I met and learned from, during this journey.
I believe that there are people out there who are where I was earlier and who would benefit from the lessons I have learned and am learning. This has changed the reason for being on Twitter. I am no longer only a consumer of content; I am also becoming a contributor. The mindset to give back is becoming stronger.
The Twitter algorithm seems to be aligned with the above as well. The follower-to-following ratio is the metric that it uses to prioritize creators and contributors over consumers of content. By having a mindset of giving, one can make and keep this ratio favorable.
That is actionable #1 for my content to become part of the algorithm’s consideration set — build (or review) the mindset for being on Twitter. Having a Giving mindset helps!
Lesson 2: Build Credibility
Algorithm aspect considered: The ‘Tweepcred’ PageRank
So, I have the mindset of giving. Who cares? Only people who think that I am a credible person. Credibility in turn is a function of authority on something.
Let’s say I go to a networking event. I want people there to listen to what I am sharing. How do I get started? By establishing credibility — who am I, what do I do or where do I work, any notable achievements, etc. Anything that signals that I am worth listening to.
Shouldn’t it be the same on Twitter? I want to share something useful with others. But first, I need to give signals that I am credible enough on the topic I am writing about.
The Twitter Algorithm assesses credibility using its ‘Tweepcred’ PageRank algorithm. It gives a reputation score that is based on factors such as account age, number of followers, device usage, follower-to-following ratio, number and quality of interactions with others etc.
The actionable here for me are:
- Select a few areas or niches based on past experience and achievements. It is simpler to master one area than being average in many areas
- Use the profile section to give signals on credibility — the bio, photo, header etc
- Interact with users with similar interests as my niche(s). Building credibility in a small set of users is simpler than doing the same in front of the entire universe
- Share my profile with people in my network outside of Twitter (already credible there!)
- Use blogs, podcasts, YouTube or other platforms (or communities) to get my thoughts discovered initially, even if Twitter is the focus.
You get the drift. There is a lot I have done in the past to build reputation and credibility in real life. I don’t think the list of actions can be a short one for building credibility on Twitter. It however is, the important Lesson #2 for me.
Lesson 3: Build relationships
Algorithm aspect considered: Positive and Negative Boosts to Tweets and Profiles
If I were to think of one line that defines the purpose of Twitter, it would be to help build meaningful relationships through conversations. Conversations are different from broadcasts. This is why the Twitter algorithm gives a 150x boost to a tweet where someone responds and you respond back! That’s conversation.
Similarly, there is a negative boost if someone un-follows (this is bad not just for the tweet but for the profile itself), blocks, mutes, or marks a tweet as spam.
The actionable here is developing a process to build relationships. If Lessons 1 and 2 have already been acted upon, then I already have a Mindset of Giving and some Credibility with a small group of users in a niche. If I regularly engage with them on their content, there is a likelihood that some of them will engage with my posts. We would have similar interests, so that’s not a big ask.
The reason I mention ‘process’ as actionable is that, in my case, I am not naturally balanced in juggling creation and engagement. Without a process and system, I have found myself skewed towards one of them. The simple task of ‘blocking time’ to view my feed and then engage with others has helped. There is, of course, a separate ‘block of time’ to create and publish. This is an example of how developing a process (blocking time) helped me in execution when it comes to engagement on Twitter.
Of course, intent to engage has to be there first. But after that, lesson #3 is about building systems, habits or process(es) that build the relationship muscle.
Lesson 4: Write quality content. Consistently
Algorithm aspect considered: Positive and Negative Boosts to Tweets
Most of the analysis of the algorithm I have found focused on the tweet parameters that matter. Below is an example from Steven Tey’s analysis on what gets a positive or negative boost, and by what amount:
Apart from the above, there is a 2x boost for images, videos, and writing on trending topics. Relevance also gets a positive boost, but relevance itself goes down with time. So there is a shelf life of any tweet.
In the negative category, external links (unless those of news or media), misinformation, misspellings, and NSFW/toxic content — all get a negative boost.
How do I translate all the above into actionable? Below are 3 actionables at the top of my mind:
- Learn to write well. I have improved, but there is still scope to improve a lot more. Almost 80% of what the algorithm values can be taken care of by a good copy
- Build a system to make the copy publish-ready. This includes proofreading for spelling, inserting images or videos where applicable, and ensuring that there is no misinformation
- Use tools or systems for publishing consistently. Writing can be done in one large block. Publishing can be scheduled using the tools. Consistency and relevancy are both critical.
Similar to Lesson #3, the actionable here is about building a system, habit or process(es) for being consistent in writing good quality content.
Lesson 5: Twitter Blue
Algorithm aspect considered: During Candidate Sourcing, Boost Paid Profiles
On March 27, 2023, Elon Musk made it clear that only Twitter Blue subscribers will be eligible to be in the For You timeline of users.
Till this actually happens, the algorithm will keep giving a boost of 2x (out-of-network) and 4x (in-network) to Twitter Blue subscribers.
I had not paid so much attention to Twitter Blue earlier. Being too small, getting my profile verified was not really top of my mind. How the algorithm is likely to work on this aspect did change my thinking.
Bottom line: It will be beneficial to pay if I am serious about growing my audience on Twitter and I am at an early stage of followers growth. When do I do this, is still a choice to be made by me.
I am not sure if this (getting Twitter Blue) is the only actionable from Lesson 5. I think that another lesson here is about not being too dependent on one platform. But since that could be a distraction at an early stage, it is an actionable for later.
Conclusion
While the above analyses are still a work in progress (the algorithm will change, and more and more people will share more insights), they nonetheless represent a great starting point for me.
Anyone who is in a similar stage of audience building could find it useful to get an overview of the Twitter Algorithm, which is the basis for selecting the tweets in the For You timeline. Further, those with a bias for action could make use of the 5 lessons above, to build or strengthen their system for using Twitter as a tool.
Do share your comments and feedback on what I can do to improve my understanding as well as my actions.
If you liked this article and have similar interests as mine, then you might like to follow me on Twitter. I will keep sharing lessons from my journey there.
Как работают алгоритмы Twitter: особенности работы с платформой Твиттер
Понять, как работает Twitter, не сложно: он использует почти тот же алгоритм, что и любая другая социальная сеть. Если вы любите футбол, вы увидите больше твитов о любимых командах. Интересуетесь политикой — получите больше политического контента в своей ленте. Алгоритм использует машинное обучение для сортировки контента с помощью сигналов ранжирования, о которых мы поговорим позже.
Обновления алгоритмов Twitter
- Самый популярный твит — твиты ранжируются в зависимости от людей, на которых вы подписаны, и аналогичного контента от тех, на которых вы еще не подписаны;
- Последние твиты — вы также можете переключиться и видеть последние твиты по умолчанию;
- ICYMI (на случай, если вы это пропустили) — содержит самые популярные твиты из всех, которые появились за время вашего отсутствия в приложении. Чем дольше вы работаете в приложении, тем меньше их вы увидите;
- Что происходит сейчас — показывает последние события и темы, относящиеся к вашей деятельности;
- Тенденции для вас — алгоритм трендов Twitter включает в себя трендовые хэштеги и популярные шаблоны, основанные на ваших интересах.
Как работает алгоритм шкалы времени Twitter
Twitter хочет, чтобы пользователи видели интересующий их контент, не ища его. Если люди не получают то, что их интересует, в конечном итоге они перестанут использовать Twitter. Вот почему маркетологам нужно найти время, чтобы досконально понять свою целевую аудиторию и интересный для нее контент.
На шкале времени Twitter можно настроить отображение твитов в двух разных режимах: лучшие и последние твиты. Эти режимы можно изменить, щелкнув значок звездочки в правом верхнем углу ленты.
В режиме Лучшие твиты отображаются твиты в том порядке, который может заинтересовать пользователя. Алгоритм основан на популярности и актуальности твитов. Такой режим ленты новостей Twitter создан для того, чтобы уберечь пользователей от перегруженности и помочь им быть в курсе контента, который им действительно небезразличен.
В режиме Последние твиты ваша временная шкала формируется в обратном хронологическом порядке, причем самые последние твиты находятся наверху. Твиты показываются по мере их публикации в режиме реального времени, поэтому больше контента будет появляться от большего количества людей, но он по-прежнему не будет отображать каждый твит.
Прошли те времена, когда простое знание того, как работает Twitter, позволило бы вам обойти систему. Это всего лишь первый шаг к расширению органического охвата ваших твитов. В основе алгоритма лежат ранжирующие сигналы. Когда вы предлагаете контент Twitter, помните о сигналах ранжирования.