Come calcolare il dividend yield: tre metodi
Formula del dividend yield con esempio Coca-Cola: differenze tra trailing, forward e yield on cost, e quando il rendimento può essere fuorviante.
Il dividend yield è dato dai dividendi annuali per azione di un titolo divisi per il prezzo dell’azione, moltiplicato per 100. Un’azione che paga 2,00 $ all’anno e quota 50 $ offre un rendimento del 4%. Il calcolo è semplice. La difficoltà sta nel numeratore: il dato può corrispondere ai pagamenti degli ultimi dodici mesi oppure all’ultimo pagamento annualizzato. Inoltre, il numero mostrato dal broker per una posizione già detenuta può derivare da un terzo calcolo ancora diverso.
La formula del dividend yield
Dividend yield = (dividendi annuali per azione ÷ prezzo per azione) × 100
Il denominatore è la parte più semplice: il prezzo a cui il titolo è stato scambiato l’ultima volta, un valore che cambia ogni secondo durante gli orari di apertura del mercato. Il numeratore è la liquidità incassata da un’azione nell’arco di un anno. Le società statunitensi la distribuiscono quasi sempre in quattro rate, anziché in un’unica soluzione. Coca-Cola (KO) è l’esempio standard, con pagamenti trimestrali e una lunga serie ininterrotta.
Di seguito sono riportati i pagamenti incassati da una singola azione KO nei dodici mesi fino alla fine di giugno 2026, con il totale progressivo nell’ultima colonna.
L'esatto SQL dietro ogni numero
SELECT ex_dividend_date AS date,
formatDateTime(ex_dividend_date, '%b %e, %Y') AS ex_date_label,
round(cash_amount, 4) AS dividend_per_share_usd,
round(sum(cash_amount) OVER (ORDER BY ex_dividend_date), 4) AS trailing_total_usd
FROM global_markets.stocks_dividends
WHERE ticker = 'KO'
AND distribution_type = 'recurring'
AND cash_amount > 0
AND ex_dividend_date >= toDate('2025-07-01')
AND ex_dividend_date <= toDate('2026-06-30')
ORDER BY ex_dividend_dateLeggere la colonna del totale progressivo dal basso verso l’alto. Un’azione ha incassato $2.08 nei 4 pagamenti, da $0.51 il Sep 15, 2025 a $0.53 il Jun 15, 2026. Questo totale è il numeratore. Inserire sotto il prezzo di chiusura di giugno e la formula si completa: $2.08 ÷ $81.25 × 100 = 2.56%.
Nessuna società è obbligata a pagare dividendi. Molti grandi nomi statunitensi non pagano nulla e il loro rendimento è pari a zero, non non definito. Che cosa misura il dividend yield illustra la distribuzione completa.
Il dividend yield è annuale?
Sì. Un yield è sempre un tasso annuale, indipendentemente dalla frequenza dei pagamenti sottostante. La maggior parte delle società statunitensi paga trimestralmente. Alcuni fondi e veicoli di investimento a reddito pagano mensilmente, mentre molte società estere pagano due volte l’anno, secondo le consuetudini del mercato domestico. Prima di effettuare la divisione, ogni calendario dei pagamenti viene convertito in un unico dato annuale.
In pratica: un yield del 4% su un titolo da 50 dollari corrisponde a 2,00 dollari per azione all’anno, distribuiti in quattro pagamenti da circa 50 centesimi. Le pagine con le quotazioni raramente indicano che il dato è annuale. La differenza tra un tasso annuale e un pagamento trimestrale è la causa più comune di errore nell’interpretazione di questo tema. Anche la tempistica è importante: incassano un determinato pagamento solo gli azionisti registrati prima della data ex-dividend.
Rendimento trailing rispetto al rendimento forward
Il rendimento degli ultimi dodici mesi somma i dividendi effettivamente pagati nell’ultimo anno, esattamente come nel pannello KO. È un dato storico e verificabile.
Il rendimento forward, spesso indicato come indicated yield, prende il pagamento dichiarato più di recente e lo moltiplica per la frequenza dei pagamenti: quattro volte per un titolo che paga con cadenza trimestrale. Stima i prossimi dodici mesi, assumendo che la società continui a pagare al tasso attuale. Una società che ha aumentato il dividendo durante l’anno mostra un rendimento forward più elevato, perché l’aumento viene considerato per quattro trimestri anziché per uno o due.
Otto titoli con dividendi consolidati, calcolati con entrambi i metodi, ai prezzi più recenti disponibili:
L'esatto SQL dietro ogni numero
WITH px AS (
SELECT ticker, argMax(close, window_start) AS price
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('KO', 'PEP', 'JNJ', 'PG', 'VZ', 'XOM', 'CVX', 'MCD')
AND window_start >= now() - INTERVAL 7 DAY
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY ticker
),
dv AS (
SELECT ticker,
sum(cash_amount) AS ttm_dividends,
argMax(cash_amount, ex_dividend_date) AS latest_payment,
max(frequency) AS pay_frequency
FROM global_markets.stocks_dividends
WHERE ticker IN ('KO', 'PEP', 'JNJ', 'PG', 'VZ', 'XOM', 'CVX', 'MCD')
AND distribution_type = 'recurring'
AND cash_amount > 0
AND ex_dividend_date > today() - INTERVAL 1 YEAR
AND ex_dividend_date <= today()
GROUP BY ticker
)
SELECT px.ticker AS ticker,
round(px.price, 2) AS price,
round(dv.ttm_dividends, 4) AS ttm_dividends_usd,
round(dv.latest_payment * dv.pay_frequency, 4) AS forward_dividends_usd,
round(dv.ttm_dividends / px.price * 100, 2) AS trailing_yield_pct,
round(dv.latest_payment * dv.pay_frequency / px.price * 100, 2) AS forward_yield_pct,
round(abs(dv.latest_payment * dv.pay_frequency - dv.ttm_dividends) / px.price * 100, 2) AS gap_abs_pct
FROM px
INNER JOIN dv ON px.ticker = dv.ticker
ORDER BY gap_abs_pct DESCPEP mostra lo scarto più ampio nel pannello: 4.12% secondo il calcolo trailing contro 4.24% secondo quello forward, una differenza di 0.12 punti percentuali sullo stesso prezzo per azione di $139.6. All’estremo opposto del pannello, XOM presenta una differenza tra i due metodi di appena 0.03 punti percentuali.
Quale dei due compare sul tuo schermo? La maggior parte delle pagine gratuite di quotazioni pubblica il dato degli ultimi dodici mesi e lo definisce semplicemente “dividend yield”. Le piattaforme di brokeraggio e le schede informative dei fondi riportano più spesso il dato forward o indicated. Quando due siti mostrano valori diversi per lo stesso titolo nello stesso giorno, di solito la differenza dipende dalla convenzione adottata. Le schede dei fondi aggiungono un’ulteriore convenzione: il rendimento SEC standardizzato a 30 giorni, calcolato sul reddito netto da investimenti recente del fondo anziché sulle distribuzioni dichiarate.
Perché il rendimento cambia quando cambia il prezzo
Il rendimento ha un denominatore variabile, quindi il rapporto cambia anche nei giorni in cui il dividendo non cambia. Due anni di dati mensili di KO rendono visibile il meccanismo.
L'esatto SQL dietro ogni numero
WITH px AS (
SELECT toStartOfMonth(toDate(toTimeZone(window_start, 'America/New_York'))) AS month_start,
argMax(close, window_start) AS price,
max(toDate(toTimeZone(window_start, 'America/New_York'))) AS last_day
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'KO'
AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2024-06-01')
AND toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30')
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY month_start
),
dv AS (
SELECT ex_dividend_date, cash_amount
FROM global_markets.stocks_dividends
WHERE ticker = 'KO'
AND distribution_type = 'recurring'
AND cash_amount > 0
AND ex_dividend_date >= toDate('2023-06-01')
)
SELECT formatDateTime(px.month_start, '%Y-%m') AS month,
formatDateTimeInJodaSyntax(px.month_start, 'MMMM yyyy') AS month_label,
round(any(px.price), 2) AS price,
round(sum(dv.cash_amount), 4) AS ttm_dividends_usd,
round(sum(dv.cash_amount) / any(px.price) * 100, 2) AS dividend_yield_pct
FROM px, dv
WHERE dv.ex_dividend_date <= px.last_day
AND dv.ex_dividend_date > px.last_day - INTERVAL 1 YEAR
GROUP BY px.month_start
ORDER BY px.month_startLeggilo su due righe. La colonna del dividendo trailing ha un andamento a gradini: cambia solo quando un pagamento entra o esce dalla finestra di dodici mesi. La colonna del prezzo cambia ogni mese. Poiché il rendimento è il primo valore diviso per il secondo, ogni variazione della linea del rendimento tra quei gradini dipende dal prezzo. In June 2024 il pannello mostra $63.65 con un rendimento del 2.97%. In June 2026 mostra $81.25 e 2.56%, su pagamenti trailing pari a $2.08.
È un punto su cui vale la pena soffermarsi. Uno screener ordinato per rendimento classifica il risultato di quella divisione, ma non mostra quale dei due input sia cambiato. Il rendimento può aumentare mentre la distribuzione resta invariata e il prezzo scende. Cosa si considera un buon rendimento da dividendo colloca ogni singola lettura nel contesto della distribuzione dell’intero mercato.
Rendimento sul costo, il numero nella schermata della posizione
Il rendimento sul costo divide il dividendo annuo odierno per il prezzo pagato da te, non per il prezzo odierno. I broker lo mostrano spesso accanto a una posizione detenuta da tempo, dove può essere scambiato per il rendimento corrente del titolo. Ecco un dividendo di KO calcolato su sette prezzi di ingresso, uno per ciascuna fine di giugno a partire da 2019.
L'esatto SQL dietro ogni numero
WITH cur AS (
SELECT argMax(cash_amount, ex_dividend_date) * 4 AS annual_now
FROM global_markets.stocks_dividends
WHERE ticker = 'KO'
AND distribution_type = 'recurring'
AND cash_amount > 0
AND ex_dividend_date <= toDate('2026-06-30')
),
px_now AS (
SELECT argMax(close, window_start) AS price_now
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'KO'
AND window_start >= now() - INTERVAL 7 DAY
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
),
buys AS (
SELECT toYear(toTimeZone(window_start, 'America/New_York')) AS year,
argMax(close, window_start) AS cost_basis
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'KO'
AND toMonth(toTimeZone(window_start, 'America/New_York')) = 6
AND toDayOfMonth(toTimeZone(window_start, 'America/New_York')) >= 20
AND toYear(toTimeZone(window_start, 'America/New_York')) BETWEEN 2019 AND 2025
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY year
)
SELECT buys.year AS year,
round(buys.cost_basis, 2) AS cost_basis_usd,
round(cur.annual_now, 4) AS annual_dividend_now_usd,
round(cur.annual_now / buys.cost_basis * 100, 2) AS yield_on_cost_pct,
round(cur.annual_now / px_now.price_now * 100, 2) AS current_yield_pct,
round(cur.annual_now / buys.cost_basis * 100 - cur.annual_now / px_now.price_now * 100, 2) AS yoc_premium_pts
FROM buys, cur, px_now
ORDER BY yearUn investitore che ha acquistato a $50.9 nel giugno 2019 incassa ora $2.12 per azione all'anno, con un rendimento sul costo pari a 4.17%. Chi acquista oggi incassa la stessa somma su un denominatore diverso, 2.42%, lasciando 1.74 punti di differenza tra le due letture della stessa azione.
Entrambi i numeri sono corretti e rispondono a domande diverse. Il rendimento sul costo descrive un ingresso già avvenuto e aumenta a ogni successivo incremento del dividendo. Non è acquistabile oggi e non dice nulla sull'azione al prezzo corrente, che è l'unica decisione ancora aperta. Per il calcolo del reddito basato invece sul rendimento corrente, vedi $1.000 al mese in dividendi.
Il controllo di coerenza: il payout ratio
Il rendimento indica quanto paga un’azione. Il payout ratio, cioè i dividendi annui per azione divisi per l’utile per azione, indica se la società può permetterselo. Sotto il 100%, l’utile dichiarato copre il pagamento. Sopra il 100%, la differenza proviene da una fonte diversa dall’utile dell’esercizio.
L'esatto SQL dietro ogni numero
SELECT ticker,
round(argMax(dividend_yield, date) * 100, 2) AS dividend_yield_pct,
round(argMax(dividend_yield * price, date), 2) AS annual_dividend_usd,
round(argMax(earnings_per_share, date), 2) AS earnings_per_share_usd,
round(argMax(dividend_yield * price / earnings_per_share, date) * 100, 1) AS payout_ratio_pct
FROM global_markets.stocks_ratios
WHERE ticker IN ('KO', 'JNJ', 'PG', 'VZ', 'XOM', 'CVX', 'MO', 'IBM')
AND date = (SELECT max(date) FROM global_markets.stocks_ratios)
AND dividend_yield > 0
AND earnings_per_share > 0
GROUP BY ticker
ORDER BY payout_ratio_pct DESCIl pannello ordina i titoli per payout ratio. CVX è in cima, a 120.7%, e paga $6.67 per azione a fronte di $5.53 di utile per azione, con un rendimento di 3.47%. IBM è in fondo allo stesso pannello, a 58.8%. Due società possono mostrare un rendimento simile, ma avere una copertura molto diversa. Il ratio deve comparire accanto al rendimento in qualsiasi schermata.
I real estate trust e le partnership attive nei pipeline riportano regolarmente payout ratio superiori al 100% rispetto agli utili dichiarati, perché gli elevati ammortamenti riducono l’utile contabile al di sotto della liquidità generata dall’attività. Gli analisti valutano queste strutture sulla base dei funds from operations. In una normale società operativa, un ratio molto superiore al 100% è il segnale che questa metrica serve proprio a evidenziare. La guida al payout ratio illustra il calcolo.
FAQ sul dividend yield
Come si calcola a mano il dividend yield?
Somma i dividendi per azione pagati negli ultimi dodici mesi, dividi il risultato per il prezzo corrente dell'azione e moltiplica per 100. Nei pannelli sopra, i pagamenti di KO per 4 ammontavano complessivamente a $2.08 per azione. Rispetto a un prezzo di $81.25, il dividend yield è 2.56%.
Il dividend yield è annuale o trimestrale?
È sempre annuale. Il yield di un titolo che paga dividendi trimestrali annualizza già i quattro pagamenti. Quindi, un yield del 4% su un'azione da $50 equivale a circa $2,00 all'anno, non a $2,00 per trimestre.
Perché due siti mostrano dividend yield diversi per lo stesso titolo?
Di solito, uno usa il dato trailing, cioè i pagamenti effettivamente versati negli ultimi dodici mesi, mentre l'altro usa il dato forward, ottenuto moltiplicando l'ultimo pagamento dichiarato per la frequenza dei pagamenti. Nel pannello sopra, i due metodi differiscono di 0.12 punti percentuali su PEP nello stesso giorno.
Un dividend yield elevato indica un buon titolo?
Indica un payout elevato rispetto al prezzo corrente, e nulla di più. Il yield aumenta ogni volta che il prezzo scende mentre il dividendo resta invariato. Perciò, un valore elevato apre una domanda sulla copertura del dividendo, ma non fornisce una risposta.
Che cos'è lo yield on cost?
È il dividendo annuale odierno diviso per il prezzo pagato originariamente. Aumenta a ogni incremento del dividendo e resta ancorato al prezzo di ingresso. Descrive quindi la posizione dell'investitore, non il titolo. Nel pannello sopra, un ingresso a giugno 2019 al prezzo di $50.9 produce uno yield on cost del 4.17%, contro 2.42% per chi acquista oggi.
Ogni dato numerico riportato sopra proviene da una query archiviata e versionata, eseguita sui dati dei dividendi depositati e sui prezzi effettivi. Apri un pannello per leggere l'SQL sottostante oppure esegui lo stesso calcolo su un ticker a tua scelta nel terminale Strasmore.