← Ground Truth report library

Is JEPI Worth It? We Measured It Against the Thing It’s Made Of

Episode D02 · report format v2 · lab run 2011-10-31 → 2026-06-30, each fund over its own life, receipt re-derived into this repo 2026-08-15, corrected and re-run 2026-09-05
VERDICT — NOT A KILL — A DISPERSION. MEASURED AS A SIMPLE YEARLY RATE, EVERY WRAPPER COST SOMETHING, AND WHAT IT COST RUNS FROM 2.1 POINTS A YEAR TO A FUND WHERE A DOLLAR BECAME $1.28 AGAINST $2.07 IN ITS OWN STOCK

Measured over each fund’s own full life against the thing it owns, and measured as a simple yearly rate — the published column, an annualized arithmetic mean — 0 of 21 measured pairs kept pace with their underlying. The ruler has to be said out loud, because it decides one row: counted the way money compounds (geometric), 1 of 21 came out ahead — MSTY, by 3.9 points a year over a 2.3-year life with no bear market inside it — and on dollars its $1.17 beat its stock’s $1.07. §5 owns that row. But the sign is not the finding — the size is, and it is wildly dispersed. At the top of the ladder the cheapest call-writers cost between 2.2 and 2.8 points a year (TSPY, XDTE, QDTE), and a Goldman Sachs fund sitting just below that band, GPIX, gave up 3.3 points a year and grew net asset value 13.8% a year while doing it. At the bottom, CONY: the published figure is −48.4% a year — and because that column is an annualized arithmetic mean rather than a compounding rate, the honest way to state that fund is what a dollar actually became: $1.28, against $2.07 for the stock it sells calls on. In between sits JEPI, the $44.3B fund that defines the category, which paid a life yield of 8.8% a year and trailed SPY by 7.9 points a year across its whole 6.1-year life (7.1 points counted geometrically): the yield you were paid and the return you gave up are within a point of each other. Those are two independently measured quantities that came out near each other. We are not saying the yield causes the gap — this receipt does not license that, and §2 says so at length. In the form no annualization convention can touch: a dollar in JEPI became $1.83 and a dollar in SPY became $2.67, same 6.1 years, same money in.

What we granted, and what we actually tested

Granted, not measured: that the cash is real and it arrives. These are large, regulated products from JPMorgan, Goldman Sachs, Global X, NEOS, Roundhill and Schwab, doing on the page exactly what their prospectuses say they do. We also grant, because our own table says so, that some of them are genuinely good: the cheapest call-writers on this page cost between 2.2 and 2.8 points a year, and the two Goldman funds just below that band sell calls on only part of what they hold. And we grant that sequence-of-returns protection is a real benefit — spending a distribution instead of selling into a falling market is worth something to somebody who is spending. None of that is what we measured.

Tested: one question, applied identically to every fund: did the fund’s total return over its own life keep pace with the thing it is made of? 24 funds; 21 of them have a named underlying on the source table and are measured against it over the identical window, month for month. Survivorship-free month-end price and distribution records through 2026-06-30, month-end net asset value plus distributions per share, split-consistent, the same method applied to all 24 so the columns are cross-comparable. No trading, no friction: this is an ownership comparison, not a strategy backtest.

What this report does NOT claim: that these funds are a category to be avoided, that any fund is dishonest, or that we know where any distribution was actually funded from. We have never read a fund’s ledger. “Your own money coming back” is a decomposition inference from net asset value drift against total return — a strong one, and corroborated at contract level (§6) — but it is an inference and it is labelled as one everywhere on this page. We also do not claim that the young funds’ records will hold, that this measures leverage (it does not; these are unlevered holdings), that it measures tax, or that it tells you what to own. And “covered-call funds are all bad” is not a claim this report makes: it is false against our own table, and the row that falsifies it is printed below.

§1 · What stands in place of a pre-registration

To be plain: there is no pre-registration for D02, and there is no lock hash — and that sentence sits where a lock hash would sit, rather than a hash we do not have. This episode is an explainer of a measurement already taken, not an experiment: the numbers existed before the episode did, so there was no open question to wager on and nothing to pre-commit. Our C02 and A13 reports can cite a pre-run lock hash; this one cannot, and manufacturing one would be the exact move this channel was built to catch.

What stands in its place is a provenance disclosure and a re-derivation, and the disclosure comes first because it is unusual for this channel: the receipt behind this page was computed outside this repo — a separate engine, publishing to a separate reference page. This pass re-derived it here, from the same survivorship-free store, cell by cell, on 2026-08-15, corrected and re-run 2026-09-05. The seven checks below are that re-derivation, each printed with the question it asked and the denominator it closed. Three of them did not come back clean, and all three are recorded rather than repaired quietly.

The falsifiable question

Over each fund’s own life, did the fund’s total return keep pace with the thing it is made of — and if not, by how much?

What we did not have going in — and the three scars from re-deriving the receipt inside this repo

Scar one: six of the 24 rows had no engine entry. The engine is hard-bound to its fund specification table, and the companion file the reference page’s own provenance block names is not on disk anywhere. The affected rows are CONY, NVDY, QYLD, RYLD, TSLY, XYLD — which includes QYLD, the longest and most load-bearing record on this page. We re-declared the 6 specifications from the source table’s own left-hand column and re-derived them from the same store: 24 of 24 master cells and 6 of 6 cap-cost cells reproduce. ⚠ That is a reconstruction of the spec, not a recovery of the file. It proves the figures are re-derivable; it does not prove the vanished file used this exact pairing. Agreement to print precision on 30 of 30 cells is the evidence that it did, and it is the only evidence there is.

Scar two: the columns labelled “CAGR” are not geometric CAGRs. Both — NAV CAGR and Total CAGR — are annualized arithmetic means, and those coincide with a geometric rate only at zero volatility. The total-return pair is printed both ways below; the NAV rate only as published, and no geometric NAV rate is on this page (§7). We found this in our own instrument, it is one of the two most important caveats on this page, and it has its own section (§5) rather than a footnote.

Scar three: the index leg was measured over one month too many, on every pair. Every one of the 21 fund-vs-index cells carried one extra month on the index side — the month before the fund’s first return, a month the fund did not exist for — and the reference page carried the same month, which is why the re-derivation reproduced it perfectly. Reproducing is not the same as being right. Fixed 2026-09-05: 21 of 21 pairs now carry the same count of monthly returns over the same month-ends on both legs. On the 17 index pairs the correction moved the published gap by up to 2.17 points a year; on the 4 single-stock pairs by up to 74.73 points; and on MSTY it flipped the sign of the geometric gap (§5). The corrected table is the one on this page, and the reference page was corrected the same day.

The measurement, exactly as configured

ParameterValue
Questionfund total return vs the total return of the thing the fund owns
Funds24 rows, parsed from the source master table (24 of 24 parsed)
Measured pairs21 — the rows that carry a named underlying; 20 of them call-writers
Windoweach fund’s own full life, month-end, earliest 2011-10-31, all ending 2026-06-30; the index leg over the same month-ends, month for month (21 of 21 pairs asserted)
Longest / shortest recordQYLD 12.5 yr (151 mo) / LFGY 1.42 yr
Return definitionmonthly total return = (change in net asset value + distributions per share) / prior net asset value, split-consistent
Cap costfund total return − underlying total return, over the fund’s own window — the instrument this whole page rests on
Ruler, stated honestlythe source table has two columns labelled “CAGR” — NAV CAGR and Total CAGR — and each is an annualized arithmetic mean, a simple yearly rate, not a geometric CAGR. Total return, the underlying and the cap cost are published both ways in the ledger below, with what a dollar became beside them; the NAV rate and the life yield are printed once, as published, and no geometric NAV rate is on this page (§7). Every rate spoken in the prose is the published rate unless it says geometric.
Survivorshipsurvivorship-free store; every fund measured over its actual life; no fund dropped for a bad record
Frictionsnone — no trading, no slippage, no tax. This is an ownership comparison, not a backtest.
Third-party inputfour columns — expense ratio, AUM, inception and distribution frequency — from stockanalysis.com as-of 2026-07-01, carried from the source table. Four more are the source table’s own labels (ticker, fund name, tier, the underlying pairing). Every measured column — 16 of the 24 published — is re-derived from the store.

Deliberately NOT tested — the boundary, stated

  1. Any fund’s own ledger. We did not open a single fund’s books and match options profit and loss against distributions paid. Where the money came from is an inference on this page, everywhere, and it is labelled as one.
  2. Leverage. These are unlevered holdings. Borrowing to hold income funds is a different claim with a different receipt, and it is not this one.
  3. Yield on cost. A different metric answering a different question; it appears nowhere here.
  4. The funds as a portfolio. No allocation, no sleeve, no “how much should you hold.” This page prices a wrapper.
  5. Bear-market behaviour for 17 of the 24 funds, because they have never been in one. That is a boundary on the evidence, not a caveat about it — §3.
  6. Tax. The tax engineering in these products is real and we did not price it.
This measurement could have come back either way for any individual fund, and on our own table it did. The same column that prices CONY’s gap at the bottom of the ladder prices SCHD’s at −2.1% a year at the top and GPIX’s at −3.3% with net asset value +13.8% a year, and we publish all of them from the same column — and on the geometric ruler the same instrument hands MSTY a win (§5). “Covered-call funds are all bad” is not a claim this report makes — it is false against our own instrument, and the row that falsifies it is row 8 of the ledger.

The seven verification checks — each with the question it asked

#Check — and the question it askedResultClean?
1POINTERS — do the four line anchors this report cites still land on the structure they name?4 of 4. Parsed 24 master rows and 21 cap-cost rows.YES
2RECOMPUTE — does the engine still produce the number the reference page prints, to that page’s own 0.1-point print precision?96 of 96 master-table cells across 24 of 24 funds, 0 diffs. Fund-only figures; row 3a is what this check could not see.YES
3CAP COST — does fund total return minus underlying total return, over the fund’s own window, reproduce the published cap-cost column?21 of 21 cap-cost cells, against the reference page as corrected on 2026-09-05.YES
4WINDOW (3a) — was the index leg measured over the fund’s own window, month for month? The reproduction check above could not ask this: both sides carried the same window.Not until 2026-09-05. Every one of the 21 pairs carried one extra index month — the month before the fund’s first return — and the reference page carried the same month, so the cells above had reproduced a defective number perfectly. Fixed and re-derived: 21 of 21 pairs now carry the same count of monthly returns over the same month-ends on both legs. The correction moved the published gap by up to 2.17 points a year on the 17 index pairs and up to 74.73 points on the 4 single-stock pairs, and on one of them (MSTY) it flipped the sign of the geometric gap. See §5.REPAIRED
5ORPHANS — which rows can the surviving engine not address at all?6 of 24 (CONY, NVDY, QYLD, RYLD, TSLY, XYLD) had no engine entry: the companion file the reference page’s own provenance block names is not on disk. Re-declared here and re-derived — 24 of 24 master cells and 6 of 6 cap cells reproduce.REPAIRED
6VARIANCE DRAG — are the columns labelled “CAGR” actually geometric CAGRs?No. Both (NAV CAGR and Total CAGR) are annualized arithmetic means. On total return, median gap across 24 funds 1.04 points a year; largest 30.37 points. See §5. The NAV rate’s gap was not measured: no geometric NAV rate is on this page.NO
7AUM — what does the tabled sample actually hold?24 of 24 AUM cells parsed; $139.5B across the 22 call-writing funds. A floor on the category, never the category — and the column is not ours.FLOOR ONLY

Three of the seven came back clean; three did not, and all three are ours. One is an engine file that vanished and had to be reconstructed before 6 of these rows could be re-derived at all. One is a column label on our own reference page that does not mean what it says — it changes what 6 of these funds may honestly be said to have done. And one is an index leg measured over one month too many on every pair — the most consequential of the three, because the reproduction check was structurally blind to it, and because it moved the bottom of the ladder and flipped one fund’s sign. The seventh is a qualification, not a defect: the AUM figure ships as a floor. None was repaired quietly.

§2 · The headline arithmetic

FigureValueWhat it means
Funds measured / pairs priced24 / 2121 of the 24 rows carry a named underlying on the source table; three do not and are reported without a cap cost rather than paired with a guess.
Pairs that kept pace with their own underlying, measured as a simple yearly rate0 of 21On the published column, an annualized arithmetic mean. Counted geometrically, 1 of 21 (MSTY, +3.9% a year); on dollars 1 of 21 (the same fund, $1.17 against $1.07). The wrapper always cost something on the ruler the reference page prints, and §5 shows the one row where the ruler decides.
The dispersion, as published−2.1% (SCHD) to −48.4% (CONY) a yearThe whole finding. Across the 20 call-writers alone, −2.2% (TSPY) to −48.4%. Both ends are annualized arithmetic means; the bottom is read as a multiple below, not as an annual surrender.
The shape of the ladder4 / 12 / 54 of the 21 cost under three points a year, 12 sit between three and ten, 5 are worse than ten; median 5.1 points a year, which is what a typical wrapper charged.
The top rung — the cheapest call-writersbetween 2.2 and 2.8 points a yearTSPY −2.2% · XDTE −2.6% · QDTE −2.8%. SCHD, a dividend fund rather than a call-writer, sits beside them at −2.1%.
The counterweight — GPIX, 2.7 yr−3.3%/yr cap cost, +13.8%/yr net asset valueA Goldman Sachs fund that gave up 3.3 points a year — not a rounding error, nothing on this ladder is — and grew net asset value 13.8% a year while doing it. Its sibling GPIQ cost 4.8; both sell calls on only part of the book. A real product doing a real job.
JEPI life yield (6.1 yr, 74 mo)8.8% a yearReal, paid, arrived. Nobody disputes it, and this report does not try to.
JEPI vs SPY, same window+11.0% vs +18.9% → −7.9 points/yrPercentage points, not percent. −7.1% counted geometrically — between seven and eight depending on the convention, which is why the dollars below are the figure we hand you. Two independently measured quantities; the near-equality with the yield above is an observation, not a mechanism.
JEPI dollar test$1.83 vs $2.67What a dollar became in the fund and in the index it owns. A multiple carries no annualization convention, so nothing here can be inflated by one.
QYLD dollar test (12.5 yr, 151 mo)$1.76 vs $9.26The only call-writing fund on the table old enough to have lived through several bear markets. This is the through-the-cycle picture.
Highest life yield anywhere on the table (MSTY)144.9% a year → $1.17Against $1.07 for the stock it sells calls on: over the matched 2.3-year window the fund’s dollar beat the stock’s (§5), and a 144.9% yield still produced $1.17. The yield on the label did not tell you which fund you had bought.
Same yield, different ladderJEPI 8.8% vs GPIX 8.5%0.3 points apart in yield, 4.6 points apart in what the wrapper cost. The fund this report opens on and the Goldman fund near the top of the ladder paid almost the same yield and sit nowhere near each other on it. The label does not point.
Funds with no bear market inside their life17 of 24A boundary on the evidence. The flattering young records are the least trustworthy rows on our own page.
What the tabled sample holdsat least $139.5B across 22 call-writing fundsA floor on the category, never the category. The AUM column is stockanalysis.com as-of 2026-07-01 — one of the four carried columns (expense ratio, AUM, inception and distribution frequency) that are not our measurement.

§3 · Was it the weather? The regime boundary

17 of the 24 funds on this page have never seen a bear market. That is not a caveat riding under the table — it is the shape of the evidence. Seven funds have any real drawdown regime inside their life, as our reference page’s own regime caveat names them (QYLD, XYLD, RYLD, JEPI, SCHD, DIVO, TSLY): the three old buy-writes, JEPI, the two dividend funds, and one single-stock fund whose own stock crashed on its watch. The rest lived entirely inside the run that followed. Their positive net-asset-value records are bull-flattered, and a two-year record is a statement about the weather.

What real regime evidence exists on this tape: JEPI’s max drawdown −18.9% through 2022, and QYLD over 12.5 years with a max drawdown of −39.3% and a net-asset-value path of −2.0% a year. The two other old-guard buy-writes tell the same story: XYLD net asset value −1.3% a year over 5.8 years and RYLD −5.2% a year with a −44.0% drawdown.

The converse is ours to say as well: a young fund with a good number has not been disproved by anything here. It has simply not been tested. Those are different, and the reopen bounty in §8 is written against exactly that gap.

§4 · The controls

Each fund’s control is its own underlying, over its own window, computed by the same method. That is what makes the columns comparable and it is the entire instrument: SPY re-derives at +18.9% a year over JEPI’s 73 monthly returns and QQQ at +21.4% a year over QYLD’s 150. Change the window and both sides change together — which is exactly the property the extra index month in §1 broke, on every pair, until 2026-09-05.

The two dividend portfolios on the table are the second control. SCHD, which writes no calls, grew net asset value +10.5% a year over 14.7 years, and DIVO, which sells calls on only part of its book, +7.5% a year over 9.5 years, both through full cycles. If durable growth with a payout was the thing you wanted, that is where our own table points — and neither one is a high-yield product.

And the negative control on the metric: the four funds this report leans on hardest have almost no variance drag — JEPI 0.56pp · SPYI 0.62pp · QYLD 0.64pp · GPIX 0.68pp — so §5’s finding does not touch the spine of this page. It was checked before it was relied on, not after. That check covered each fund’s own return, not the gaps; JEPI’s gap counted both ways is in §2.

§5 · The best objection — and it is ours, against our own instrument

“Your headline column is not the statistic you think it is.” It is the best objection to this page, nobody raised it against us, and it is true. Two of the reference table’s columns are labelled “CAGR” — NAV CAGR and Total CAGR — and the engine computes each as an annualized arithmetic mean of monthly changes. An arithmetic mean and a geometric rate coincide only at zero volatility, and for a violently volatile fund the published figure sits well above what a holder actually compounded.

We measured the gap on the total-return column — the one the cap cost rests on — for every fund rather than arguing about it. Median across the 24 funds: 1.04 points a year. Every fund whose gap is two points or more — all 6 of them single-stock or concentrated option-income funds — is here in full, with the published figure, the geometric figure, and what a dollar actually became:

FundYearsTotal return
(published, annualized arithmetic mean)
Total return
(geometric)
DragCap cost
(published)
Cap cost
(geometric)
$1 becameIts underlying
MSTY2.33+37.3%+7.0%30.37pp−17.5%+3.9%$1.17$1.07
CONY2.83+27.3%+9.1%18.26pp−48.4%−20.1%$1.28$2.07
TSLY3.58+21.1%+9.8%11.34pp−24.0%−13.1%$1.40$2.09
LFGY1.42+13.6%+7.5%6.08pp——$1.11—
NVDY3.08+57.9%+52.3%5.54pp−27.7%−22.0%$3.66$5.55
ULTY2.33+7.4%+4.7%2.62pp——$1.11—
So we impose a rule on ourselves for these 6 funds: state them as multiples, not as rates. That rule covers their NAV rate too: for these 6 funds it appears only in the ledger, under a header that names its construction, and nowhere in the prose — and no geometric NAV rate is on this page. A reader hearing that CONY “gives up 48.4 points a year” — a sentence we never say, and the one this table exists to prevent — would compute a loss about 2.4 times too large, because that figure is an annualized arithmetic mean and the geometric equivalent is −20.1%. The honest statement is the one that carries no annualization convention at all: a dollar in CONY became $1.28 while a dollar in the stock it sells calls on became $2.07.

And on the wildest one the ruler flips the sign. MSTY’s published gap against its own stock is −17.5% a year (annualized arithmetic mean) — a loss. Counted the way money compounds, over the fund’s own window, it is +3.9% a year, and a dollar in MSTY became $1.17 while a dollar in MSTR became $1.07. The poster child for this trap beat its own stock over its own 2.3-year life, with no bear market inside it — and we did not know that until we corrected our own window (§1, scar three). A 144.9% life yield produced $1.17; the label told you nothing either way.

Two things this does not mean. It does not mean the annualized arithmetic mean is the wrong statistic in general: for a distribution rate — cash paid out, never compounded — it is arguably the honest one, which is why the life-yield column is left exactly as published. And it does not touch the spine of this report: the four funds it leans on hardest carry drags of JEPI 0.56pp · SPYI 0.62pp · QYLD 0.64pp · GPIX 0.68pp. We found the defect in our own instrument, we published the size of it, and we changed how 6 rows may be spoken about. We did not delete them.

§6 · Their own terms, and our evidence classes

The mechanism is not in this receipt. This page measures a gap. It does not prove that selling calls is what caused the gap, because nothing here reads a fund’s books. What we hold instead is a contract-level prior from our own options lab, published in an earlier episode, and it is a prior, not an answer: writing weekly calls on QQQ at the bid over six years collected $327 per share in premium and handed back $429 per share in intrinsic value on capped weeks, and at the five-delta limit the overlay finished +192.9% against +193.7% for simply holding, winning from 7 of 52 start dates. That is a self-managed overlay on one underlying. It contains no net asset value, no distribution, no return of capital, no expense ratio and no fund. Reasoning from it to a fund is reasoning, and it is labelled as reasoning wherever it appears.

The numbers here that are not ours. Four columns are carried from stockanalysis.com as-of 2026-07-01 — expense ratio, AUM, inception and distribution frequency — and none of them can be re-derived from a price-and-distribution store. The AUM column is the one that reaches the prose: it sums to at least $139.5B across 22 call-writing funds (JEPI $44.3B · JEPQ $39.0B · QQQI $12.5B), and it ships as a floor on the category rather than as the category: 24 funds is not the universe, and we did not count the universe.

The three outside sources the episode cites are witnesses, not specimens — and their figures are deliberately absent from this report. The episode credits an income educator who publishes his own book, a retail holder who publishes his dashboard, and an independent analyst who reconciled one fund’s published trade files for one month. Every figure of theirs is theirs, is credited to them on screen and in the description, and is not a measurement of ours — so none of it is carried here, where the whole point is that every figure on the page came out of the same instrument. The subject of this test is a fund structure. It is not a person, and no person appears in this report’s title, verdict or headline.

And the honest scars on the sample. Six of the 24 rows had to be re-declared from the source table’s own left-hand column before they could be re-derived at all (§1). They reproduce to print precision on 30 of 30 cells, which is the evidence, and it is a reconstruction of the spec, not a recovery of the file. And every fund-vs-index cell on our reference page carried one extra index month until 2026-09-05; this page carries the corrected cells, and says so.

§7 · The complete ledger — all 24 rows

All 24 funds on the source master table, every measured cell, nothing dropped for a bad record. 21 of the 24 carry a named underlying and therefore a cap cost; the other three are reported without one rather than paired with a guess. Three rate columns are printed twice — total return, the underlying’s return and the cap cost, each as published (an annualized arithmetic mean) and geometric; in the table below the underlying’s geometric twin is left to the CSV — and the Drag column is the total-return difference, marked in red wherever it reaches two points a year. Two rate columns are printed once, as published: the life yield, a distribution rate (§5 says why the arithmetic annualization is the honest one there), and the NAV rate, which the source table labels “NAV CAGR” and which is the same annualized-arithmetic-mean construction as the total-return column this page confesses. No geometric NAV rate is on this page: computing one would be a new lab cell outside the receipt, and we did not. $1 became is the annualization-free version and is the safest figure in the set. The six rows re-declared for this pass are CONY, NVDY, QYLD, RYLD, TSLY, XYLD, named in §1. Four columns are carried from stockanalysis.com as-of 2026-07-01 — expense ratio, AUM, inception and distribution frequency — four are the source table’s own labels (ticker, fund, tier, underlying), and the 16 measured columns are re-derived from the survivorship-free store. The † on XYLD’s inception (2013-06) is the source table’s own mark: the store’s price series for it begins 2020-08, so every measured cell in that row covers 2020-08 → 2026 — its window_start column says so — not its true inception. ⚠ These are the re-derived values, printed to one decimal. The re-derivation check’s tolerance is one print unit of the reference page, so a cell here may sit 0.1 off the figure that page prints and still be one of the 96 of 96 that matched — the full precision is in the CSV. The geometric cap-cost column is computed from two-decimal intermediates, so 11 of 21 cells in it sit 0.01 from the full-precision figure (SPYI, QQQI, JEPQ, ISPY, SCHD, DIVO, XYLD, QYLD, QDTE, TSLY, MSTY); that is rounding, not a diff, and the prose rounds to one decimal wherever it speaks them. The CSV carries 24 columns: ticker · fund · tier · inception · window_start · window_end · months · years · life_yield_pct_yr · nav_rate_pct_yr_published_arithmetic · total_return_pct_yr_published_arithmetic · total_return_pct_yr_geometric · variance_drag_pp · underlying · underlying_pct_yr_published_arithmetic · underlying_pct_yr_geometric · cap_cost_pct_yr_published_arithmetic · cap_cost_pct_yr_geometric · max_drawdown_pct · dollar_became · underlying_dollar_became · aum_usd_bn_stockanalysis_2026_07_01 · expense_ratio · distribution_freq. Two build-time provenance columns — a private row index and an engine-source note — are not published. Check our arithmetic: every fund figure on this page is a cell in the CSV below, or arithmetic on one; the one figure quoted from elsewhere is the contract-level receipt in §6, which belongs to an earlier episode.
Download the full 24-row ledger (CSV)
#TickerFundTierLifeWindowLife yield
(published — annualized
arithmetic mean)
NAV rate
(published — annualized
arithmetic mean)
Total return
(published — annualized
arithmetic mean)
Total return
(geometric)
DragOwnsUnderlying
(published — annualized
arithmetic mean)
Cap cost
(published — annualized
arithmetic mean)
Cap cost
(geometric)
Max DD$1 becameIts underlyingAUM
1SPYINEOS S&P 500 High IncomeAnchor·NEOS47 mo2022-08-31 → 2026-06-3012.8%+2.7%+15.8%+15.2%0.62ppSPY+20.9%−5.1%−4.4%−9.7%$1.72$1.99$6.2B
2QQQINEOS Nasdaq-100 High IncomeAnchor·NEOS30 mo2024-01-31 → 2026-06-3015.4%+6.8%+23.1%+22.3%0.85ppQQQ+28.9%−5.8%−4.9%−10.5%$1.63$1.79$12.5B
3IWMINEOS Russell-2000 High IncomeAnchor·NEOS25 mo2024-06-30 → 2026-06-3015.6%+3.9%+20.0%+19.0%1.08ppIWM+24.4%−4.3%−3.4%−20.4%$1.42$1.50$0.9B
4CSHINEOS Enhanced Income Cash AltAnchor·cash47 mo2022-08-31 → 2026-06-305.6%−0.2%+5.4%+5.4%0.00pp————−1.1%$1.23—$1.3B
5TSPYTappAlpha SPY Growth & Daily IncomeAnchor·TappAlpha23 mo2024-08-31 → 2026-06-3014.2%+2.1%+16.6%+15.6%0.94ppSPY+18.8%−2.2%−2.2%−15.2%$1.31$1.35$0.3B
6JEPIJPM Equity Premium IncomeAnchor·JPM74 mo2020-05-31 → 2026-06-308.8%+2.0%+11.0%+10.5%0.56ppSPY+18.9%−7.9%−7.1%−18.9%$1.83$2.67$44.3B
7JEPQJPM Nasdaq Equity Premium IncomeAnchor·JPM50 mo2022-05-31 → 2026-06-3011.6%+6.6%+18.8%+17.7%1.06ppQQQ+27.0%−8.2%−6.8%−17.1%$1.95$2.45$39.0B
8GPIXGS S&P 500 Core Premium IncomeAnchor·GS33 mo2023-10-31 → 2026-06-308.5%+13.8%+23.4%+22.8%0.68ppSPY+26.7%−3.3%−3.0%−9.4%$1.73$1.84$4.4B
9GPIQGS Nasdaq-100 Core Premium IncomeAnchor·GS33 mo2023-10-31 → 2026-06-3010.7%+17.5%+29.8%+28.7%1.14ppQQQ+34.6%−4.8%−4.1%−10.4%$1.96$2.13$4.6B
10ISPYProShares S&P 500 High IncomeAnchor·ProShares31 mo2023-12-31 → 2026-06-309.2%+7.9%+17.7%+17.0%0.71ppSPY+21.9%−4.2%−4.0%−13.4%$1.48$1.61$1.3B
11SCHDSchwab US Dividend EquityDiv-growth177 mo2011-10-31 → 2026-06-303.2%+10.5%+13.9%+12.9%1.02ppSPY+16.0%−2.1%−2.0%−22.3%$5.95$7.68$95.2B
12DIVOAmplify CWP Enhanced Dividend IncomeDiv + CC115 mo2016-12-31 → 2026-06-305.6%+7.5%+13.5%+12.6%0.88ppSPY+16.7%−3.2%−2.7%−20.7%$3.09$3.87$7.2B
13XYLDGlobal X S&P 500 Covered CallBuy-write71 mo2020-08-31 → 2026-06-3011.5%−1.3%+10.0%+9.6%0.47ppSPY+16.9%−6.8%−5.9%−24.6%$1.70$2.31$3.2B
14RYLDGlobal X Russell-2000 Covered CallBuy-write87 mo2019-04-30 → 2026-06-3012.4%−5.2%+6.7%+5.4%1.24ppIWM+13.4%−6.7%−5.2%−44.0%$1.46$2.06$1.4B
15QYLDGlobal X Nasdaq-100 Covered CallBuy-write151 mo2013-12-31 → 2026-06-307.5%−2.0%+5.3%+4.6%0.64ppQQQ+21.4%−16.1%−14.9%−39.3%$1.76$9.26$8.2B
16QDTERoundhill Nasdaq-100 0DTEBooster28 mo2024-03-31 → 2026-06-3044.8%−14.2%+24.9%+23.4%1.53ppQQQ+27.6%−2.8%−2.5%−40.3%$1.60$1.68$0.9B
17XDTERoundhill S&P 500 0DTEBooster28 mo2024-03-31 → 2026-06-3031.7%−11.7%+16.7%+15.8%0.87ppSPY+19.3%−2.6%−2.5%−30.8%$1.39$1.46$0.3B
18RDTERoundhill Russell-2000 0DTEBooster22 mo2024-09-30 → 2026-06-3046.6%−20.2%+17.8%+16.3%1.56ppIWM+21.7%−3.9%−3.5%−40.3%$1.30$1.37$0.2B
19NVDYYieldMax NVDA Option IncomeJuicer38 mo2023-05-31 → 2026-06-3080.8%−13.3%+57.9%+52.3%5.54ppNVDA+85.5%−27.7%−22.0%−55.9%$3.66$5.55$1.4B
20CONYYieldMax COIN Option IncomeJuicer35 mo2023-08-31 → 2026-06-30129.2%−46.8%+27.3%+9.1%18.26ppCOIN+75.7%−48.4%−20.1%−92.8%$1.28$2.07$0.4B
21TSLYYieldMax TSLA Option IncomeJuicer44 mo2022-11-30 → 2026-06-3089.2%−37.6%+21.1%+9.8%11.34ppTSLA+45.1%−24.0%−13.1%−86.9%$1.40$2.09$0.8B
22MSTYYieldMax MSTR Option IncomeJuicer29 mo2024-02-29 → 2026-06-30144.9%−46.4%+37.3%+7.0%30.37ppMSTR+54.8%−17.5%+3.9%−92.8%$1.17$1.07$1.0B
23ULTYYieldMax Ultra Option IncomeJuicer·diversified29 mo2024-02-29 → 2026-06-30119.8%−53.6%+7.4%+4.7%2.62pp————−84.4%$1.11—$0.9B
24LFGYYieldMax Crypto Industry & TechJuicer·diversified18 mo2025-01-31 → 2026-06-3079.8%−38.3%+13.6%+7.5%6.08pp————−59.3%$1.11—$0.1B

§8 · What would change our mind

  1. A real bear market on the young funds. 17 of these 24 funds have never seen one. If the newer anchors come through a genuine full drawdown cycle with flat-or-better net asset value and a wrapper cost inside about two points a year, then our own words about them — that they are structurally the same machine as the old buy-writes with a shorter, kinder sample — are wrong. That puts them on the top rung of our ladder, we re-run the table, and we say so on camera.
  2. The fund-ledger reconciliation. This is the cheaper one and it would upgrade our evidence class rather than reverse it. Two of these fund families publish their own trade files; matching options profit and loss against the distributions paid, fund by fund, would move this page’s central claim from a decomposition inference to the funds’ own books. It is a document fetch plus arithmetic. We did not run it, it does not block this report, and we would rather have it than not.
  3. A call-writing fund that beat the thing it is made of over its own full life, on every ruler. Measured as a simple yearly rate, 0 of the 21 pairs here did; counted the way money compounds, 1 did — MSTY, by 3.9 points a year, over a 2.3-year life with no bear market inside it (§5). Send us one that did it on every ruler, with a named underlying and a full life through a real drawdown, not a hand-picked window — and we run it here first.

§9 · What survives

A yield means nothing until it is standing next to the thing the fund owns. That comparison is the entire instrument on this page, it is subtraction rather than opinion, and it is the one number no fund’s own marketing page is responsible for printing.

The wrapper always costs something; the only question is how much. Measured as a simple yearly rate, 0 of 21 kept pace. The cost ran from 2.1 points a year to a fund where a dollar became $1.28 against $2.07 in its own stock, and the headline yield did not tell you which one you had bought. The cheapest call-writers cost between 2.2 and 2.8 points a year; the two Goldman funds just below them gave up 3.3 and 4.8, and both sell calls on only part of the book — the modest version of this product, on our own table.

Ask what a dollar became, not what the rate says. A multiple carries no annualization convention, so it cannot be inflated by one — and we needed that rule because of a defect in our own column, not in anybody else’s. It also decided one row the rate got wrong (§5).

A fund with no bear market inside its life has a record about the weather. 17 of these 24 have never been in one. 11 of the 24 grew net asset value while paying you; 8 of those 11 did it entirely inside a rising market.

What the wrapper actually is, on this evidence: a paid drawdown dampener and a bounded decumulation tool. If you are spending the distributions rather than reinvesting them, that is worth something real. It is not a wealth engine, and it was never built to be one.

§10 · Want to run a test like this yourself?

Everything we make is free — the reports, the ledgers, all of it. The only thing that costs us real money is the market data.

Where the numbers on this page came from. The month-end prices and the per-share distributions behind every fund figure here are a one-shot pull from Massive.com (formerly Polygon.io) taken 2026-06-22 — survivorship-free, with delisted names present to their delist date — read through the separate engine that produced our reference table, and re-derived here cell by cell (§1). The store ends on that pull date and the lab labels each month by its calendar month-end, so every “2026-06-30” cell on this page is the last bar in the pull, not a later print. No options data was used on this page; the one covered-call contract in §6 is quoted from an earlier episode. Four carried columns — expense ratio, AUM, inception and distribution frequency — are stockanalysis.com as-of 2026-07-01, not from the store. The vendor does not pay us, has no say in a verdict, and is not the link below.
Buying market data? Going through here supports Ground Truth (affiliate)
The firewall: going through that link pays us a small commission at no extra cost to you. It is a way to support the channel, not a description of our pipeline — the vendor that produced our numbers is named directly above, and we would rather say so plainly than let a commission blur the two. That is the only money this channel takes. Never from anyone whose claims we test — and never for anything inside a category we review.

Get every report + the 7 Questions one-pager (free)