The Reddit algorithm decides whether your post reaches thousands of readers or dies at 1 upvote, and it makes that decision fast. Most explanations of it repeat the same vague advice about "early engagement." This guide shows you the actual math, plus the 2026 feed changes that made most existing advice outdated.
The Reddit algorithm is a stack of ranking systems built on a public Hot formula that scores posts by net upvotes and post age, where votes count logarithmically and every 12.5 hours of age costs a post a tenfold vote handicap, with machine learning personalization layered on top in the Home feed.
We run Reddit engagement at scale at UpvoteGG, which means we watch thousands of posts move through Hot feeds every week. This article is the mental model we actually operate on, with every number sourced or computed from the formula itself.
Key takeaways
- Reddit's core Hot formula is public: net upvotes count logarithmically, and age is penalized at a fixed rate of one order of magnitude of votes per 12.5 hours.
- A brand-new post with 10 net upvotes outranks a 25-hour-old post with anything under 1,000. Early votes are not slightly better, they are exponentially better.
- Reddit removed r/all in April 2026. Cross-community reach now runs through the ML-personalized Home feed and r/popular, which changes what "going viral" means.
- Karma, account age, views, and external traffic are not ranking inputs. They act as gates and click-through levers, not score.
- Only logged-in users can vote, and they are now the slower-growing minority of Reddit's audience, so a small electorate controls what everyone sees.
How Does the Reddit Algorithm Actually Rank Posts?
Reddit ranks posts in a subreddit's Hot feed using a score built from net upvotes and post age. Votes count logarithmically, so the first 10 upvotes matter as much as the next 90, while every 12.5 hours of age costs a post a full order of magnitude of votes.
We know this with unusual precision because Reddit open-sourced its codebase for years (the repository was archived in 2017 but remains public), and developer Amir Salihefendic published the canonical breakdown of the ranking code back in 2009. The core Hot function takes three inputs:
- Net score: total upvotes minus total downvotes
- Sign: whether that net score is positive, negative, or zero
- Time: seconds elapsed since Reddit's epoch, December 8, 2005
The formula is essentially log10(net votes) + seconds since epoch / 45000. Two properties of that one line explain almost everything you see on Reddit:
Votes are logarithmic. Going from 1 to 10 net upvotes adds exactly as much score as going from 10 to 100, or from 100 to 1,000. The algorithm compresses big numbers hard, which is why the first handful of votes on a post carry so much weight relative to everything that comes after.
Time is linear and relentless. The time term grows every second for newer posts, so an older post falls behind at a constant rate. It never stops and it never slows down. Reddit designed it this way on purpose, so that a few legacy megahits could never squat on a front page forever.
Reddit has layered machine learning on top of this for personalized surfaces (more on that below), and the company stopped publishing code updates years ago. But inside a subreddit, the Hot and Rising feeds still behave exactly like this curve predicts, and it is the foundation every other surface builds on.
How Much Are Early Upvotes Really Worth?
In the Hot formula, votes offset age at a fixed exchange rate: 45,000 seconds, or 12.5 hours, per tenfold increase in votes. A brand-new post with 10 net upvotes ties a 12.5-hour-old post with 100 upvotes, and a 25-hour-old post with 1,000.
That divisor of 45,000 is the single most useful number in this entire topic, and almost nobody publishes what it implies. Here is the handicap it creates, computed directly from the public formula:
| Post age | Net upvotes needed to tie a fresh post that has 10 | Handicap |
|---|---|---|
| 0 hours (fresh) | 10 | 1x |
| 6 hours | ~30 | 3x |
| 12.5 hours | 100 | 10x |
| 25 hours | 1,000 | 100x |
| 37.5 hours | 10,000 | 1,000x |
On a log scale the handicap is a straight line: every 12.5 hours multiplies the votes you need by ten. That constant slope is the whole game.
Read that table again. After roughly one day, a post needs one hundred times the votes just to sit level with a fresh post that scraped together 10. This is why "the first hour decides everything" is not folklore, it is arithmetic. The votes a post earns while young are the only votes cheap enough to buy ranking with.
It also produces the compounding loop every Reddit marketer eventually notices. A post that picks up votes quickly climbs the subreddit's Hot feed while its time penalty is still tiny, gets shown to more people, collects more votes, and climbs again. A post that stalls in its first hour gets buried by the decay term before the audience that would have loved it ever scrolls past. In our own campaign work, the pattern is blunt: posts that fail to gain any traction in the first hour almost never recover, no matter how good the content is, because the math has already moved on.
Three practical consequences follow:
- Post when your audience is awake. Velocity is votes per minute, and you cannot get velocity from a sleeping subreddit. Run the target community through our free best time to post tool before you schedule anything.
- Total upvotes are a vanity metric. A post that finishes at 300 upvotes accumulated over two days performed worse, algorithmically, than one that hit 80 in its first two hours. For the full picture of what upvotes actually do for a post beyond ranking, see how Reddit upvotes work.
- The first-hour window is where help matters. Everything you invest in a post pays off through early velocity or not at all. If you want that window handled rather than left to luck, our Reddit upvote service delivers gradual engagement from aged accounts exactly when the formula weighs it most.
Comment activity feeds the same loop indirectly. Comment count is not a term in the post formula, but a thread with visible discussion earns a higher click-through rate from the feed, and some of those readers vote. Fast replies from the author in the first hour are one of the cheapest velocity levers that exist.
What Do Hot, Best, New, Top, and Rising Actually Sort By?
Each Reddit sort option is a different calculation, and only one of them is the time-decay formula described above. Hot is score versus age, New is pure chronology, Top is raw votes in a window, Rising is short-term velocity, and Best is a personalized ranking that only exists on the Home feed.
| Sort | What it calculates | What it means for you |
|---|---|---|
| Hot | Log votes minus time decay (the classic formula) | The default subreddit view and the main battlefield; win it early or not at all |
| New | Submission time only | Your guaranteed moment of visibility; strong subreddits have "new queue" regulars who cast the first votes |
| Rising | Vote velocity right now | The early-warning feed; appearing here means the loop has started |
| Top | Raw net votes within a chosen window | Ignores decay entirely; this is where posts have a long shelf life |
| Controversial | High engagement with a near-even vote split | Deliberately surfaces disputed posts; being here suppresses you in Hot |
| Best (Home only) | ML-personalized blend of your subscriptions and behavior | Not a subreddit sort; this is the surface that replaced the shared front page |
Comments run on their own system. Reddit's default Best comment sort uses the lower bound of the Wilson score confidence interval, a statistical fix (famously championed for Reddit by xkcd's Randall Munroe) that stops a comment with 3 upvotes and 0 downvotes from outranking one with 900 upvotes and 100 downvotes. Practically: a well-received comment posted early into a thread compounds the same way posts do, which is why the author's own first comment is prime real estate.
What Changed in the Reddit Algorithm in 2026?
The biggest structural change in years: Reddit removed r/all in April 2026 and consolidated cross-community discovery into the ML-personalized Home feed and the curated r/popular feed. Platform-wide virality through a shared front page no longer exists on the modern apps and website.
The removal rolled out in stages: r/all disappeared from the mobile apps in December 2025, a Reddit admin confirmed the decision in a February 26, 2026 r/help recap ("the r/all experiment has concluded and the decision was made to remove r/all"), and by early April 2026 the URL redirected to the Home feed on the apps and modern desktop site. Only old.reddit.com still shows it. CEO Steve Huffman has been open about the direction, publicly criticizing one-size-fits-all feeds and pushing personalization.
For anyone trying to rank, this redraws the map of where visibility actually comes from:
| Surface | What ranks you there | Status in 2026 |
|---|---|---|
| Subreddit Hot / Rising | The classic velocity + decay formula | Unchanged; still the core game |
| Home feed ("Best") | ML personalization: subscriptions, past engagement, community activity | Now the main cross-community surface; rewards posts that perform inside their own community |
| r/popular | Curated trending with heavy filtering | The only remaining shared trending feed |
| r/all | Unfiltered platform-wide ranking | Removed April 2026 (old.reddit only) |
| Reddit search + Google + AI answers | Relevance plus accumulated score, no decay | Growing; a strong post earns traffic for years |
Two tactical shifts follow. First, "going viral on Reddit" now means dominating your own community's Hot feed hard enough that the Home feed algorithm redistributes you to subscribers and lookalike users, not catching a wave on a universal front page. Community-level performance is the whole game. If your target is the top of a large subreddit specifically, the mechanics are covered in our Reddit front page guide.
Second, the decay-free surfaces got more valuable. Search inside Reddit, Google's forum results, and AI assistants all surface old threads by relevance and score, with no 45,000-second penalty. A post that wins its first day keeps paying through those channels indefinitely, which is a big part of why upvoted threads keep showing up in AI answers, a dynamic we break down in Reddit and AI search.
What Signals Does the Reddit Algorithm Ignore?
The ranking formula uses votes and time. It does not use karma, account age, view counts, external traffic, or post format. Those factors still decide outcomes, but through gates and click-through behavior rather than through the score itself.
Karma and account age are gates, not score. Nothing in the ranking math reads the author's karma. But subreddit AutoModerator rules and Reddit's spam systems absolutely do, and they act before ranking even starts: a low-karma or young account gets its post filtered in many communities, which means zero votes, which means no ranking at all. That is why karma feels like a ranking factor even though it is not one. The full breakdown of what karma actually does is in what Reddit karma is.
The removal stack outranks the ranking stack. AutoModerator, subreddit rules, spam filters, and safety systems can take a winning post to zero in one second. In our experience, the majority of "the algorithm buried my post" complaints turn out to be silent removals, not ranking failures. Before blaming velocity, verify the post is actually visible; our guide to why Reddit posts get removed walks through every mechanism, and you can check an account's standing in seconds with the free shadowban checker.
Views and external traffic are invisible. Sending 10,000 visitors from X or a newsletter to your Reddit post adds nothing to its score. Only votes and comments from logged-in Reddit users register. External pushes help only to the degree those visitors log in and vote.
Edits do not reset anything. The score clock starts at submission and editing does not touch it. Posting a stub and editing in the real content later just wastes your cheapest votes on an empty post.
Format is score-blind but audience-sensitive. Text, link, image, and video posts run through the same formula. They earn very different click-through and vote rates depending on the community, so format still decides outcomes, just via human behavior rather than algorithmic preference.
Who Actually Votes on Reddit? (The Ranking Electorate Problem)
Only logged-in users can vote, and they are a shrinking share of Reddit's audience. Per Reddit's Q1 2026 shareholder letter, logged-out users grew 26% year over year while logged-in users grew just 7%, out of 126.8 million daily active uniques. The people who control rankings are a minority of the people who see them.
This is the most underrated fact about the Reddit algorithm. Most of the audience your post reaches, especially the audience arriving from Google and AI answers, is logged out and mechanically incapable of feeding the ranking loop. The votes that decide visibility come from the logged-in core: subscribers browsing their communities and the small band of users who patrol New queues.
Three implications we see constantly in campaign work:
- Your real electorate is smaller than the subscriber count. A 2-million-member subreddit might have a few thousand active voters in any given hour. Benchmark what winning actually takes by checking typical top-post scores with the free subreddit stats checker instead of assuming size equals difficulty.
- A handful of early downvotes carries real power. In a small electorate, 3-4 quick downvotes can knock a post off the New feed's radar before honest voters arrive. How downvotes affect score, visibility, and your account is covered in Reddit downvotes explained.
- You cannot audit any of it. Reddit deliberately fuzzes displayed scores, adding noise so the number you see wobbles and never exactly matches real votes. It is an anti-manipulation measure, and it means obsessively refreshing your score tells you less than watching your position in the feed.
How Do You Work With the Reddit Algorithm in 2026?
Working with the algorithm means engineering the conditions for early velocity: pass the gates before posting, submit complete content when the community is active, and concentrate all engagement effort into the first hour. Everything after that window is maintenance, not ranking.
Before posting. Confirm the account clears the community's karma and age gates and is not shadowbanned. Study what the subreddit's Hot feed actually rewards this month, not what worked in a screenshot from 2023. Pull the community's active hours and schedule inside them.
At submission. Post the finished product; there is no second chance at the ranking clock. Spend disproportionate time on the title, because the feed vote is a title vote. Then immediately add a substantive first comment to give early readers something to engage with.
In the first hour. Reply to every comment fast; each reply is engagement the loop can compound. Watch position in New and Rising rather than the fuzzed score. If the post is visible, clean, and well-timed but starting cold, this is the exact window where seeded early votes change the trajectory, because the table above says those are the only cheap votes the post will ever get.
After the window. Win or lose, log it: subreddit, time, title style, first-hour votes, final score. Ten posts of records beat any generic best-practices list, because every community's electorate behaves differently. For the full organic playbook layer on top of these mechanics, see how to get upvotes on Reddit.
The algorithm has not fundamentally changed since 2009: it pays for speed and punishes age, mercilessly and predictably. What changed in 2026 is where that formula's winners get distributed. Master the first hour inside your community, and the personalized feeds do the rest.
FAQ
Is the Reddit algorithm public? Partially. Reddit's original ranking code was open source and remains publicly archived, so the core Hot formula (logarithmic votes plus time decay) is fully documented. Reddit stopped publishing updates years ago, and modern surfaces like the Home feed add closed-source machine learning on top, but subreddit sorting still tracks the public formula.
Does karma affect the Reddit algorithm? No, karma is not an input to the ranking formula. It matters as a gate: subreddits and spam filters use karma and account age to decide whether your post is allowed to exist at all. A filtered post gets zero votes, so low karma kills visibility before ranking ever begins.
Did Reddit remove r/all? Yes. Reddit phased out r/all between December 2025 and April 2026, and links now redirect to the personalized Home feed on the apps and modern website. Only old.reddit.com still shows it. r/popular remains as the single shared trending feed for content outside your subscriptions.
How long does a Reddit post stay on Hot? Usually under a day. The formula demands ten times more votes for every 12.5 hours of age, so even strong posts get displaced by fresh momentum within 12 to 24 hours in active communities. Small subreddits decay slower in practice because fewer new posts compete for the same slots.
Does editing a Reddit post reset its ranking? No. The ranking clock starts at submission and edits never touch it, and edits do not boost score either. Submitting an unfinished post to grab an early timestamp backfires, because the cheap early votes land on content that cannot convert readers into voters.
Do downvotes hurt more than upvotes help? Mathematically they are symmetric, since ranking uses net score. Practically, early downvotes hurt disproportionately: they can stall a post below the visibility threshold during the only window when votes are cheap, and heavy downvote patterns also feed Reddit's spam and Controversial detection on top of the score damage.
Related reading