Each stock is graded relative to the rest of the Nasdaq 100 on six metrics in three weighted pillars: Growth 60 · Valuation 20 · Balance sheet 20, adding up to a Score out of 100. For each metric a stock earns points based on where it ranks against its peers. The score's rank within the list then maps to a Tier, exactly like a tier list: S is the top tenth of this list right now, F is its bottom quarter. This is a ranking, not a fixed-threshold test and not a buy or sell rating: a high tier means a stock looks better than most of the list right now, not that it cleared a specific target.
S+ perfect 100
S top 10%
A next 10%
B 20–50%
C 50–75%
F bottom 25%
Tier sizes are fixed by rank, so a 100-stock list always has about 10 S, 10 A, 30 B, 25 C, and 25 F stocks, and the S&P 500 scales the same percentages to 500. The only exception is a tie: when stocks at a boundary share the same rounded score, they all round up into the higher tier. S+ sits above the bands: any stock that scores a perfect 100 of 100 earns it, and the scoring curve is calibrated so that is roughly one stock in the Nasdaq 100 and five in the S&P 500 at a time.
The three pillars
| Pillar | Metrics | Weight | Better means |
| Growth | Revenue Growth TTM (10) · Revenue Growth FWD (20) · EPS Growth TTM (10) · EPS Growth FWD (20) | 60 total | higher (faster sales and profit growth; expected growth counts double the trailing kind) |
| Valuation | PEG FWD | 20 | lower (a cheaper price for the growth you get) |
| Balance sheet | Cash vs Debt | 20 | higher (more cash than debt) |
A company with negative forward earnings (a negative P/E) ranks worst on PEG, not best, since "cheap relative to earnings" has no meaning when there are no earnings. For those names the PEG column shows a negative value (computed from forward P/E and growth) rather than the data provider's misleading positive figure. The P/E FWD column is shown for context (colored by its own P/E-vs-growth ranking) but its points come through PEG, so valuation is not counted twice.
How a rank becomes points
For each metric, every stock is ranked against the others and given a percentile: the share of peers it beats (for "lower is better" metrics, being cheaper counts as beating). The percentile maps to points on this curve.
| Where it ranks | Points (of 20) |
| Bottom 22% (0 to 22nd percentile) | 0 |
| 36th percentile | 5 |
| Median (50th percentile) | 10 |
| 64th percentile | 15 |
| Top 22% (78th percentile and up) | 20 |
Formula: points = 20 × (percentile - 0.22) ÷ 0.56, capped between 0 and 20, then scaled by the metric's weight. Only the top 22% of a metric earns full marks, so a perfect 100 (the S+ tier) still requires ranking near the top of the list on everything; the clamp is calibrated against the live data so roughly one Nasdaq 100 stock and five S&P 500 stocks manage it, with more only when rounded scores tie. The table's cell colors follow the same ranking: a green cell is top-of-the-pack on that metric, red is bottom, and amber is in between. A missing value (β) scores zero for that metric and renders dark red: the score is always out of the full 100, so incomplete data can never help a stock.
Worked example: Apple's PEG
Apple's PEG of about 2.3 is cheaper than roughly 35% of the index. On the curve, the 35th percentile earns 20 × (0.35 - 0.22) ÷ 0.56 = about 5 of 20, and since PEG carries the full 20-point valuation pillar, that is about 5 of its 20 score points. Not because 2.3 fails a fixed bar, but because most other Nasdaq 100 names are cheaper. A stock with a PEG in the cheapest 22% of the group would earn the full 20.
Adding up and the Factors chip
A stock that is exactly average on every metric scores 50. The Factors column (for example 4/6) counts how many of the six scored metrics land in the upper part of the pack (15 of 20 percentile points or better). A metric with missing data counts as a miss, never a pass.
Where each list comes from
| Universe | Source |
| Nasdaq 100 | The current Nasdaq-100 index constituents (synced weekly from the published index list) |
| S&P 500 | The current S&P 500 index constituents (synced weekly from the published index list) |
| Growth 100 | Top 100 holdings of VUG (Vanguard Growth ETF), by portfolio weight, from Vanguard's published holdings |
| Value 100 | Top 100 holdings of VTV (Vanguard Value ETF), by portfolio weight, from Vanguard's published holdings |
| Dividend 100 | Top 100 holdings of VIG (Vanguard Dividend Appreciation ETF), by portfolio weight, from Vanguard's published holdings |
| International | Top 100 holdings of VXUS (Vanguard Total International Stock ETF), by portfolio weight, from Vanguard's published holdings. Each holding trades on its own local exchange (e.g. Taiwan, Japan, the UK); Price, Mkt Cap, Total Cash, and Total Debt are shown in that listing's native currency, labeled with its symbol (€, ¥, £, etc.), not converted to U.S. dollars. Scoring is unaffected by currency: all six scored metrics are growth rates and ratios. |
Index lists update within days of membership changes. Vanguard publishes fund holdings monthly, so the ETF-based lists can lag the funds' live portfolios by a few weeks; dual share classes are collapsed to one listing per company. Foreign analyst coverage is occasionally thinner than U.S. coverage, so a small number of International names may show a lower Factors count; a missing metric still scores a hard zero, same as any other stock universe. Scores are always relative to the active universe only.
Good to know
Because grades are relative, a stock's score can shift when other companies' numbers change, even if its own do not, and by design some of every list always lands in the bottom tiers: an F here means the bottom of this particular list, not a broken company. Scores are computed across whichever stocks are currently loaded (normally the full Nasdaq 100 from the daily feed). Because the universes overlap, the same stock can earn a different score in different universes: a dividend payer that looks slow next to the Nasdaq 100 can rank near the top of the Dividend 100, because its peers changed, not its numbers. Forward figures track Seeking Alpha; EPS Growth FWD is GAAP-basis (the * note). The screener grades fundamentals only: technical signals like RSI and the 52-week range are not part of any stock's score, because in this methodology they are used to time index and ETF purchases, not to judge individual companies. See the Metrics glossary and the Indices methodology.
The ETFs list is scored on an entirely different basis than the stock universes, and on purpose. This methodology's own rule is that individual stocks are judged on fundamentals while index and ETF purchases are timed with technical signals, so this universe grades exactly what the stock lists leave out: Technicals 50 · Performance 50, adding up to a Score out of 100. A high score means a fund with a strong long-term record that is currently sitting low relative to its own recent prices: the setup this methodology treats as the better moment to add to an index position. Yield and Expense Ratio are shown for context but no longer scored (changed 2026-07-04): the freed weight went to the 5-year and 10-year return horizons, since a longer track record is stronger evidence that a fund's outperformance is structural rather than luck — see the Indices methodology's Structural Quality Metrics section.
The six scored metrics
| Pillar | Metric | Weight | Better means |
| Technicals | RSI (14-day) | 20 | lower (an oversold fund is the better entry) |
| Technicals | 52-Week Range position | 20 | lower (near the 52-week low beats near the high) |
| Technicals | Price vs 200-Day Moving Average | 10 | higher (holding above its long-term trend) |
| Performance | 1 Year Total Return | 10 | higher |
| Performance | 5 Year Total Return | 20 | higher |
| Performance | 10 Year Total Return | 20 | higher |
Total returns include reinvested distributions. RSI, the range position, and the moving averages are computed from daily price history. YTD Performance, Yield, Expense Ratio, Yield−ER, and price vs the 20-day and 100-day moving averages are shown and colored for context but carry no points, like the P/E FWD column in the stock universes; AUM is display-only.
How a rank becomes points
With only 10 funds, the stock universes' percentile curve would be far too coarse, so this list uses straight rank points: on each metric the best fund earns the full weight, the worst earns 0, and the funds between are spaced evenly (ties share the average). A missing value (β) scores zero and renders dark red; the score is always out of the full 100. Cell colors follow the same ranks: green is the top of the pack on that metric (15 of 20 rank points or better), red is the bottom (5 or less), amber is in between.
Tiers on a 10-fund list
The same rank bands as the stock lists apply: S top 10% · A next 10% · B 20–50% · C 50–75% · F bottom 25%, ties round up, and a perfect 100 earns S+. On 10 funds that is roughly 1 S, 1 A, 3 B, 3 C, and 2 F at any moment. An F here means the bottom of this list right now: usually a strong fund that has already run up (a high RSI, near the top of its range), not a broken product. Because half the score is timing, tiers in this universe move with the market: a broad selloff can lift a fund up the list without anything changing inside it. That is by design; the score doubles as a deployment-timing dial.
Where the list comes from
A fixed, owner-curated list of 10 funds: QQQ, SPY, DIA, IWM, VTI, VXUS, VUG, VIG, VTV, and SPMO. It is not synced to any index; changes to it are deliberate edits. The data refreshes each trading day from Yahoo Finance. See the Indices methodology for the doctrine behind the technical signals, including the RSI and 52-week-range frameworks these scores apply.