In breve
8 min di letturaIl rapporto upvote di Reddit è la quota di voti totali di un post che sono upvote, e l'API lo restituisce come decimale tra 0 e 1 nel campo upvote_ratio. Il codice sorgente archiviato di Reddit lo calcola come upvote divisi per voti totali. Due post con lo stesso punteggio possono stare a 0,90 e a 0,55, quindi leggi il rapporto insieme al punteggio. Reddit non ha mai detto se il rapporto di oggi usi conteggi di voti alterati dal fuzzing o reali, e il suo centro assistenza definisce l'"upvote ratio" in un secondo modo, diverso, per i commenti.
Cos'è l'upvote ratio di Reddit?
La percentuale che Reddit mostra accanto a un post è l'upvote ratio: la quota di tutti i voti di quel post che erano upvote, restituita dall'API come decimale tra 0 e 1 nel campo upvote_ratio. Un post con 45 upvote e 5 downvote ha un ratio di 0.9, cioè il 90 per cento.
La documentazione attuale dell'API di Reddit, su reddit.com/dev/api, descrive endpoint e parametri ma non i campi della risposta, quindi la definizione più chiara arriva dal codice sorgente archiviato di Reddit. In r2/models/builder.py del repository reddit-archive/reddit, il calcolo sta in due righe:
total_votes = max(item.num_votes, 1)
w.upvote_ratio = float(item._ups) / total_votesUpvote divisi per voti totali, con un minimo di un voto così un post appena pubblicato non causa una divisione per zero. PRAW, il wrapper Python più usato per l'API, descrive il campo allo stesso modo: "The percentage of upvotes from all votes on the submission." (la percentuale di upvote sul totale dei voti del post).
Come si calcola l'upvote ratio?
Dividi gli upvote per la somma di upvote e downvote. Il punteggio, cioè il numero accanto alle frecce, è una quantità diversa: upvote meno downvote. I due numeri rispondono a domande diverse, e il ratio è quello che ti dice se le persone erano d'accordo.
| Post | Upvote | Downvote | Punteggio (score) | Upvote ratio (upvote_ratio) |
|---|---|---|---|---|
| A | 45 | 5 | 40 | 0,90 |
| B | 220 | 180 | 40 | 0,55 |
| C | 4 | 0 | 4 | 1,00 |
I post A e B hanno lo stesso punteggio, 40. Il post A è un post tranquillo che è piaciuto alla maggior parte dei lettori. Il post B ha raccolto otto volte i voti e ha spaccato la sala quasi a metà, che è lo schema che cerca l'ordinamento per controversia di Reddit. Il post C mostra l'altro errore di chi legge solo il ratio: un perfetto 1,00 su quattro voti non dice quasi nulla.
Dove compare upvote_ratio nell'API di Reddit?
Si trova negli oggetti post del JSON che Reddit restituisce, accanto a score, ups e downs. Due di questi campi vicini non significano più ciò che dice il loro nome. Il template JSON archiviato in r2/lib/jsontemplates.py imposta fisso "downs": 0 e "ups": item.score, quindi su qualsiasi post ups è uguale al punteggio netto e downs è sempre zero. Uno script che calcola ups / (ups + downs) ottiene 1.0 su ogni post.
Lo stesso template archiviato aggiunge upvote_ratio solo quando c.permalink_page è vero, cioè sulla pagina dei commenti del post, non nell'elenco del subreddit. Quel repository ha ricevuto l'ultimo push il 17 ottobre 2017 ed è contrassegnato come archiviato, quindi il sito attuale può comportarsi in modo diverso. Il riferimento ai campi archiviato nella wiki del repository elenca ups, downs e score e non nomina affatto upvote_ratio.
Il template archiviato dei commenti non ha upvote_ratio. I commenti hanno solo un punteggio.
Si può ricavare il numero reale di voti dal ratio e dal punteggio?
Sì, con un po' di algebra, a patto che il ratio non sia esattamente 0,5. Upvote meno downvote è uguale al punteggio, e upvote diviso voti totali è uguale al ratio. Risolvendo la coppia di equazioni si ottiene:
upvotes = ratio x score / (2 x ratio - 1)
downvotes = upvotes - scorePer il post A, 0,9 x 40 / 0,8 = 45 upvote e 5 downvote, e i conti tornano. La formula però crolla in due punti. Con un ratio di 0,5 il denominatore è zero, e un punteggio di 0 non ti dice quanti voti si siano annullati a vicenda. Vicino a 0,5 diventa ipersensibile. Il post B con 0,55 e punteggio 40 dà 220 upvote. Sposta il ratio a 0,56 e la stessa formula restituisce circa 187. Una differenza di arrotondamento di un punto percentuale sposta la stima di 33 voti, quindi considera qualsiasi conteggio ricostruito su un post diviso come un intervallo approssimativo.

Cos'è il vote fuzzing e tocca l'upvote ratio?
Il vote fuzzing consiste nel fatto che Reddit aggiunge voti finti ai conteggi di upvote e downvote, così i bot non possono capire se i loro voti sono stati contati. Le vecchie FAQ di Reddit, ora segnate come "no longer updated" (non più aggiornate), lo spiegano con un esempio: cinque upvote e tre downvote "may say 23 upvotes and 21 downvotes, or 12 upvotes, and 10 downvotes. The points score is correct, but the vote totals are 'fuzzed'." (possono comparire come 23 upvote e 21 downvote, oppure 12 upvote e 10 downvote. Il punteggio è corretto, ma i totali dei voti sono "alterati").
In passato il ratio veniva calcolato su quei totali alterati. Il 18 giugno 2014 l'admin di Reddit Deimorz annunciò su r/announcements che i conteggi separati di upvote e downvote sarebbero spariti dalla vista pubblica, e ne spiegò il motivo: ogni post in cima alla homepage "seems to drift towards showing '55% like it' due to the vote-fuzzing." (sembra tendere a mostrare "55% like it" a causa del vote fuzzing). Dopo la modifica, il post in cima "has gone from showing '57% like it' to '96% like it'." (è passato da "57% like it" a "96% like it"). Il 6 dicembre 2016 l'admin KeyserSosa annunciò un ricalcolo dei punteggi storici che eliminava vecchie regole antifrode ormai superate, con il TL;DR che "Scores are increasing by a lot." (i punteggi aumentano di parecchio).
Ed ecco il vuoto. Nessuno dei due annunci dice su cosa venga calcolato oggi il ratio, e il centro assistenza attuale di Reddit non nomina mai il fuzzing. L'articolo sui voti nascosti dice solo che i voti non vengono mostrati per "the first few hours after a post is created" (le prime ore dopo la creazione di un post) e che alcune community li nascondono per un breve periodo. Il ratio si è avvicinato alla realtà nel 2014. Reddit non ha mai detto che sia esatto.
Che rapporto c'è tra l'upvote ratio e l'ordinamento per controversia di Reddit?
Il codice archiviato usa il ratio direttamente per decidere cosa conta come controverso. _is_controversial in builder.py segnala un elemento quando il suo numero di voti supera cflag_min_votes e il suo ratio cade tra cflag_lower_bound e cflag_upper_bound. Il file example.ini distribuito imposta questi valori a 7, 0.4 e 0.6.
RedReplier
Inizia
Reddit, X, Bluesky e HN
Avvisi sull'intento in tempo reale
Risposte AI illimitate
Ordinati per intento d'acquisto
L'ordinamento per controversia vero e proprio, in _sorts.pyx, premia insieme volume ed equilibrio: magnitude ** balance, dove magnitude è il totale dei voti e balance è il lato più piccolo diviso per quello più grande. Il post B di sopra, 220 contro 180, ottiene un punteggio molto più alto di un post 3 a 2 con lo stesso ratio. L'insieme completo degli ordinamenti, e quali Reddit documenta, è trattato in Reddit hot vs new vs top.
Reddit definisce "upvote ratio" allo stesso modo ovunque?
No. Reddit usa l'espressione per almeno due formule diverse.
| Dove | Si applica a | Definizione |
|---|---|---|
Campo API upvote_ratio (sorgente archiviato, PRAW) | Post | Upvote divisi per voti totali, da 0 a 1 |
| Centro assistenza, Post & Comment Insights | Commenti | "The ratio of upvotes to downvotes that the comment has received" (il rapporto tra upvote e downvote ricevuti dal commento) |
| Centro assistenza, Reddit Pro Performance | Post | Upvote: "Ratio of upvotes to downvotes" (rapporto tra upvote e downvote) |
Upvote rispetto ai downvote e upvote rispetto ai voti totali sono numeri diversi. Un post con 90 upvote e 10 downvote vale 9 a 1 nel primo caso e 0,9 nel secondo. Quando confronti numeri tra gli strumenti di Reddit, controlla quale dei due stai guardando. La stessa trappola compare nei calcoli del tasso di engagement su Reddit, dove il denominatore cambia il risultato.

Qual è un buon rapporto di voti positivi su Reddit?
Reddit non pubblica alcun valore di riferimento, e un singolo numero obiettivo ti porterebbe fuori strada. Il rapporto dipende dal subreddit, dall'argomento e da quante persone hanno votato. Leggilo in tre parti. Un rapporto alto su un punteggio alto indica un accordo diffuso. Un rapporto vicino a 0,5 su un punteggio alto indica uno scontro, e i commenti ti diranno su cosa. Un rapporto vicino a 1,0 su una manciata di voti significa che nessuno ha ancora deciso.
Per un brand, un rapporto basso su un post che ti cita è il segnale per leggere la discussione prima di rispondere. Non è un motivo per mobilitare voti. Chiedere alle persone di votare viola le regole di Reddit, come spiegato in Reddit vote manipulation, e i voti negativi sui tuoi post e commenti ti costano anche karma su Reddit.
Domande frequenti
Cosa significa un rapporto di voti positivi del 50% su Reddit?
Significa che il post ha ricevuto tanti voti negativi quanti positivi, quindi il suo punteggio è a zero o vicino a zero. Un rapporto del 50% su due voti e su duemila voti appare identico, ed è per questo che ti serve il numero di voti o di commenti per interpretarlo.
Perché l'API di Reddit restituisce downs a 0?
Reddit ha smesso di mostrare separatamente i conteggi dei voti positivi e negativi nel giugno 2014. Il template JSON archiviato scrive direttamente "downs": 0 e imposta ups uguale al punteggio netto, quindi nessuno dei due campi è un conteggio reale. Usa invece score e upvote_ratio.
Si può vedere il rapporto di voti positivi su un commento di Reddit?
Non nel JSON dell'API. Il template archiviato dei commenti restituisce un punteggio e nessun rapporto. L'autore del commento può vedere un "Upvote ratio" nelle statistiche del commento, che il centro assistenza di Reddit definisce come rapporto tra voti positivi e negativi, una formula diversa da quella del campo dei post.
Il rapporto di voti positivi di Reddit è preciso?
È più vicino alla realtà dei conteggi alterati che ha sostituito, secondo l'annuncio di Reddit del 2014. Reddit non ha dichiarato se il rapporto di oggi usi conteggi di voti alterati o reali, quindi consideralo una buona stima, non un dato certificato.
Perché il rapporto di voti positivi del mio post è nascosto?
Reddit nasconde i conteggi dei voti per le prime ore dopo la pubblicazione di un post, e alcune community nascondono i voti su post e commenti anche per un breve periodo. Il centro assistenza dice che così si previene la manipolazione dei voti e si evita che le persone siano influenzate da come hanno votato gli altri.
Un rapporto di voti positivi basso danneggia il posizionamento di un post?
L'ordinamento hot nel codice archiviato di Reddit usa il punteggio netto e l'età del post, non il rapporto. A parità di voti, un rapporto più basso significa un punteggio più basso, e questo abbassa la posizione hot. Reddit non ha pubblicato il codice di ranking che usa oggi.
Come trovo il rapporto di voti positivi di un post su Reddit?
Reddit lo mostra come percentuale accanto al post. Nell'API è il campo upvote_ratio, un decimale compreso tra 0 e 1. Il template archiviato di Reddit lo aggiunge solo nella pagina dei commenti del post, non negli elenchi del subreddit.
Come si calcolano voti positivi e negativi a partire da rapporto e punteggio?
Risolvi la coppia di equazioni: voti positivi = rapporto x punteggio / (2 x rapporto - 1), e voti negativi = voti positivi - punteggio. Con un rapporto di 0,9 e un punteggio di 40, si ottengono 45 voti positivi e 5 voti negativi. La formula non funziona con un rapporto esattamente uguale a 0,5, e vicino a quel valore una differenza di arrotondamento di un punto sposta la stima di decine di voti.
Qual è la differenza tra punteggio e rapporto di voti positivi su Reddit?
Il punteggio è la differenza tra voti positivi e voti negativi. Il rapporto di voti positivi è il numero di voti positivi diviso per il totale dei voti. Due post possono avere entrambi un punteggio di 40 mentre uno è a 0,90 e l'altro a 0,55.
RedReplier
Inizia
Reddit, X, Bluesky e HN
Avvisi sull'intento in tempo reale
Risposte AI illimitate
Ordinati per intento d'acquisto
Quale rapporto di voti positivi rende controverso un post su Reddit?
Nel codice archiviato di Reddit, un elemento viene segnalato come controverso quando ha almeno 7 voti e un rapporto compreso tra 0,4 e 0,6. Sono i valori presenti nel file example.ini distribuito. Reddit non ha pubblicato le impostazioni che usa oggi.
Vedici più spesso su Google
Con un clic imposti RedReplier come fonte preferita, così i nostri articoli compaiono più in alto nelle Notizie principali, in AI Mode e nelle AI Overview.
Prima di andare...
RedReplier
Intercetta ogni acquirente che chiede quello che vendi
RedReplier monitora Reddit, X, Bluesky e Hacker News in tempo reale, ordina ogni thread per intento d'acquisto e scrive la bozza della tua risposta, così arrivi per primo.
Reddit, X, Bluesky e HN
Avvisi sull'intento in tempo reale
Risposte AI illimitate
Ordinati per intento d'acquisto
Articoli correlati


Ogni engagement rate di Reddit che vedi l'ha costruito qualcun altro
Un engagement rate di Reddit non esiste in nessun prodotto Reddit. Cosa restituisce l'API, cosa mostrano gli insights dei post e i tre tassi costruiti con quei dati.


Come Reddit Rising fa emergere i thread prima che arrivino in Hot
L'ordinamento reddit rising classifica i post recenti in base alle visualizzazioni più fresche. Dove compare, i suoi endpoint .json e RSS, e come si distingue da hot e new.


Come trovare i post nascosti di Reddit, mostrarli di nuovo e usare Nascondi per smistare le risposte
Dove finiscono i post nascosti di Reddit, cosa documenta Reddit per vederli da desktop e dall'app, come mostrarne di nuovo uno e come nascondere i post velocizza lo smistamento delle risposte.

