{"slug":"schd-vs-voo-dividend-yield","qid":"fund_yields","label":"Trailing twelve-month distribution yield: dividend funds beside the S&P 500 tracker","post_title":"SCHD vs VOO: Why the Dividend Yields Differ","post_url":"/blog/schd-vs-voo-dividend-yield#q-fund_yields","columns":["ticker","price","ttm_distributions_usd","payments","trailing_yield_pct"],"rows":[{"ticker":"SPYD","price":50.39,"ttm_distributions_usd":2.031,"payments":4,"trailing_yield_pct":4.03},{"ticker":"NOBL","price":58.55,"ttm_distributions_usd":2.026,"payments":4,"trailing_yield_pct":3.46},{"ticker":"SCHD","price":35.2,"ttm_distributions_usd":1.048,"payments":4,"trailing_yield_pct":2.98},{"ticker":"VYM","price":165.11,"ttm_distributions_usd":3.63,"payments":4,"trailing_yield_pct":2.2},{"ticker":"DGRO","price":80.25,"ttm_distributions_usd":1.478,"payments":4,"trailing_yield_pct":1.84},{"ticker":"VIG","price":243.75,"ttm_distributions_usd":3.581,"payments":4,"trailing_yield_pct":1.47},{"ticker":"VOO","price":704.8,"ttm_distributions_usd":7.346,"payments":4,"trailing_yield_pct":1.04}],"shape":"table","sql":"WITH px AS (\n    SELECT ticker,\n           argMax(close, window_start) AS price\n    FROM global_markets.delayed_stocks_minute_aggs\n    WHERE ticker IN ('SCHD', 'VOO', 'VYM', 'SPYD', 'DGRO', 'VIG', 'NOBL')\n      AND window_start >= now() - INTERVAL 7 DAY\n      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60\n           + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959\n    GROUP BY ticker\n),\ndv AS (\n    SELECT ticker,\n           sum(cash_amount) AS ttm_distributions,\n           count() AS payments\n    FROM global_markets.stocks_dividends\n    WHERE ticker IN ('SCHD', 'VOO', 'VYM', 'SPYD', 'DGRO', 'VIG', 'NOBL')\n      AND ex_dividend_date > today() - INTERVAL 1 YEAR\n      AND ex_dividend_date <= today()\n      AND cash_amount > 0\n    GROUP BY ticker\n)\nSELECT px.ticker AS ticker,\n       round(px.price, 2) AS price,\n       round(dv.ttm_distributions, 3) AS ttm_distributions_usd,\n       dv.payments AS payments,\n       round(dv.ttm_distributions / px.price * 100, 2) AS trailing_yield_pct\nFROM px\nINNER JOIN dv ON px.ticker = dv.ticker\nORDER BY trailing_yield_pct DESC","computed_at":"2026-08-22T04:18:51.903877+00:00","elapsed":0.773517591}