glossary

As regras de ranqueamento por trás de Reddit hot vs new vs top

Taras Shynkarenko
Taras Shynkarenko
•Updated: •8 minutos de leitura
As regras de ranqueamento por trás de Reddit hot vs new vs topAs regras de ranqueamento por trás de Reddit hot vs new vs top

TL;DR

8 minutos de leitura

O Reddit publica descrições de uma linha para hot, top, new e rising no artigo de ajuda Content Recommendations e não diz absolutamente nada sobre controversial ou best. A própria documentação da API contradiz uma dessas linhas: o artigo de ajuda diz que rising "can be filtered by time as well", enquanto a referência da API dá o parâmetro t só para /top e /controversial, nunca para /rising. As fórmulas de verdade só são conhecidas por reddit-archive/reddit, a base de código aberta que o Reddit parou de atualizar em 2017, onde hot soma o log10 do score ao tempo de submissão dividido por 45.000 segundos, controversy é a magnitude elevada ao equilíbrio entre up e down, best é um limite inferior de confiança de 80% e rising é upvotes divididos por pageviews.

Qual é a diferença entre hot, new e top no Reddit?

A diferença prática em Reddit hot vs new vs top é qual número cada ordenação lê primeiro: new lê o carimbo de tempo da submissão e mais nada, top lê o score líquido dentro de uma janela de tempo que você escolhe, e hot mistura os dois para que um post decaia e saia da listagem conforme envelhece. A própria central de ajuda do Reddit confirma esse formato em uma linha para cada, e para bem antes de chegar a uma fórmula.

Seis ordenações existem como endpoints de listagem na referência da API do Reddit, e só quatro delas ganham algum texto na central de ajuda.

OrdenaçãoEndpointAceita filtro de tempoDescrita na central de ajuda do Reddit
Hot/r/{subreddit}/hotSem parâmetro t, mas aceita o filtro geográfico gSim
New/r/{subreddit}/newNãoSim
Top/r/{subreddit}/topt = hour, day, week, month, year, allSim
Rising/r/{subreddit}/risingNãoSim
Controversial/r/{subreddit}/controversialt = hour, day, week, month, year, allNão
Best/bestNãoNão

Hot é o padrão. O artigo Content Recommendations do Reddit afirma que "Content on a community page is sorted by "hot" by default", com a possibilidade de sobrescrever por comunidade para contas logadas.

O que o próprio Reddit publica sobre cada ordenação?

Quatro frases, todas no artigo de ajuda Content Recommendations, citadas aqui na íntegra:

  • Hot: "This sort prioritizes recent posts that have been getting upvotes. Hot can be used if you're looking for trending topics."
  • Top: "This sort prioritizes posts that have all-time high upvote numbers and comments. Top can be filtered by time as well."
  • New: "This sort prioritizes the newest posts, regardless of upvotes and comments. New is best used if you're trying to see the most up-to-date information."
  • Rising: "This sort prioritizes posts with the most recent views. Rising can be filtered by time as well."

Controversial não ganha frase nenhuma em lugar nenhum da central de ajuda. /best também não, o endpoint que sustenta o feed inicial de quem está logado. Para visitantes deslogados, o artigo diz que o feed Popular "showcases the most popular recent posts on Reddit, as determined by net upvotes", que é o único sinal de ranqueamento que o Reddit nomeia abertamente.

Onde as próprias páginas do Reddit se contradizem?

Em rising, e em hot. As duas contradições estavam no ar em 13 de setembro de 2026.

O artigo de ajuda diz que rising "can be filtered by time as well", e oferece "you may only want Rising content from last week" como exemplo. A referência da API do Reddit dá a /r/{subreddit}/rising estes parâmetros e mais nenhum: after, before, count, limit, show, sr_detail. O parâmetro t, documentado como "one of (hour, day, week, month, year, all)", pertence a /top e /controversial. Não existe filtro de tempo em rising para usar.

Hot é descrito duas vezes, de formas diferentes. O artigo Content Recommendations chama de "recent posts that have been getting upvotes". O artigo sobre ordenações de busca chama de "posts that have recently been getting upvotes, comments, etc." Um coloca a recência no post e o outro coloca nos votos, e essas não são a mesma ordenação. O Reddit não reconcilia as duas.

Uma pessoa rola o celular no sofá, referência ao código arquivado que antes ranqueava posts assim.

O que o código de ranqueamento aberto de fato calculava?

O código de ranqueamento do Reddit foi público até a empresa arquivar o repositório reddit-archive/reddit. Tudo abaixo vem de r2/r2/lib/db/_sorts.pyx e r2/r2/lib/rising.py nesse arquivo. O ranqueamento em produção hoje é fechado, então trate isto como a última versão publicada, não como o comportamento atual.

Hot combinava a ordem de grandeza do score com o horário de submissão:

s = score(ups, downs)
order = log10(max(abs(s), 1))
seconds = date - 1134028003
return round(sign * order + seconds / 45000, 7)

Duas constantes carregam o design inteiro. 1134028003 é o timestamp Unix de 2005-12-08 07:46:43 UTC, mais ou menos o lançamento do Reddit, usado como época privada. 45000 é 12,5 horas em segundos, então cada 12,5 horas de idade valiam exatamente um ponto de score em log10. Como o termo do score é logarítmico, o décimo upvote movia um post tanto quanto os noventa seguintes.

Controversy multiplicava volume por equilíbrio:

magnitude = ups + downs
balance = float(downs) / ups if ups > downs else float(ups) / downs
return magnitude ** balance

Um post com 500 up e 500 down tinha equilíbrio 1,0 e marcava sua magnitude cheia. Um post com 1.000 up e 10 down tinha equilíbrio perto de 0,01 e marcava perto de 1. Controversial premiava um voto dividido, não um voto negativo.

Best, a ordenação de comentários chamada confidence no código, pegava o limite inferior de um intervalo de score de Wilson em z = 1.281551565545, comentado na fonte como "80% confidence". Um comentário com 2 up e 0 down perde para um comentário com 40 up e 3 down, porque a amostra menor tem intervalo mais largo.

RedReplier
RedReplier

Começar

Reddit, X, Bluesky e HN

Alertas de intenção em tempo real

Respostas IA ilimitadas

Classificado por intenção de compra

Rising pontuava cada link como upvotes divididos por pageviews, e excluía qualquer coisa com um upvote ou menos:

def score(link):
    count = link_counts[link._fullname][0]
    return float(link._ups) / max(count, 1)

Esse é o único ponto em que o código arquivado e a central de ajuda atual concordam em linhas gerais, já que a descrição do rising é a única descrição de ordenação que menciona visualizações.

As duas constantes dentro do hot
Época: 11340280032005-12-08 07:46:43 UTC, aproximadamente o lançamento do Reddit
Unidade de tempo: 45000 segundos12,5 horas por ponto log10 de pontuação
A fórmula arquivada do hot media a idade em relação a esses dois números fixos.

Quais ordenações aceitam uma janela de tempo?

Só top e controversial, e as duas aceitam os mesmos seis valores. A referência da API documenta t como "one of (hour, day, week, month, year, all)", e listagens usam limit 25 por padrão, com máximo de 100.

Isso importa para quem puxa o Reddit pela API em vez de pelo site. /top?t=all num subreddit grande devolve posts de uma década atrás, útil para achar as perguntas que uma comunidade repete e inútil para flagrar um tópico de hoje. /top?t=day é o que a maioria dos fluxos de monitoramento realmente quer.

Como as ordenações de comentários diferem das de post?

São uma lista separada, com dois membros a mais e nomes diferentes. A referência da API do Reddit dá a /r/{subreddit}/comments/{article} um parâmetro sort de "one of (confidence, top, new, controversial, old, random, qa, live)". confidence é o nome interno da ordenação que a interface rotula como Best, e qa é a ordenação de pergunta e resposta feita para AMAs.

Moderadores podem fixar uma dessas num tópico via /api/set_suggested_sort, que o Reddit documenta com o raciocínio de que "casual conversation may be better sorted by new by default, or AMAs may be sorted by Q&A". Uma ordenação sugerida muda o que todo visitante vê primeiro, o que vale conferir antes de ler o comentário mais votado de um tópico como consenso da comunidade.

Um analista lê gráficos de dados na mesa, representando o trabalho de acompanhar quais posts sobem.

Qual ordenação observar para monitorar menções?

New, porque é a única ordenação com uma ordem definida que não depende de votos chegarem antes. Um post aparece em new no instante em que é enviado, e um post pode nunca chegar a hot. Quem monitora uma palavra-chave em busca de conversas de compra está lendo new ou a API, não a primeira página.

Hot é a ordenação a observar pelo motivo oposto: um tópico que chega lá já passou do ponto em que um primeiro comentário é lido. Essa questão de timing é o assunto de quando publicar no Reddit, e o score em que ela opera é o mesmo descrito em como funciona o karma do Reddit. O Hacker News resolve o mesmo problema com uma fórmula publicada em vez de uma arquivada, e é por isso que o algoritmo de ranqueamento do Hacker News pode ser citado com mais confiança que o do Reddit.

Perguntas frequentes

O Reddit publica o algoritmo do hot?

Não. A central de ajuda do Reddit dá ao hot uma descrição de uma frase e nenhuma fórmula. A fórmula que as pessoas citam vem de reddit-archive/reddit, que o Reddit parou de atualizar em 2017.

Por que hot e top mostram posts diferentes no mesmo subreddit?

Top ordena pelo score líquido dentro da janela que você escolhe e ignora a idade dentro dela. Hot mistura score com horário de submissão, então um post mais velho com score maior pode ficar abaixo de um post mais novo com score menor.

O que a ordenação controversial ranqueia de fato?

Posts em que upvotes e downvotes estão perto de empatar e o total é alto. No código arquivado isso era o total de votos elevado à razão entre up e down, então um post desequilibrado marcava perto de 1 por mais votos que tivesse.

Dá para filtrar rising por tempo?

Não. A central de ajuda do Reddit diz que dá, mas a referência da API não dá parâmetro t a /r/{subreddit}/rising. As duas páginas discordam, e a API é a que você consegue testar.

Qual é a diferença entre hot e best?

Best é um endpoint separado, /best, que sustenta o feed inicial personalizado de quem está logado. O Reddit descreve esse feed como ranqueado por sinais de conteúdo, sua própria atividade, a idade da sua conta e sua configuração de localização, e não dá descrição de ranqueamento para /best em si.

Quantos posts uma listagem ordenada devolve?

25 por padrão e 100 no máximo, segundo a referência da API do Reddit. Paginar além disso usa os cursores de fullname after e before, não um deslocamento.

RedReplier
RedReplier

Começar

Reddit, X, Bluesky e HN

Alertas de intenção em tempo real

Respostas IA ilimitadas

Classificado por intenção de compra

Por que os próprios artigos de ajuda do Reddit descrevem hot de formas diferentes?

O artigo de Content Recommendations chama hot de "posts recentes que estão recebendo votos positivos", colocando a novidade no post. O artigo de ordenações de busca o descreve como "posts que recentemente receberam votos positivos, comentários etc.", colocando a novidade nos votos. São duas ordenações diferentes, e o Reddit nunca concilia as duas páginas.

Por que rising exclui posts com quase nenhum voto positivo?

O código arquivado de rising.py mantinha apenas os links acima de um voto positivo, pontuando o restante como votos positivos divididos por visualizações de página. Esse limite evita que um único voto inicial gere uma pontuação com um denominador de visualizações sem sentido. A implementação atual do rising é de código fechado, então essa regra reflete apenas o arquivo anterior a 2017.

A central de ajuda do Reddit diz que o feed Popular para visitantes sem login "exibe os posts recentes mais populares do Reddit, determinados pelos votos positivos líquidos". Esse é o único sinal de ranqueamento que o Reddit nomeia diretamente em toda a sua central de ajuda. É uma descrição separada da de hot, top, new ou rising, e vale só para visitantes sem conta.

Para que serve a ordenação de comentários qa?

A referência da API do Reddit lista qa entre os valores de ordenação para comentários e nunca a define. A única explicação em toda a referência está em /api/set_suggested_sort, que oferece "AMAs may be sorted by Q&A" como motivo para um moderador fixá-la. Defini-la ali muda o que cada visitante vê primeiro. Ela existe só como ordenação de comentários, nunca como listagem de posts.

Veja-nos mais no Google

Um clique marca a RedReplier como fonte preferida e nossos artigos passam a aparecer mais acima nas suas Principais notícias, no modo IA e nas visões gerais com IA.

Antes de você ir...

RedReplier

RedReplier

Alcance cada comprador que procura o que você vende

O RedReplier monitora Reddit, X, Bluesky e Hacker News em tempo real, classifica cada tópico por intenção de compra e redige a sua resposta, para que você chegue primeiro.

Reddit, X, Bluesky e HN

Alertas de intenção em tempo real

Respostas IA ilimitadas

Classificado por intenção de compra

Artigos relacionados