rank() over (partition by ...). Across seven S&P 500 index funds, the
ETFs and mutual funds finished within 0.14 points a year of each other over
10 years, in roughly expense-ratio order.
Below is the query, results for 18 funds in three peer groups, and the two
details that make a side-by-side comparison misleading if you miss them.
Returns come from Fruit Stand’s Fund Returns listing on the Snowflake
Marketplace, as of November 6, 2026, the latest date with a row for every
fund below. Queries were run on November 10, 2026. Expense ratios are the
published figures, checked across several fund comparison sites the same
week. This isn’t investment advice.
The query
Don’t have fund returns in Snowflake yet? Fund and ETF Returns Data on Snowflake, Compared covers where to get them. The Fund Returns listing has one row per fund per as-of date inext_fund_trailing_returns_vw, and the fund’s name and type in
ext_fund_vw. List the funds you want with a peer group for each, then rank
within the group:
pickskeeps the comparison to funds that hold the same thing. Ranking an S&P 500 fund against a bond fund tells you about the market, not the fund.common_datefinds the latest as-of date that has a row for every fund. More on why below.rank() over (partition by p.peer_group ...)restarts the ranking in each group. Swapreturn_10yforreturn_1yorreturn_5yto rank on a different period.
type is 'ETF' for ETFs; mutual funds appear as 'FUND' or
'Mutual Fund', so the query labels everything that isn’t an ETF as a
mutual fund. Returns of 2 years and longer are annualized, and shorter ones
are cumulative.
The results
S&P 500
The cheapest fund, a mutual fund, ranks first, and the two most expensive,
one ETF and one mutual fund, tie for last. VOO and VFIAX are two share
classes of the same Vanguard portfolio, so their 0.02-point gap over 10 years
is close to VFIAX’s 0.01-point-higher fee.
Averaged by wrapper, the three ETFs returned 15.28% a year over 10 years and
the four mutual funds 15.30%. The wrapper made no measurable difference.
Total US stock market
These funds track three families of total-market index (CRSP, S&P and Dow
Jones), so some of the spread is the index rather than the fund. Even so, the top six sit within 0.07 points a year of each other.
US investment-grade bonds
Four funds, 0.03 points apart over 10 years. Bond index funds are even
closer than stock funds, because their fees are similar and small.
Compare on a date every fund has
ETF prices are final at the market close. Mutual fund NAVs are calculated after the close and often reach data providers the next morning, so the latest as-of date can be missing some funds. On November 10, 2026, the latest date in the listing, November 9, had no row yet for 352 active mutual funds and 24 ETFs that had one for November 6, VBTLX among them. Filtering onmax(as_of_date) alone would drop VBTLX from the bond
comparison without an error. Comparing each fund’s own latest row is worse:
November 9 was a 2.3% up day for the S&P 500, so a fund still on November 6
would look about 2 points behind on its 1-week and 1-month returns. The common_date step
avoids both by using the latest date that has every fund.
Single years can differ more than 10 years
Calendar-year returns are inext_fund_calendar_year_returns_vw, one row
per fund per year. Pivot two funds side by side to see the gap each year:
The same portfolio differed by as much as 0.23 points in a single year, but
the gaps run in both directions and cancel out: 0.02 points a year over 10
years. An ETF’s return is measured on its market price, which can sit a
little above or below the value of its holdings at year-end, while a mutual
fund’s is measured on its NAV. That’s why a one-year comparison of an ETF
and a mutual fund on the same index can look like a real difference when it
isn’t.
What decides the ranking
- Fees. Within a peer group, the expense ratio is the most consistent driver. The 0.125-point fee gap between FXAIX and VFINX shows up as 0.14 points a year over 10 years.
- The index. Total-market funds tracking different indexes can drift apart by a few hundredths of a point a year even at the same fee.
- Fund structure, a little. SPY is a unit investment trust that holds dividends in cash until it pays them out instead of reinvesting them, which costs it slightly more than its fee alone.
- Not the wrapper. In all three groups, ETFs and mutual funds are mixed together in the ranking.
Ranking against a benchmark
The query above ranks funds against each other. To measure each fund against an index instead, see How to Compare a Fund’s Returns With Its Benchmark in SQL. For the daily NAVs behind these returns, see Where to Get Daily NAV History for US Mutual Funds in SQL.F.A.Q.
Do ETFs outperform mutual funds?
Do ETFs outperform mutual funds?
Not because they’re ETFs. For index funds tracking the same index, the ranking follows fees: in our S&P 500 comparison the cheapest mutual fund ranked first and an ETF tied for last. Comparisons across all ETFs and all mutual funds mostly measure the mix of active and index funds in each group.
Is VOO or VFIAX better?
Is VOO or VFIAX better?
Over 10 years to November 6, 2026, VOO returned 15.31% a year and VFIAX 15.29%. They’re share classes of the same Vanguard fund, so the difference is VOO’s 0.03% expense ratio against VFIAX’s 0.04%. The choice is usually about how you buy: VFIAX has a $3,000 minimum at Vanguard, VOO trades like a stock.
Why don't ETF and mutual fund returns match on the same day?
Why don't ETF and mutual fund returns match on the same day?
Usually because they’re on different dates: mutual fund NAVs often arrive a day after ETF prices. Compare on the latest date both have. Over a single year, ETF market prices can also differ slightly from the NAV of their holdings.
Can I rank every fund in a category?
Can I rank every fund in a category?
Yes, if you have a list of the funds in it. Replace the
picks values with your list, or select codes from ext_fund_vw by name, and keep peer groups narrow so the ranking compares like with like.Are the returns total returns?
Are the returns total returns?
Yes. Fund Returns calculates every return from adjusted closing prices, which include distributions and splits.