O Dividend: Yield, History & Ex-Dates
O dividend guide: the current yield, per-share payout, full ex-dividend date history, and payout frequency, refreshed weekly from the exchange record.
Realty Income (O) pays a monthly dividend. As of its most recent declaration, O paid $0.271 per share, an annual rate of $3.25, for a dividend yield of about 5.13% at a recent price of $63.34. Its most recent ex-dividend date was Jul 31, 2026, and the next one is Jul 31, 2026. This page tracks O's dividend, refreshed weekly from the exchange record.
The exact SQL behind every number
WITH d AS (
SELECT argMax(cash_amount, ex_dividend_date) AS latest,
argMax(frequency, ex_dividend_date) AS freq,
max(ex_dividend_date) AS last_ex,
maxIf(ex_dividend_date, ex_dividend_date > today()) AS nxt
FROM global_markets.stocks_dividends
WHERE ticker = 'O' AND frequency IN (1, 2, 4, 12) AND ex_dividend_date >= today() - 900
),
p AS (
SELECT argMax(toFloat64(close), window_start) AS price
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'O' AND window_start >= now() - INTERVAL 8 DAY
)
SELECT round(d.latest, 3) AS latest_dividend,
multiIf(d.freq = 12, 'monthly', d.freq = 4, 'quarterly', d.freq = 2, 'semi-annual', 'annual') AS frequency,
round(d.latest * d.freq, 2) AS annual_dividend,
round(p.price, 2) AS recent_price,
round(d.latest * d.freq / p.price * 100, 2) AS dividend_yield_pct,
formatDateTime(d.last_ex, '%b %e, %Y') AS last_ex_date,
if(d.nxt > today(), formatDateTime(d.nxt, '%b %e, %Y'), 'not yet declared') AS next_ex_date
FROM d CROSS JOIN pO dividend yield and payout
To collect a dividend you must own the shares before the ex-dividend date. O's dividend yield above is the annual rate divided by the recent price; it moves inversely with the share price, so a yield figure only means something next to the date it was measured. The per-share amounts here are the cash dividends declared, not any special or one-time distributions.
O dividend history
The most recent regular dividends O has paid, newest first:
The exact SQL behind every number
SELECT toDate(ex_dividend_date) AS date,
round(cash_amount, 4) AS dividend_per_share
FROM global_markets.stocks_dividends
WHERE ticker = 'O' AND frequency IN (1, 2, 4, 12) AND ex_dividend_date >= today() - 1100
ORDER BY ex_dividend_date DESC
LIMIT 10The rhythm of the payments shows the schedule: a monthly payer sends a check on that cadence, and the per-share amount is what steps up (or holds, or is cut) over time.
O dividend growth by year
Totaling the regular dividends within each calendar year turns the individual payments into a growth picture.
The exact SQL behind every number
SELECT toString(toYear(ex_dividend_date)) AS year,
round(sum(cash_amount), 2) AS dividends_paid_per_share
FROM global_markets.stocks_dividends
WHERE ticker = 'O' AND frequency IN (1, 2, 4, 12)
AND ex_dividend_date >= toDate('2019-01-01') AND ex_dividend_date < toDate(concat(toString(toYear(today())), '-01-01'))
GROUP BY year
ORDER BY yearIn 2019, O paid $2.72 per share across the year; by 2025 the annual total had reached $3.49. A rising line is a company lifting its payout year after year; a flat line is a held dividend; a fall is a cut. The year-by-year record is the single most useful thing to check before treating a stock as an income holding, and it is the part of a dividend a screener's single yield number hides.
Is O a good dividend stock?
Two numbers frame that question, and both sit on this page: the yield (5.13%) and the direction of the annual payout above. A yield below the broad-market average paired with a steadily rising payout is the profile of a dividend-growth name, where the appeal is a small check today that compounds. A high yield next to a flat or falling payout is an income-now profile, and it warrants a closer look at whether earnings cover the payment. O's record above shows which of the two it looks like. What a dividend history cannot show on its own is safety: that rests on earnings and free cash flow, not on the run of past payments, so a stretched payout ratio can precede a cut that the history has not yet recorded.
When is O's ex-dividend date?
The ex-dividend date is the cutoff: buy O before it and the upcoming dividend is yours, buy on it and the dividend goes to the seller. On the ex-date the stock opens lower by roughly the dividend amount, since the cash is leaving the company. O's most recent ex-dividend date was Jul 31, 2026. The record date follows one business day later under T+1 settlement, and the pay date comes a few weeks after that. Upcoming ex-dates across the market are on the ex-dividend calendar.
FAQ
Does Realty Income pay a dividend?
Yes. O pays a monthly dividend, most recently $0.271 per share, which annualizes to about $3.25 a share.
What is O's dividend yield?
O's dividend yield is about 5.13%, calculated as the $3.25 annual dividend divided by a recent price of $63.34. Yield rises as the price falls and vice versa, so it is a snapshot, not a fixed number.
When is O's next ex-dividend date?
O's most recent ex-dividend date was Jul 31, 2026, and the next is Jul 31, 2026. As a monthly payer, O sets a new ex-date on that cadence; a date shows as declared here once the company announces it.
How much is O's dividend?
The most recent regular dividend was $0.271 per share. At a monthly cadence that annualizes to about $3.25 per share.
Every figure above is a stored, inspectable query, refreshed each week. Open the SQL under any panel to audit it, or pull any ticker's dividend record on the Strasmore terminal.