About PlainIndex
A lot of ETF research is paywalled, and some of the ratings sit next to a sales relationship with the issuers being rated. This site publishes the scoring formula, uses public filings, and keeps brokerage affiliate links away from anything that touches a score.
How scores are computed
Every score on this site is a deterministic function of public data — expense ratios from fund prospectuses, holdings from SEC EDGAR N-PORT filings, AUM and yield from yfinance. The exact formulas, thresholds, and per-category numbers live on the methodology page — enough detail that any score can be replayed by hand from the raw inputs. If you can't replay our number, that's a bug — report it.
Where the data comes from
- SEC EDGAR Form N-PORT — every registered fund files monthly with the SEC. Only the third-month-of-quarter filing is publicly disclosed (with a 60-day lag); the other two months are kept confidential. Free where available.
- yfinance — Yahoo Finance's public data feed for daily prices, dividends, expense ratios, AUM, and TTM yield.
- Curated baseline — issuer, category, and benchmark mapping per fund, maintained in the repo. Preserves accurate fund metadata when scraped fields are missing.
We don't license data from any provider whose business depends on fund issuers paying for placement, ratings, or distribution access. That rules out Morningstar Direct, CRSP, and the usual paid-research databases. If you cannot check the inputs, we should not be publishing the score.
Refresh cadence
- Daily — closing prices, AUM, TTM yield, expense ratios. Runs after US market close on weekdays. Leaderboards re-rank automatically.
- Monthly — N-PORT holdings re-pull. Drives pair-overlap and per-fund concentration sub-scores. Runs the 5th of each month after SEC EDGAR publishes the new filings.
- Annual — manual review of expense-ratio drift, category mappings, and methodology weights. Methodology version bumps are versioned and documented on the methodology page.
Catalog last refreshed 2026-10-24 · 497 funds tracked · methodology v0.5.2.
How it's funded
Brokerage affiliate links. PlainIndex receives a one-time referral
fee when a reader opens a Fidelity account through the
“Open at Fidelity” link on a per-ETF page. Affiliate
relationships have no influence on any fund's
score — methodology weights and thresholds are set before any
affiliate ranking is computed and are versioned on the
methodology page.
Every affiliate link uses rel="nofollow sponsored"
so search engines don't count it as an organic endorsement.
We don't run display advertising. We don't sell email lists; we don't have an email list. We don't accept payment from issuers for placement, ratings, or distribution. The affiliate-link disclosure is the entire commercial side of the operation.
Tracking and privacy
No third-party analytics tags, no advertising pixels, no cross-site cookies. Cloudflare web analytics runs at the edge and counts page views by URL — no individual visitor profile, no fingerprinting. You can browse anonymously and we don't know who you are.
Who writes this
PlainIndex is written and maintained by David Rediger. The scoring pipeline, the guides, and the methodology page are one person's work. There is no research desk and no editorial board. There is a published formula, the raw inputs, and a repository. If a number here disagrees with the methodology, that is a bug, and reporting it is the fastest way to get it fixed.
No CFA, no CFP, no registered-adviser status, and nothing on this site is personalized advice. The site's claim is narrower and checkable: every score is a deterministic function of public data, documented well enough to reproduce by hand.
Found a bug?
If a score on this site doesn't match what the methodology page says
it should be, that's a bug. Email
[email protected]
with the ticker and what you expected — include the score you read,
the score you calculated, and the input numbers you used so we can
reproduce the discrepancy quickly.