X recommendation algorithm architecture diagram
Algorithm

Decoding X's Recommendation Algorithm: A Technical Deep Dive

Explore the inner workings of X's recommendation system through its open-source code. Learn how candidate sourcing, ranking models, and community detection shape what appears in your timeline.

ReplyXpert Team
ReplyXpert Team
December 5, 2024
18 min read

The Algorithm Behind Your Timeline

Every time you open X, you're witnessing the result of one of the most sophisticated recommendation systems ever built. What you see isn't random—it's the product of millions of calculations happening in real-time, orchestrated by a complex architecture of services, models, and data pipelines.


In March 2023, X (then X) made an unprecedented move: they open-sourced their recommendation algorithm. The codebase, available on [GitHub](https://github.com/X/the-algorithm), reveals exactly how the system decides what content appears in your For You timeline, how posts get ranked, and why some content goes viral while other posts fade into obscurity.


This isn't about gaming the system or finding loopholes. It's about understanding the machine so you can create content that naturally aligns with how it's designed to work. The algorithm isn't arbitrary—it follows specific rules, weights, and patterns that we can observe, understand, and work with.


What You'll Learn:
  • The architecture of X's recommendation system
  • How candidate sourcing works across multiple pipelines
  • The role of community detection (SimClusters) in content distribution
  • Engagement signal weighting and ranking mechanisms
  • Practical strategies based on algorithmic behavior

  • Let's dive into the code and see what it actually does.

    The Architecture: How X Builds Your Timeline

    X's recommendation algorithm isn't a single monolithic system. It's a distributed architecture of specialized services, each handling a specific part of the content selection and ranking process.


    The Core Pipeline:

    1. **Candidate Sourcing** - Multiple services fetch potential posts from different sources:

  • **Search Index (Earlybird)**: Approximately 50% of For You timeline posts come from this source, which indexes and ranks in-network content
  • **User-Tweet-Entity-Graph (UTEG)**: A GraphJet-based service that maintains an in-memory interaction graph, finding candidates through graph traversals
  • **Follow Recommendation Service (FRS)**: Provides posts from accounts you might want to follow
  • **Tweet Mixer**: Coordinates fetching out-of-network candidates from various compute services

  • 2. **Ranking Phase** - Multiple ranking models evaluate candidates:

  • **Light Ranker**: Fast initial ranking used by the search index (Earlybird)
  • **Heavy Ranker**: Deep neural network that scores candidates based on engagement signals, user preferences, and contextual features
  • **Representation Scorer**: Computes similarity scores between users and posts using embeddings (SimClusters, TwHIN)

  • 3. **Mixing & Filtering** - Final assembly of your timeline:

  • **Home Mixer**: Built on the Product Mixer framework, this service constructs and serves your Home Timeline
  • **Visibility Filters**: Apply trust and safety rules, legal compliance, and quality filters
  • **Time Decay Functions**: Prioritize recent engagement over older signals

  • Key Services in the Codebase:
  • `home-mixer/`: Main timeline construction service
  • `product-mixer/`: Software framework for building content feeds
  • `tweet-mixer/`: Coordination layer for candidate fetching
  • `representation-manager/`: Retrieves embeddings (SimClusters, TwHIN)
  • `graph-feature-service/`: Serves graph-based features for user pairs
  • `user-signal-service/`: Centralized platform for explicit and implicit user signals

  • Understanding this architecture is crucial because your content's journey through these systems determines its visibility.

    Community Detection: The SimClusters System

    One of the most important concepts in X's algorithm is **SimClusters**—a community detection system that organizes users into overlapping communities based on their interaction patterns.


    How SimClusters Works:

    Located in `/src/scala/com/X/simclusters_v2/`, SimClusters uses sparse embeddings to represent users and posts in a high-dimensional space. Users who interact with similar content get clustered together, creating communities around topics, interests, or behaviors.


    The Technical Details:
  • Users are assigned to multiple clusters (not just one)
  • Each cluster represents a community of interest (e.g., "AI researchers", "crypto traders", "fitness enthusiasts")
  • Posts are also embedded into these cluster spaces
  • The algorithm uses these embeddings to find content that matches your cluster memberships

  • Why This Matters for Your Content:

    When you post consistently about a specific topic, the algorithm assigns you to relevant clusters. Your posts then get shown to other users in those same clusters. If you suddenly switch topics, your new post might not align with your established cluster assignments, causing it to be treated as "out-of-network" content.


    Practical Implications:
  • **Consistency builds authority**: The more you post within a niche, the stronger your cluster assignments become
  • **Topic switching is penalized**: Sudden shifts confuse the clustering system and reduce visibility
  • **Cluster overlap helps**: Being in multiple related clusters (e.g., "AI" and "machine learning") increases your potential reach
  • **The Representation Manager**: This service (`representation-manager/`) retrieves your cluster embeddings and uses them to match your content with interested users

  • Actionable Strategy:

    Pick a domain and maintain consistency. Whether it's technology, sports, business, or any other topic, staying within your niche helps the algorithm understand where you belong and who should see your content. Think of it as building a reputation within a specific community—the algorithm needs to know what community that is.

    Engagement Signals: What the Algorithm Actually Measures

    Not all engagement is created equal. The algorithm tracks multiple types of user interactions, each weighted differently in the ranking calculations.


    Signal Hierarchy (Based on Algorithm Behavior):

    1. **Profile Visits** (~24x weight): When someone clicks through to your profile, it's one of the strongest signals. The `user-signal-service` tracks these implicit signals, and the heavy ranker heavily weights them.


    2. **Dwell Time** (~22x weight): How long users spend viewing your content matters significantly more than quick scrolls. The system measures time-on-post and uses it as a quality indicator.


    3. **Reply Chains** (~75x weight for reply-to-reply): When conversations develop through multiple reply levels, the algorithm interprets this as high-value engagement. The `unified-user-actions` stream tracks these patterns, and the system triggers cascade mechanisms to show your content to broader audiences.


    4. **Bookmarks**: While exact weights aren't public, bookmarks are a strong signal to the heavy ranker because they indicate users want to reference your content later.


    5. **Standard Likes**: Basic likes have the lowest weight in the ranking system.


    How Signals Flow Through the System:

    The `user-signal-service` collects both explicit signals (likes, retweets, replies) and implicit signals (profile visits, time spent, scroll depth). This data flows into the `graph-feature-service`, which computes features like "how many of User A's following liked posts from User B."


    These features feed into the heavy ranker, a neural network that scores each candidate post. The ranker considers:

  • Historical engagement patterns
  • User-post similarity (from embeddings)
  • Recency of engagement
  • Engagement velocity (how quickly signals accumulate)

  • The Engagement Velocity Factor:

    One critical aspect is **engagement velocity**—how quickly your post accumulates signals after publication. Posts that generate rapid early engagement trigger the algorithm's expansion mechanisms, pushing your content to out-of-network users through the tweet-mixer coordination layer.


    Practical Applications:
  • Create content that encourages profile visits (clear value proposition, educational threads)
  • Design posts that increase dwell time (detailed breakdowns, visual content, compelling narratives)
  • Build reply chains by actively responding to comments (especially within the first hour)
  • Focus on quality signals over vanity metrics—the algorithm cares more about depth than breadth
  • The Candidate Sourcing Pipeline

    Before any ranking happens, the algorithm needs to find potential posts to show you. This happens through multiple parallel pipelines, each serving different purposes.


    Primary Sources:
    1. Search Index (Earlybird) - ~50% of Timeline

    The search index, powered by Earlybird, is the largest single source of For You timeline content. It indexes in-network posts (from accounts you follow) and ranks them using the light ranker model.


    How it works:
  • Indexes posts in real-time as they're published
  • Uses the light ranker for fast initial scoring
  • Applies time-decay functions to prioritize recent content
  • Integrates with the search infrastructure for relevance matching

  • 2. User-Tweet-Entity-Graph (UTEG)

    Built on the GraphJet framework, UTEG maintains an in-memory graph of user-post interactions. It finds candidates by traversing this graph—for example, "users who liked posts that you liked also liked these other posts."


    Graph Traversal Patterns:
  • User → Post → User → Post (finding posts liked by users with similar tastes)
  • Post → User → Post (finding posts from users who engaged with similar content)
  • Multi-hop traversals for discovery

  • 3. Follow Recommendation Service (FRS)

    FRS doesn't just recommend accounts to follow—it also surfaces posts from accounts you might want to follow. This is a key mechanism for out-of-network discovery.


    4. Tweet Mixer Coordination

    The `tweet-mixer/` service coordinates fetching candidates from various underlying compute services. It handles:

  • Request routing to appropriate candidate sources
  • Response aggregation and deduplication
  • Fallback mechanisms when services are unavailable

  • The Mixing Process:

    Once candidates are sourced, the `home-mixer/` service (built on Product Mixer framework) combines them into your final timeline. It applies:

  • Diversity rules (avoid too many posts from the same account)
  • Recency balancing (mix of recent and older content)
  • Quality thresholds (filter low-quality candidates)
  • Personalization (based on your interaction history)

  • What This Means for You:
  • **In-network content** (from accounts you follow) competes in the search index pipeline
  • **Out-of-network content** comes through UTEG, FRS, and other discovery mechanisms
  • **Engagement patterns** determine which pipeline your content enters
  • **Graph connections** matter—interacting with accounts in your niche helps the algorithm understand where to show your content
  • Ranking Mechanisms: How Posts Get Scored

    The ranking phase is where the algorithm decides which candidates make it into your timeline and in what order. This happens through multiple ranking models working in sequence.


    The Ranking Pipeline:
    1. Light Ranker (Earlybird)

    Used by the search index for fast initial ranking. It's a lighter model that can process candidates quickly, filtering the massive pool of potential posts down to a manageable set.


    Features considered:
  • Recency (time since publication)
  • Basic engagement counts
  • User-post similarity (from embeddings)
  • Account authority signals

  • 2. Heavy Ranker

    This is where the deep learning happens. The heavy ranker is a neural network that scores candidates based on hundreds of features.


    Key features include:
  • **Engagement signals**: Weighted likes, replies, retweets, bookmarks
  • **Temporal features**: Recency, engagement velocity, time-of-day patterns
  • **User features**: Your interaction history, preferences, cluster memberships
  • **Post features**: Content type, media presence, thread length
  • **Graph features**: Social graph connections, interaction patterns
  • **Embedding similarity**: How well the post matches your interests (from SimClusters, TwHIN)

  • 3. Representation Scorer

    The `representation-scorer/` computes similarity scores between pairs of entities (users, posts, etc.) using embeddings. It answers questions like:

  • How similar is this post to posts you've engaged with?
  • How similar are you to users who liked this post?
  • Does this content match your cluster memberships?

  • Embedding Sources:
  • **SimClusters**: Sparse embeddings for community detection
  • **TwHIN**: Dense knowledge graph embeddings (from the-algorithm-ml repository)
  • **Real Graph**: Predicts likelihood of interaction between users

  • The Final Score:

    All these signals combine into a final ranking score. Posts are then:

    1. Sorted by score

    2. Filtered through visibility rules (trust & safety, spam detection)

    3. Mixed for diversity (home-mixer applies rules to avoid monotony)

    4. Served to your timeline


    Optimization Insights:
  • **Early engagement matters**: The algorithm uses time-decay functions, so early signals have more impact
  • **Engagement quality > quantity**: Profile visits and dwell time outweigh raw like counts
  • **Consistency builds authority**: Regular posting within your niche improves your embedding scores
  • **Reply velocity triggers expansion**: Rapid reply chains signal valuable content, triggering out-of-network distribution
  • Reputation Systems: How Account Quality Affects Visibility

    Your account's reputation isn't just about follower count—it's a complex score calculated by multiple systems that directly impacts your content's visibility.


    Tweepcred: The Reputation Algorithm

    Located in `/src/scala/com/X/graph/batch/job/tweepcred/`, Tweepcred is X's implementation of PageRank for calculating user reputation. It considers:


  • **Follower/Following Ratio**: Accounts following significantly more people than follow them get flagged. The danger zone appears to be following more than 60% of your follower count.
  • **Engagement Quality**: Not just how many interactions you get, but the quality of accounts engaging with you
  • **Interaction Patterns**: Who you interact with matters—engaging with low-quality or spam accounts hurts your score
  • **Account Age and Activity**: Established accounts with consistent activity patterns score higher

  • Real Graph: Interaction Prediction

    The `real-graph` model (in `/src/scala/com/X/interaction_graph/`) predicts the likelihood of a user interacting with another user. It's used to:

  • Score potential interactions
  • Identify high-value connections
  • Understand relationship strength

  • Graph Feature Service

    The `graph-feature-service/` computes features based on the interaction graph, such as:

  • "How many of User A's following liked posts from User B"
  • Cross-cluster interaction patterns
  • Engagement reciprocity

  • Trust and Safety Models

    The `trust_and_safety_models/` directory contains models for detecting:

  • NSFW content
  • Abusive behavior
  • Spam patterns
  • Low-quality accounts

  • How Reputation Affects You:
  • **Low reputation scores** trigger visibility filters that downrank your content
  • **High reputation scores** improve your content's ranking priority
  • **Association matters**: Interacting with high-reputation accounts improves your own score
  • **Ratio monitoring**: The system continuously evaluates your follow patterns

  • Practical Strategies:
  • Maintain a healthy follower/following ratio (avoid following >60% of your followers)
  • Engage with high-quality accounts in your niche
  • Avoid spam-like behavior (mass following, low-quality interactions)
  • Build genuine relationships rather than transactional connections
  • Consistency in posting and engagement patterns improves reputation over time
  • Time Decay and Engagement Windows

    The algorithm doesn't treat all engagement equally—when it happens matters just as much as what type it is.


    The Half-Life Concept:

    Posts have a temporal decay function. While exact parameters aren't public, analysis suggests posts have approximately a 6-hour "half-life"—meaning their ranking potential decreases significantly after this window.


    The Critical First Hour:

    The first hour after publication is when the algorithm makes its initial evaluation. Here's what happens:


    1. **Initial Test Phase**: Your post is shown to a small subset of your followers

    2. **Signal Collection**: The algorithm monitors engagement velocity (how quickly signals accumulate)

    3. **Expansion Decision**: If early signals are strong, the system triggers out-of-network expansion through tweet-mixer

    4. **Cascade Mechanism**: Successful posts get pushed to broader audiences


    Why Timing Matters:

    The `home-mixer/` service uses time-decay functions that heavily weight recent engagement. Posts that don't generate early signals get deprioritized quickly. The algorithm assumes that if your own followers don't engage quickly, broader audiences won't either.


    Engagement Velocity:

    This is the rate at which your post accumulates signals. High velocity (rapid early engagement) triggers:

  • Expansion to out-of-network users
  • Higher ranking scores
  • Extended visibility window

  • Optimization Strategies:
  • **Post when your audience is active**: Use X Analytics to identify peak engagement times
  • **Front-load engagement**: Actively respond to comments within the first hour (ideally within 5-10 minutes)
  • **Create urgency**: Ask questions, invite responses, be slightly controversial to trigger immediate engagement
  • **Reply chains matter**: Building conversation depth in the first hour signals high-value content
  • **Consistent timing**: Posting at regular intervals "trains" your audience to expect your content

  • The Time-Decay Mathematics:

    While exact formulas aren't public, the algorithm applies exponential decay to engagement signals. Recent engagement (last hour) has maximum weight, with older signals decaying exponentially. This means:

  • A reply in the first hour > a reply after 6 hours
  • Early profile visits trigger expansion mechanisms
  • Late engagement has minimal impact on ranking

  • Practical Application:

    Treat the first hour as your make-or-break window. Don't just post and walk away—be present, engage actively, and create conversation. The algorithm is watching, and rapid early engagement is your ticket to broader distribution.

    Verified Accounts and Visibility Multipliers

    The algorithm includes visibility multipliers for verified/premium accounts. While the exact implementation details are in X's internal systems (not fully open-sourced), the behavior is observable and significant.


    The Premium Advantage:

    Verified accounts receive visibility boosts in the ranking pipeline:

  • **In-network boost**: Approximately 4x visibility within your follower network
  • **Out-of-network boost**: Approximately 2x visibility when shown to non-followers

  • How It Works:

    The algorithm's visibility filters and ranking systems include account-type multipliers. Verified accounts get:

  • Priority in candidate sourcing
  • Higher initial ranking scores
  • Reduced filtering (fewer trust & safety restrictions)
  • Enhanced out-of-network distribution

  • Why This Exists:

    From a product perspective, premium subscriptions need to provide value. The algorithm boost is part of that value proposition. From a technical perspective, verified accounts are assumed to be higher-quality (they've paid, they're likely more invested in the platform).


    The Trust and Safety Angle:

    The `trust_and_safety_models/` treat verified accounts differently:

  • Lower spam probability scores
  • Reduced filtering thresholds
  • Faster content review processes

  • Practical Considerations:
  • **ROI calculation**: If you're serious about growth, premium can be viewed as a business expense with measurable returns
  • **Signal activation**: After subscribing, active posting signals to the algorithm that you're an engaged premium user
  • **Not a magic bullet**: Premium helps, but it doesn't replace good content and engagement strategies
  • **Combined effect**: Premium + good algorithmic practices = maximum visibility

  • The Reality:

    Premium isn't required for growth, but it provides a measurable advantage. The algorithm is designed to give verified accounts better visibility, and this is reflected in the ranking systems. For serious creators, the subscription fee can be justified as a growth investment.

    Algorithmic Anti-Patterns: What Hurts Your Visibility

    Understanding what the algorithm penalizes is just as important as knowing what it rewards. Here are common mistakes that reduce your content's visibility:


    1. Topic Inconsistency

    Jumping between unrelated topics confuses the SimClusters system. The algorithm can't determine which communities you belong to, reducing your authority scores across all clusters.


    2. Slow Engagement Response

    The algorithm tracks engagement velocity. If you don't respond to comments quickly (within the first hour), the system interprets this as low-value content and deprioritizes it.


    3. Ignoring Engagement Quality

    Focusing on raw like counts instead of signals like profile visits and dwell time misses the algorithm's actual ranking factors. Vanity metrics don't drive visibility.


    4. Unhealthy Follow Ratios

    The Tweepcred system flags accounts following >60% of their follower count. This triggers spam filters and reduces your reputation score, directly impacting ranking priority.


    5. Low-Quality Interactions

    Engaging with spam accounts, bot networks, or low-reputation accounts hurts your own reputation score. The algorithm judges you by the company you keep.


    6. Poor Timing

    Posting when your audience isn't active means missing the critical first-hour engagement window. Without early signals, the algorithm doesn't trigger expansion mechanisms.


    7. Lack of Reply Depth

    Single replies don't create the conversation chains that trigger cascade mechanisms. The algorithm rewards multi-level reply chains that signal valuable discussions.


    8. Ignoring Bookmark Signals

    Educational content that gets bookmarked is heavily weighted by the heavy ranker. Not optimizing for this signal misses a major ranking opportunity.


    9. Inconsistent Posting Patterns

    The algorithm learns your posting patterns. Inconsistency makes it harder for the system to optimize when to show your content to your audience.


    10. Neglecting Out-of-Network Discovery

    Relying solely on in-network reach (followers) limits growth. The algorithm's discovery mechanisms (UTEG, FRS) need engagement signals to work effectively.

    Advanced Optimization: Working With the Algorithm

    Once you understand the basics, here are advanced strategies based on the algorithm's architecture:


    1. Leverage Embedding Similarity

    The representation-scorer uses embeddings to find similar content. Create posts that align with high-performing content in your niche to improve similarity scores.


    2. Build Graph Connections Strategically

    The UTEG graph traversal patterns mean interacting with accounts in your niche creates pathways for your content to reach their audiences. Build these connections intentionally.


    3. Optimize for Multiple Clusters

    Being in multiple related SimClusters (e.g., "AI" and "machine learning" and "data science") increases your potential reach. Create content that resonates across related communities.


    4. Time Your Engagement Velocity

    Coordinate with your audience to generate rapid early engagement. This might mean posting when you're available to respond immediately, or building anticipation for scheduled posts.


    5. Create Bookmark-Worthy Content

    Educational threads, detailed breakdowns, and reference material get bookmarked. This is a strong signal to the heavy ranker—optimize for it.


    6. Extend Post Half-Life

    The algorithm's time-decay means older posts fade. Retweeting your own high-performing content after 12+ hours can trigger new engagement cascades and extend visibility.


    7. Monitor Your Reputation Signals

    Track your follower/following ratio, engagement quality, and interaction patterns. These all feed into Tweepcred, which affects your ranking priority.


    8. Build Reply Chain Depth

    Don't just reply once—create multi-level conversations. The algorithm's graph features track conversation depth, and deep chains trigger expansion mechanisms.


    9. Use Trending Topics Within Your Niche

    The search index (~50% of timeline) prioritizes trending content. Relating trending topics to your niche taps into this high-traffic pipeline.


    10. Analyze High-Performing Patterns

    Bookmark your best-performing posts and analyze patterns. The algorithm rewards consistency—recreating successful patterns improves your embedding scores over time.

    Understanding the Machine

    X's recommendation algorithm is no longer a black box. The open-source code reveals a sophisticated system designed to surface engaging content to interested users. It's not arbitrary—it follows specific rules, weights, and patterns.


    Key Insights from the Code:
  • **Community detection (SimClusters)** organizes users and determines content distribution
  • **Engagement signals** are weighted differently—reply chains and dwell time matter more than likes
  • **Time decay** means early engagement is critical for visibility expansion
  • **Reputation systems (Tweepcred)** affect ranking priority based on account behavior
  • **Multiple candidate sources** mean content can reach audiences through various pathways
  • **Ranking models** (light and heavy rankers) score candidates based on hundreds of features
  • **Mixing and filtering** ensure diversity and quality in your final timeline

  • The Algorithm's Design Philosophy:

    The system is optimized for engagement, not content quality. It rewards posts that generate rapid, meaningful interactions within specific communities. Understanding this helps you create content that naturally aligns with how the system is designed to work.


    Your Action Plan:

    1. **Establish niche consistency** - Let SimClusters understand where you belong

    2. **Optimize for high-weight signals** - Profile visits, dwell time, reply chains

    3. **Front-load engagement** - Be active in the first hour after posting

    4. **Build reputation** - Maintain healthy ratios, engage with quality accounts

    5. **Create bookmark-worthy content** - Educational, reference material that gets saved

    6. **Time your posts** - Match your audience's active hours

    7. **Build graph connections** - Interact strategically within your niche

    8. **Consider premium** - If growth is a priority, the visibility boost is measurable


    The Bottom Line:

    The algorithm is a machine designed to find and promote engaging content. Work with its design rather than against it. Create content that naturally generates the signals it's looking for, and the system will do the rest.


    Explore the code yourself: [github.com/X/the-algorithm](https://github.com/X/the-algorithm)


    Now that you understand how it works, go create something worth engaging with.

    Frequently Asked Questions

    X's recommendation system consists of multiple services: candidate sourcing (search index, UTEG, FRS), ranking models (light ranker, heavy ranker), and mixing services (home-mixer). The search index provides ~50% of For You timeline content, with the rest coming from graph-based discovery and recommendation services.
    SimClusters is X's community detection system that organizes users into overlapping communities based on interaction patterns. When you post consistently within a niche, the algorithm assigns you to relevant clusters and shows your content to other users in those same clusters. Topic inconsistency confuses the clustering system and reduces visibility.
    The algorithm weights different signals differently: profile visits (~24x), dwell time (~22x), and reply chains (~75x for reply-to-reply) are weighted much higher than standard likes. The heavy ranker uses these weighted signals along with embedding similarity and graph features to score content.
    Multiple parallel pipelines source candidates: the search index (Earlybird) provides ~50% of timeline content from in-network posts, UTEG uses graph traversals to find related content, FRS surfaces posts from accounts you might want to follow, and tweet-mixer coordinates fetching from various compute services.
    Tweepcred is X's PageRank-based reputation algorithm that calculates user reputation scores. It considers follower/following ratios (flagging accounts following >60% of followers), engagement quality, interaction patterns, and account behavior. Higher reputation scores improve content ranking priority.
    The algorithm uses time-decay functions that heavily weight recent engagement. In the first hour, your post is tested on a subset of followers. Strong early engagement signals trigger out-of-network expansion through tweet-mixer. Posts that don't generate early signals get deprioritized quickly due to the ~6-hour half-life.
    The algorithm includes visibility multipliers for verified accounts: approximately 4x boost within their network and 2x boost outside their network. The ranking systems and visibility filters treat verified accounts differently, giving them priority in candidate sourcing and reduced filtering thresholds.
    UTEG is a GraphJet-based service that maintains an in-memory graph of user-post interactions. It finds candidates through graph traversals (e.g., 'users who liked posts you liked also liked these posts'). This is a key mechanism for out-of-network content discovery.
    The heavy ranker is a neural network that scores candidates using hundreds of features: weighted engagement signals, temporal features (recency, velocity), user features (interaction history, cluster memberships), post features (content type, media), graph features (social connections), and embedding similarity scores from SimClusters and TwHIN.
    While you can't see exact ranking scores, X Analytics provides engagement metrics. The open-source code reveals the architecture and components, but exact weights and formulas are proprietary. You can infer ranking factors from your analytics: engagement velocity, profile visits, reply depth, and timing patterns.

    Ready to Grow Your X Presence?

    Automate your replies, schedule posts, and dominate X effortlessly with ReplyXpert.

    X Algorithm Deep Dive: How the Recommendation System Works | Technical Guide