Strasmore Research
Learn Matt ConnorBy Matt Connor · data as of September 24, 2026 · refreshed weekly

Weekly Dividend ETFs: How the Payouts Work

Weekly dividend ETFs pay every week from call option premium rather than portfolio dividends. Where the cash comes from, and what it does to the price.

Weekly dividend ETFs pay a distribution roughly every seven days rather than once a quarter. Nearly all of them are option income funds: the cash comes from selling call options against a stock or an index position, and only a small slice of it is portfolio dividend income. That difference sets how much the payment varies from week to week and what it does to the fund's share price.

How often do weekly dividend ETFs pay?

The ex-dividend date is the first session on which a buyer of the fund no longer receives the upcoming payment. A quarterly payer has four of them a year. A weekly payer has roughly fifty, usually on the same weekday. The panel below scans every US-listed symbol that went ex at least forty times in the trailing year and ranks them by how many.

QuerySymbols with the most ex-dividend dates in the trailing year
tickerex_dates_12mavg_days_between
QLDY1033.5
SATA783.9
ULTY546.8
CHPY537
GPTY537
IWMY537
LFGY537
QDTE537
QDTY537
QQQY537
RDTE537
RDTY537
The exact SQL behind every number
SELECT
    ticker,
    count()                                                                                   AS ex_dates_12m,
    round(dateDiff('day', min(ex_dividend_date), max(ex_dividend_date)) / (count() - 1), 1)   AS avg_days_between
FROM
(
    SELECT DISTINCT
        ticker,
        ex_dividend_date
    FROM global_markets.stocks_dividends
    WHERE ex_dividend_date >= today() - 365
      AND ex_dividend_date <= today()
      AND ticker NOT IN ('SPCX')
)
GROUP BY ticker
HAVING ex_dates_12m >= 40
ORDER BY ex_dates_12m DESC, ticker ASC
LIMIT 12
Run this yourself

QLDY sits at the top with 103 ex-dates in the trailing year, an average of 3.5 days apart. The spacing is a published schedule: the fund declares, goes ex, and pays on the same weekly rotation. The amount is the part that moves. For a holder, the ex-date stops being a quarterly event to plan around and becomes a standing feature of the calendar. Our upcoming ex-dividend dates tracker lists the next ones across the whole market.

How many weekly dividend ETFs are there?

The count is easy to measure directly. For each complete calendar year, count the symbols that cleared forty ex-dates.

QuerySymbols paying on a weekly cadence, by complete calendar year
yearfunds_paying_weekly
20211
20222
20232
20242
202520
The exact SQL behind every number
SELECT
    year,
    count() AS funds_paying_weekly
FROM
(
    SELECT
        toString(toYear(ex_dividend_date))  AS year,
        ticker,
        countDistinct(ex_dividend_date)     AS ex_dates
    FROM global_markets.stocks_dividends
    WHERE ex_dividend_date >= '2018-01-01'
      AND ex_dividend_date <  toStartOfYear(today())
      AND ticker NOT IN ('SPCX')
    GROUP BY year, ticker
    HAVING ex_dates >= 40
)
GROUP BY year
ORDER BY year
Run this yourself

In 2025, the last complete calendar year in view, 20 symbols paid on that cadence. The earliest year the scan returns, 2021, held 1. The line between those two points is the shape of the category.

Where the weekly cash comes from

A covered call fund holds an asset and sells call options on it. The option buyer pays a premium up front for the right to buy that asset at a fixed strike price before expiry. The fund keeps the premium whatever happens next, and it passes most of it through to shareholders as the distribution. Selling options that expire in days instead of months lets the fund repeat the sale every week, which is what makes a weekly schedule possible at all. Covered call ETFs explained walks through the option leg, including what happens when the calls finish in the money.

Premium is priced off implied volatility, the market's estimate of how far the underlying will travel before expiry. When implied volatility runs high the same strike sells for more, and the fund has more cash on hand to distribute. When it falls, the weekly premium falls with it. The trace below takes the most frequent payer from the panel above and prints every distribution it made in the trailing year, alongside the rate each one would imply at fifty-two payments a year. That payer currently goes ex more often than once a week, and the annualized column is a common yardstick across payments rather than the fund's own forward yield.

QueryEvery distribution from the most frequent payer, with its annualized rate
103 rows (showing 20)
ex_datefunddistributionannualized_pct
2025-10-01QLDY0.195619.9
2025-10-03QLDY0.196620.1
2025-10-08QLDY0.196820
2025-10-10QLDY0.196820.8
2025-10-15QLDY0.192520
2025-10-17QLDY0.192520.1
2025-10-22QLDY0.194120.2
2025-10-24QLDY0.191819.7
2025-10-29QLDY0.198319.8
2025-10-31QLDY0.20120.3
2025-11-05QLDY0.198520.4
2025-11-07QLDY0.194120.5
2025-11-12QLDY0.193720.1
2025-11-14QLDY0.192420.6
2025-11-19QLDY0.185420.3
2025-11-21QLDY0.182920.5
2025-11-26QLDY0.184119.7
2025-12-01QLDY0.186920
2025-12-03QLDY0.187419.8
2025-12-05QLDY0.189520
The exact SQL behind every number
WITH
    top_payer AS
    (
        SELECT ticker
        FROM global_markets.stocks_dividends
        WHERE ex_dividend_date >= today() - 365
          AND ex_dividend_date <= today()
          AND ticker NOT IN ('SPCX')
        GROUP BY ticker
        HAVING countDistinct(ex_dividend_date) >= 40
        ORDER BY countDistinct(ex_dividend_date) DESC, ticker ASC
        LIMIT 1
    ),
    payments AS
    (
        SELECT
            ticker,
            ex_dividend_date  AS ex_date,
            max(cash_amount)  AS amount
        FROM global_markets.stocks_dividends
        WHERE ex_dividend_date >= today() - 365
          AND ex_dividend_date <= today()
          AND ticker IN (SELECT ticker FROM top_payer)
        GROUP BY ticker, ex_date
    ),
    px AS
    (
        SELECT
            ticker,
            date,
            toFloat64(any(close)) AS close
        FROM global_markets.stocks_daily_aggs
        WHERE date >= today() - 400
          AND ticker IN (SELECT ticker FROM top_payer)
        GROUP BY ticker, date
    )
SELECT
    toString(d.ex_date)                                 AS ex_date,
    d.ticker                                            AS fund,
    round(toFloat64(d.amount), 4)                       AS distribution,
    round(100 * 52 * toFloat64(d.amount) / p.close, 1)  AS annualized_pct
FROM payments AS d
INNER JOIN px AS p ON p.ticker = d.ticker AND p.date = d.ex_date
ORDER BY ex_date
Run this yourself

QLDY paid $0.1956 per share on the first ex-date in the window and $0.1597 on the most recent. Put each one on a fifty-two payment year against the fund's close that day and they read 19.9% and 20.1%. Same fund, 103 payments over the trailing year, more than one a week, and a headline rate that lands somewhere different depending on which payment you annualize.

Does the share price drop on every ex-date?

Cash paid out leaves the fund. On the morning of the ex-date the fund's net asset value, the per-share value of everything it holds, opens lower by the amount of the distribution. That is bookkeeping rather than a market move: the shareholder holds the same value split differently, part in shares and part in cash. The panel below measures the effect across the weekly payers, setting the average distribution next to the average change from the prior session's close to the ex-date close.

QueryAverage distribution against the average ex-date price move
tickerex_datesavg_distributionavg_overnight_move
AMDW520.93250.0649
ARMW470.6601-0.2778
HOOY500.6431-1.1604
HOOW520.5787-0.1989
PLTY510.5699-0.8865
WNTR510.5683-0.3566
AMDY500.5457-0.6551
CHPY530.5243-0.3058
GDXW460.5189-0.1916
GOOW520.4898-0.0168
The exact SQL behind every number
WITH
    weekly AS
    (
        SELECT ticker
        FROM global_markets.stocks_dividends
        WHERE ex_dividend_date >= today() - 365
          AND ex_dividend_date <= today()
          AND ticker NOT IN ('SPCX')
        GROUP BY ticker
        HAVING countDistinct(ex_dividend_date) >= 40
    ),
    payments AS
    (
        SELECT
            ticker,
            ex_dividend_date  AS ex_date,
            max(cash_amount)  AS amount
        FROM global_markets.stocks_dividends
        WHERE ex_dividend_date >= today() - 365
          AND ex_dividend_date <= today()
          AND ticker IN (SELECT ticker FROM weekly)
        GROUP BY ticker, ex_date
    ),
    px AS
    (
        SELECT
            ticker,
            date,
            toFloat64(any(close)) AS close
        FROM global_markets.stocks_daily_aggs
        WHERE date >= today() - 400
          AND ticker IN (SELECT ticker FROM weekly)
        GROUP BY ticker, date
    )
SELECT
    ticker,
    count()                                AS ex_dates,
    round(avg(amount), 4)                  AS avg_distribution,
    round(avg(ex_close - prior_close), 4)  AS avg_overnight_move
FROM
(
    SELECT
        d.ticker                   AS ticker,
        d.ex_date                  AS ex_date,
        toFloat64(any(d.amount))   AS amount,
        any(pe.close)              AS ex_close,
        argMax(pp.close, pp.date)  AS prior_close
    FROM payments AS d
    INNER JOIN px AS pe ON pe.ticker = d.ticker AND pe.date = d.ex_date
    INNER JOIN px AS pp ON pp.ticker = d.ticker
    WHERE pp.date <  d.ex_date
      AND pp.date >= d.ex_date - 7
    GROUP BY d.ticker, d.ex_date
)
GROUP BY ticker
ORDER BY avg_distribution DESC
LIMIT 10
Run this yourself

Across 52 ex-dates, AMDW distributed an average of $0.9325 per share, and the move from the prior close to the ex-date close averaged 0.0649 dollars per share. The distribution is the piece of that move the fund sets in advance. The rest is whatever the underlying did between the two closes, so no single week lines up exactly. Averaged across fifty of them, the distribution is the part that recurs.

Why a distribution yield is not a dividend yield

A dividend yield measures what a company's board pays against its share price. A distribution yield on a weekly payer is a different measurement: take one week's payment, multiply by fifty-two, divide by the price. It assumes the most recent premium repeats fifty-two times, and the trace above shows how far that assumption travels. The figure is also silent on the source of the cash. Option premium, portfolio dividends, realized gains, and returned principal all enter the same distribution and all land in the same headline percentage.

The SEC 30-day yield is the closest thing to a like-for-like number, since it measures the interest and dividends the portfolio actually earned over the period, net of expenses. On an option income fund the two figures can sit far apart. SEC yield versus distribution yield works through both calculations.

Return of capital and your cost basis

Part of a weekly distribution can be classified as return of capital, which is not income at all. It is a portion of your own principal handed back, and the tax code treats it by reducing your cost basis in the shares instead of taxing it on receipt. Buy at $20, take $2 of return of capital, and your basis becomes $18. The tax arrives later, in a larger capital gain or a smaller loss when you sell.

Funds publish running estimates in Section 19(a) notices, and those estimates are provisional. The final split across ordinary income, qualified dividends, capital gain, and return of capital is settled on the year-end 1099-DIV, where return of capital appears in Box 3 as a nondividend distribution. A year of weekly notices can be reclassified in January. Return of capital in ETF distributions covers how to read them.

What happens when a fund pays out more than it earns

This is the question underneath the whole category. When option premium and portfolio income cover the distribution, NAV can hold roughly flat while the cash goes out the door. When the distribution runs ahead of what the fund takes in, the balance comes out of principal, and NAV grinds lower by the difference. The last panel puts both halves side by side: total cash paid over the trailing year as a percentage of the starting price, and the price change over that same year.

QueryTrailing-year cash paid and price change, as a percentage of the starting price
tickerdistributions_pctprice_change_pctcash_plus_price_pct
AMDW106.5120.6227.1
WNTR84.1-56.527.7
MRNY80.7112192.7
AMDY71.531.1102.6
AMYY68.6-44.424.1
ARMW610.961.9
NVYY56.9-52.54.3
SMYY55-76.6-21.6
IOYY53.6-75.2-21.6
FIAT52-48.23.8
The exact SQL behind every number
WITH
    weekly AS
    (
        SELECT ticker
        FROM global_markets.stocks_dividends
        WHERE ex_dividend_date >= today() - 365
          AND ex_dividend_date <= today()
          AND ticker NOT IN ('SPCX')
        GROUP BY ticker
        HAVING countDistinct(ex_dividend_date) >= 40
    ),
    paid AS
    (
        SELECT
            ticker,
            sum(amount) AS cash_12m
        FROM
        (
            SELECT
                ticker,
                ex_dividend_date,
                max(cash_amount) AS amount
            FROM global_markets.stocks_dividends
            WHERE ex_dividend_date >= today() - 365
              AND ex_dividend_date <= today()
              AND ticker IN (SELECT ticker FROM weekly)
            GROUP BY ticker, ex_dividend_date
        )
        GROUP BY ticker
    ),
    px AS
    (
        SELECT
            ticker,
            toFloat64(argMin(close, date)) AS start_close,
            toFloat64(argMax(close, date)) AS end_close
        FROM global_markets.stocks_daily_aggs
        WHERE date >= today() - 365
          AND ticker IN (SELECT ticker FROM weekly)
        GROUP BY ticker
        HAVING countDistinct(date) >= 220
    )
SELECT
    c.ticker                                                                                AS ticker,
    round(100 * toFloat64(c.cash_12m) / p.start_close, 1)                                   AS distributions_pct,
    round(100 * (p.end_close - p.start_close) / p.start_close, 1)                           AS price_change_pct,
    round(100 * (toFloat64(c.cash_12m) + p.end_close - p.start_close) / p.start_close, 1)   AS cash_plus_price_pct
FROM paid AS c
INNER JOIN px AS p ON p.ticker = c.ticker
ORDER BY distributions_pct DESC
LIMIT 10
Run this yourself

AMDW leads on cash, paying 106.5% of its starting price out over the year against a price change of 120.6%. Adding the two gives 227.1% for a holder who took the cash and kept the shares. Every fund here has a full year of trading history, so both columns cover the same window.

Reading the two columns together is the entire exercise. A large distribution percentage next to a deeply negative price change describes a fund whose payments have outrun what it collected. The same distribution percentage next to a flat price describes a fund paying out of income it earned. The headline yield looks identical in both cases. Monthly funds run the same arithmetic on a slower clock, which monthly dividend ETFs works through.

How these panels are built

The scans define a weekly payer empirically, as any symbol with at least forty ex-dividend dates in the trailing year, rather than trusting a declared frequency field. Distribution figures are declared cash amounts, deduplicated to one row per symbol and ex-date. Price columns are daily session closes as traded on the date shown. Symbols that vendor feeds have reassigned between two different issuers are excluded from every scan on this page.

FAQ

Are weekly dividend ETF payments real dividends?

Usually not in the ordinary sense. In an option income fund most of the cash is premium collected from selling call options, plus whatever the underlying holdings paid. The year-end 1099-DIV assigns each part its final tax character.

Do weekly dividend ETFs lose value over time?

Not by rule. The price falls by the distribution on each ex-date, then trades on its own from there. Whether it makes that ground back over a year depends on the underlying and on how much of the payment the fund actually earned, which is what the trailing-year panel above measures.

How are weekly distributions taxed?

Each one splits across ordinary income, qualified dividends, capital gain, and return of capital. Only the year-end tax form settles the split. The return of capital portion lowers your cost basis instead of being taxed on receipt.

What is the ex-dividend date on a weekly payer?

It is the first session on which a new buyer does not receive the upcoming payment. On a weekly fund it recurs most weeks on the same weekday, so buying a day late means waiting about a week rather than a quarter.

Can a weekly ETF cut its distribution?

Yes, and the trace above shows the amount moving from week to week. Nothing fixes the payment. It tracks the premium the fund collected, which moves with implied volatility and with the fund's own option schedule.


Every panel on this page carries the SQL that produced it. To pull one fund's payment history, or to line its distributions up against its price over any window, ask the question in plain English on the Strasmore terminal.

#etfs#distributions#covered calls#return of capital#yield