The Reddit Algorithm Explained: What Actually Ranks in 2026
A sourced breakdown of how the reddit algorithm ranks posts in 2026: vote velocity, comment signals, time decay, and personalization, with no guesswork.
2026-07-08

The Reddit algorithm ranks posts using a mix of upvote velocity in the first hours, the ratio of upvotes to downvotes, how much genuine comment activity a post generates, a time-decay function that steadily discounts older posts, and a personalization layer that reorders what each logged-in user actually sees. Reddit has published the core math behind the "Hot" ranking (a logarithmic vote score plus a time penalty) but has never published the personalization model that sits on top of it. Anyone who tells you the exact weighting of the modern feed is guessing, us included where we're guessing. What follows is what's documented, what's reasonably inferable from how the platform behaves, and what's flagged as unconfirmed.
We manage Reddit programs for funded B2B SaaS, fintech, and DTC brands, so this isn't academic for us. Every posting decision we make, timing, subreddit choice, whether to seed early engagement, comes back to some version of the mechanics below.
The reddit algorithm formula Reddit actually open-sourced
Reddit's original codebase was open source for years, and the "Hot" sorting formula from that codebase is the only piece of ranking logic Reddit has ever shown publicly in full. Amir Salihefendic, who worked on Reddit's ranking, wrote up the formula and its logic in a widely cited Medium post. The shape of it:
hot_score = log10(max(|upvotes - downvotes|, 1)) × sign(upvotes - downvotes) + (post_timestamp / 45000)
Two things matter here more than the notation:
Votes are scored on a logarithm, not a straight count. The first 10 upvotes move the score roughly as much as the next 100, and that same jump happens again from 100 to 1,000. Practically, this means a post's first burst of votes counts for far more than the same number of votes arriving later.
There's a built-in time decay. The timestamp / 45000 term adds roughly one point to the score every 12.5 hours. Combined with the logarithmic vote term, this is why a post that isn't gaining votes fast enough gets buried under newer posts even if its total vote count is still respectable.
Hot, Best, Top, and New aren't the same algorithm
This is where a lot of confusion about "the reddit algorithm" comes from: there isn't one, there are several, and they answer different questions.
Hot
Optimized for "what's active right now." It rewards vote velocity heavily and decays fast, which is why a subreddit's Hot tab can look completely different at 9am and 9pm even with no new top posts.
New
No vote weighting at all. Pure reverse-chronological. This is the tab that matters most in the first minutes after you post, because it's the only place a zero-vote post is guaranteed visibility. Early subreddit regulars who browse New are often the difference between a post that gets its first few votes and one that dies unseen.
Top
Ranks strictly by net score (upvotes minus downvotes) within a chosen time window (day, week, month, year, all-time). No decay, no velocity weighting, just total votes for that window. A post can dominate Top for the week while having fallen off Hot entirely, because Top doesn't punish age the way Hot does.
Best
Reddit's default sort on the Home feed and on many subreddits. It's explicitly designed to account for vote count and the confidence interval around the upvote ratio, not just raw score, an idea that traces back to a statistical approach Reddit engineer randallsquared described for handling posts with very few votes fairly.
The practical read: Hot rewards speed, New rewards being first, Top rewards total volume, Best rewards consistency plus (for logged-in users) fit with what that specific person tends to engage with.
Comment engagement is a ranking signal, not just a vanity metric
Reddit hasn't published a comment-weighting formula the way it has for Hot's vote score, so anything about the exact math here is inference, not documented fact. What is well established, from Reddit's own product behavior and from how moderators and marketers who track this describe it, is that comments function as a stronger, harder-to-fake engagement signal than upvotes:
- A post that pulls real replies is generating time-on-post and return visits (people coming back to check replies), both of which Reddit's ranking and recommendation systems have strong incentive to reward, since they're core engagement metrics for the platform.
- Comment threads, not just comment count, seem to matter. A post with 40 comments that are actually a back-and-forth discussion reads differently to both human moderators and, plausibly, to ranking signals than a post with 40 disconnected one-line replies.
- Reddit's Contributor Quality Score system, which Reddit does document, explicitly factors in account behavior patterns over time, and healthy comment participation (not just posting) is part of what separates a trusted account from a flagged one.
The operational point: a post that gets a few genuine, on-topic comments in its first hour is doing more for its own reach than one that gets the same number of upvotes with zero discussion.
The first hour is not a cliché, it's baked into the math
Because of the logarithmic vote scoring and the roughly 12.5-hour decay window in the published Hot formula, a post's fate on Hot is disproportionately decided early. A post that gets 20 upvotes in its first 30 minutes is building score at a rate a post that trickles to 20 upvotes over six hours simply can't match, even though both eventually hit the same total.
This is also why a subreddit's own activity rhythm matters more than any universal "best time to post" advice. A B2B SaaS subreddit that's mostly US professionals has a real online window; posting into it at 3am ET means the first hour, the one the algorithm weights hardest, passes with almost nobody around to vote or comment. We've seen this exact mistake sink otherwise-good posts for clients: solid content, wrong subreddit-specific timing, dead on arrival before the content was ever the problem.
None of this means buying early votes or running them through a bot network. Reddit's anti-manipulation systems are specifically built to catch clustered, non-organic voting patterns, and getting caught doesn't just kill the post, it can tank the account's trust score for everything after.
Subreddit-level factors shape a post's ceiling before it's even posted
A post's reach isn't decided by the global algorithm alone. Each subreddit is effectively its own ranking environment layered on top of the platform-wide mechanics:
- Subscriber count sets the ceiling, not the outcome. A subreddit with 800,000 subscribers has more possible reach than one with 12,000, but a smaller, more engaged subreddit routinely outperforms a bigger, quieter one on real engagement per post. We've had more pipeline come out of tightly focused 15,000-subscriber communities than from posting into a general-purpose mega-sub where a post gets buried in ten minutes.
- Historical engagement rate matters more than size. Subreddits with an active, reply-heavy culture (people show up, argue, ask follow-ups) tend to be where the comment-engagement signal we described above actually gets triggered. Subreddits that are mostly lurkers and drive-by upvotes don't generate that signal even at scale.
- AutoModerator and mod-set rules gate visibility before ranking even applies. Karma minimums, account-age requirements, and content-type restrictions (no links, no self-promotion, image-only, etc.) determine whether a post is even eligible to be ranked in the first place. This isn't part of "the algorithm" in the ranking-math sense, but it's the first gate every post has to clear.
- Personalization changed meaningfully in 2026. Reddit formally phased out r/all as a shared, unfiltered front page, redirecting it to the personalized Home feed as of April 2, 2026, per Reddit's own changelog. Reddit's help center describes Home feed recommendations as accounting for a user's activity history, which communities they engage with, and what types of posts they've upvoted or commented on before. What Reddit has not published is the specific weighting model behind that personalization. Treat any claim of an exact personalization formula, including ours if we ever made one, as speculative.
This is one reason "post in the biggest subreddit you can find" is bad advice. We've run this for a Series B fintech client where distributing the same message across 14 tightly targeted subreddits, instead of chasing the two or three largest ones, produced the bulk of a $4.2M pipeline, because each community's own engagement rate did more work than raw subscriber count would predict.
Why engagement bait works less over time, not more
A pattern we see constantly from teams new to Reddit: a post format that spikes hard once (a controversial hook, a rage-bait framing, an obvious engagement trick) and the team assumes they've found a repeatable growth lever. It rarely holds up, for reasons that map directly to the mechanics above:
- Downvote ratio drags the score. The Hot and Best formulas both account for the balance of upvotes to downvotes, not just raw upvote count. Content that provokes reflexive downvotes alongside upvotes scores worse than steadier content with a cleaner ratio, even at a similar vote total.
- Moderators and CQS both watch for pattern repetition. An account or a brand that runs the same bait format repeatedly starts reading as manipulative to both human mods and Reddit's own trust systems, which can suppress future posts regardless of that day's vote count.
- Comment quality drops even as comment count rises. Bait formats generate reactive, low-substance comments. Given that comment engagement appears to function as a quality signal (see above), a thread full of one-line reactions doesn't carry the same weight as a thread with genuine discussion, even if the numbers look similar on the surface.
The accounts and brands that hold up on Reddit long-term are the ones optimizing for the second and third posts, not just the first spike. One dev-tools client of ours held the #1 Google position on a competitive term for 14 months off a single Reddit post, and that kind of durability comes from a post that earned real discussion, not one engineered to bait a reaction and fade.
FAQ
Does Reddit use AI or machine learning to rank posts?
Yes, at least for the personalized layer. Reddit's own help documentation confirms the Home feed uses machine learning to personalize recommendations based on a user's activity and engagement history. The base "Hot" sort within a subreddit is closer to the published formula (logarithmic votes plus time decay), while the Home feed and cross-subreddit recommendations add a personalization layer on top that Reddit hasn't detailed publicly.
Do upvotes matter more than comments for ranking?
Neither is published as strictly "more important" than the other. What's better supported is that they do different jobs: upvotes drive the score in the published Hot formula directly, while comments appear to function as a stronger trust and engagement signal that likely feeds personalization and account-level trust (CQS) over time. A post with strong comments but modest upvotes often has more staying power than one with the reverse.
Can I speed up ranking by buying upvotes or using bots?
No, and it's a bad trade even if it worked short-term. Reddit's anti-manipulation systems are built specifically to detect clustered, non-organic voting patterns, and getting flagged can suppress the post immediately and damage the account's or subreddit's standing for everything that follows. It also violates Reddit's terms outright. None of the mechanics described in this piece are a workaround for genuine engagement, they're a description of how genuine engagement gets rewarded.
Is there a single best time to post on Reddit?
Not universally. Because the first hour matters disproportionately (logarithmic vote weighting plus time decay), the better question is when your specific target subreddit's audience is actually online, which varies by community, timezone mix, and topic. A generic "post at 9am ET" rule ignores that a niche B2B subreddit and a general entertainment subreddit have completely different activity windows.
Knowing the mechanics is not the same as running the channel
Everything above is the mechanics. Operating inside them consistently, choosing the right subreddits for a specific ICP, timing posts against a community's real activity window, building the account trust to post credibly in the first place, and doing it across weeks and months without triggering the exact spam and manipulation detection this piece describes, is a different job. It's the job we do full-time for funded B2B SaaS, fintech, and DTC brands.
Related reading
- Reddit Ads Cost in 2026: Real CPM, CPC & Budget Data
- How to Create a Subreddit for Your Brand (2026)
- The Reddit marketing guide
If you want Reddit run as a real channel instead of a side project, book a call with Subreddit Marketing.
Sources:
Ready to run Reddit like a channel?
30-minute intro call with a partner. If we're not the fit, we'll tell you in the first five minutes.
We take on 3 new engagements per quarter. Serious teams only — minimum $5k/mo.