Research tooling — not investment advice Nothing on this site is a recommendation to buy or sell anything.
stocks.bettercall.help Methodology

What this board is

A nightly ranking of US stocks that are tradable on Robinhood, ordered by risk-adjusted expected return. The growth-at-a-reasonable-price composite that used to set the order is still computed and still published — it is now a column, not the ranking.

Every input is public and keyless: Robinhood’s unauthenticated endpoints for tradability and prices, SEC EDGAR’s XBRL frames for financial statements, and FRED’s open CSV series for the macro overlay. Nothing is bought, licensed, or estimated by a model.

The composite is five pillars. Inside each pillar, every metric is converted to a rank across the whole screened universe, turned into a z-score, and then had its sector median subtracted — so a company is measured against its peers, not against whichever sector happens to be cheap this quarter. Momentum is the deliberate exception: it is never sector-neutralised, because industry momentum is part of the signal.

Missing data is never treated as zero. If a metric is absent, it is dropped and the remaining weights inside that pillar are renormalised. The three penalty metrics — accruals, asset growth and share issuance — are the exception: they are imputed at neutral and keep their weight, so a company cannot dodge a dilution penalty simply by not reporting. Companies below the coverage floor are excluded outright rather than scored on thin evidence.

The market temperature gauge on the board does exactly one thing: it moves how much weight valuation carries, between 10% and 30% of the composite. When the broad market is historically expensive the screen becomes more price-sensitive; when it is cheap, growth and momentum get more say. It never scores an individual company.

The expected-return model, in plain language

Five pieces of arithmetic over trailing public data, added up, then pulled most of the way back toward what an index would give you. It is model output, not a forecast, and it contains no opinion about any company’s future.

The construction is a building-blocks decomposition rather than a fitted model, for one reason: every term is separately inspectable and separately arguable. If you disagree with the number, you can find the term you disagree with, and the board shows you all five in the expanded row of every company. Nothing is a black box, and nothing is regressed.

E[r] = cash yield + faded growth + valuation reversion − dilution − market drag

  • Cash yield — what the business currently throws off per dollar of its price: the tax-normalised earnings yield and free cash flow to equity, averaged when both exist, because they disagree for real reasons and the midpoint is steadier than either. Banks and insurers are earnings-only: their operating cash flow includes premium float and deposit flows, money that belongs to policyholders and depositors rather than shareholders. Capped at ±15%, since a higher figure is usually a non-repeating year rather than a P/E under seven.
  • Faded growth — trailing three-year revenue growth, halved, capped at 25%, then decayed toward a 4% terminal rate that stands in for nominal GDP. The halving is not conservatism for its own sake: realised growth persistence beyond about two years is close to zero in the data, so carrying a 60% trailing rate into a five-year number would be indefensible. The longer the horizon, the more weight the terminal rate takes.
  • Valuation reversion — half the gap between the company’s own value yield and its sector’s median, assumed to close over the horizon and amortised across it. Multiples do revert, slowly and incompletely, which is why it is half the gap and not all of it. The annualised contribution is clamped at ±8%, because a company that looks ten times cheap is usually a broken business or a broken data point, not a 60%-a-year tailwind. A sector with fewer than ten names gets no reversion target at all rather than reverting toward a two-company median.
  • Dilution — share-count growth is a direct per-share drag and buybacks are the same thing in reverse. Halved and clamped at ±3%, because one year’s buyback is a weak predictor of the next five.
  • Market drag — a uniform haircut derived from the level of CAPE against its long-run median of 16.2, assuming a quarter of the gap closes over ten years. It is identical for every company, so it cannot change the ranking; it exists so that the published level is not misleading while CAPE sits near 41.

Then it is shrunk, on purpose

Each term above is individually bounded, but they stack. A cheap insurer can legitimately collect the cash-yield cap, a full growth term, the re-rating cap and a buyback credit all at once and arrive somewhere north of 30% a year. No liquid large-cap earns that for five years running. The statistical reading is that a single-stock expected return estimated from trailing data is a very noisy measurement of a quantity with low genuine cross-sectional dispersion — the classic case for shrinking an estimate toward the mean (James–Stein; Blume did the same for betas in 1971, Vasicek formalised it in 1973).

So the published number keeps 55% of the company’s own estimate and takes 45% from a market prior, where the prior is the risk-free rate plus a deliberately modest 3.5% equity risk premium, plus the same market drag. Because the identical shrinkage is applied to every name, it does not change the ranking at all — it changes only the levels. Two companies in the same order before shrinkage are in the same order after it. What it changes is how confident the number looks, and that is the point.

Why the ranking is a ratio, not a return — and why it is a Sortino

The board is ordered on (E[r] 5y − risk-free) ÷ downside deviation, then tilted by durability. Ranking on raw expected return would put the most violent names on top every single night, because the terms that produce a high estimate (a large cash yield, a big gap to the industry median) are exactly the terms that come with a wide dispersion of outcomes. Dividing asks a more useful question: how much expected compensation is there for each unit of the discomfort you have to hold to collect it.

Downside deviation rather than total volatility, because a Sharpe ratio punishes a company for rising sharply exactly as hard as for falling sharply. Only returns below the target enter the denominator here, so upside surprise is no longer treated as evidence of risk. That single change is most of what stopped the screen being structurally hostile to growth.

The durability tilt is ±25%, and it moves the order only. A name scoring 100 on durability has its ranking statistic multiplied by 1.25; one scoring 0 is multiplied by 0.75. A negative statistic is divided instead, because multiplying a negative number by 0.75 would move it up the board — a fragile company rewarded for being fragile. Dividing keeps the tilt monotone across the whole range and continuous at zero, so nothing can be moved by a discontinuity rather than by its score. The E[r], σ, band and Sortino printed in every row are the measured figures; the tilt is never folded into them.

σ is annualised realised volatility computed from 251 daily closes — the standard deviation of daily log returns, scaled by √252. It is measured, not modelled, and it is entirely backward-looking: a company that has been quiet for a year and is about to stop being quiet will look safer here than it is. One trailing year is a short window and it is the least stable input on the page.

The one-sigma band, and why every number carries one

A point estimate published on its own is the single most misleading way to present this kind of arithmetic. Every expected return on the board therefore ships with a one-standard-deviation band around it, on the annualised return. The band narrows as the horizon lengthens — averaging over more years disperses the annualised figure by √h — and that narrowing means only that arithmetic, not that the model knows more about year five than about year one. Even the narrowest band on the board spans outcomes a reasonable person would describe in completely different words.

The sector-diversified basket

The panel above the board walks the ranked list from the top and takes the best-placed name in each sector until it has twelve, one per sector, then weights them by inverse volatility so each contributes a comparable share of standalone risk. Equal capital weighting would hand a 70%-volatility name several times the risk budget of a 20%-volatility one.

Its volatility is computed as √(wTΣw) from the actual covariance of the holdings’ daily returns — not as a weighted average of their individual volatilities. Those two numbers are very different, and the gap between them is precisely the diversification benefit: the weighted average is what you would get if every holding moved in lockstep. Publishing the average would silently overstate the risk and make the exercise pointless. The covariance is estimated from a single trailing year and names without enough overlapping history are dropped rather than padded, since padding with zeros would fabricate a period of perfect calm and understate correlation.

The basket is a mechanical illustration of the model under a diversification constraint. It is not a recommendation, it is not a portfolio anyone is being told to hold, and no view about any company in it is expressed by its presence there. Nothing selected these twelve companies except their position on a ranked list and the sector constraint.

What is not in it

There is exactly one forward-looking input, and it is thinner than it sounds. Robinhood's earnings endpoint publishes consensus EPS for the next one or two quarters without a key, and the PEG metric uses it — so the flat claim this page used to make, that no forward estimate appears anywhere, was wrong for most of the board. No guidance, no revision data and no price target is used; everything else is a trailing figure from a filing or a price series.

The thinness is the part worth knowing. Across the universe 1,542 companies carry a single estimated quarter against 411 with two, and a lone quarter is a fragile thing to rank on — some of those rates are large enough to move a position by themselves. So consensus growth is credibility-weighted toward the company's own trailing three-year earnings CAGR: w = n ÷ (n + 1), where n is the number of estimated quarters. One quarter carries half the weight, two carry two thirds. A genuine acceleration still moves the number; it simply has to be larger to move it as far. Where there is no trailing record to temper it, a single quarter is refused outright and the metric is left missing rather than guessed. Rows using consensus are marked peg_forward, and those resting on one quarter also carry peg_thin_consensus.

Every other input is a trailing figure from a filing or a price series. There is also no backtest, and there will not be one: with keyless data there is no point-in-time universe and XBRL figures are restated after the fact, so any historical result would mostly measure hindsight. The parameters were chosen from published research and stated reasoning rather than fitted to outcomes.

What exists instead is a forward record. One basket was frozen on the day it was published, is held without rebalancing, and is measured every night against the S&P 500 total return — dividends reinvested on both sides, so the comparison is like for like. It cannot be curve-fitted, because it was fixed before the outcome existed; its weakness is the opposite one, that it is short. Below twelve months this site publishes cumulative totals only and withholds every annualised and risk-adjusted figure, because on a record that length they are arithmetically defined and meaningless — a good first fortnight annualises into the thousands of percent. Until that record is long, read the board as an ordering device under stated assumptions, not as a prediction.

Known limitations

Every way this ranking can be wrong, stated up front. These are not caveats added after the fact — they are properties of the data the board is built from.

01

Not investment advice

This is research tooling. Nothing here is a recommendation to buy or sell anything, and the expected returns are model output under stated assumptions — not forecasts.

02

Forward estimates cover the next quarter, not the next five years

This page used to say no free forward consensus existed. That was wrong, and it has been fixed. Robinhood publishes consensus EPS for the next one or two quarters, and PEG now uses that forward number wherever it exists — which is what the ratio was designed for — falling back to a trailing three-year CAGR only when it does not. Each stock shows which basis was used.

The limitation that remains is the horizon. Consensus reaches one or two quarters out; the five-year expected return does not. So forward growth is blended with realised three-year growth rather than replacing it, then damped and decayed toward a long-run terminal rate. Coverage is complete among large caps and roughly 85–95% for mid and small; companies without analyst coverage — several insurers among them — carry no forward number at all rather than a guessed one.

Analysts are also systematically optimistic. That is why consensus is blended rather than trusted outright, and why analyst price targets are kept out of the five-year ranking entirely — a price target is a twelve-month opinion, so it informs only the one-year expected return, demeaned and shrunk before it is used.

03

The AI-displacement adjustment is a judgment, not a measurement

Everything else on this page is computed from filings and prices. This layer is different: it encodes our view of which business models AI substitutes — that a company selling human hours of driving, coding, claims processing or copywriting faces a different future than one selling electricity, ore or regulated risk capital. All 128 industries in the universe were scored by hand from 0 to 1, and each score is published with a one-sentence mechanism naming what precisely gets substituted.

That view may be wrong — industry by industry, or wholesale. The number, the sentence and the formulas it flows through are all published so you can disagree with a specific number rather than with a black box. If you think ride-hailing at 0.80 is too high, you know exactly what to change and exactly how much of the ranking hangs on it: at most 3.5 points of five-year annualised expected return, a wider downside band, and a stiffer hurdle in the ordering.

Why it only points down. Realised volatility prices fluctuation; it cannot price obsolescence, because obsolescence has not happened yet. So this adjustment widens only the downside of the published range, trims only the terminal growth a company is assumed to compound at, and raises only the return it must offer to rank. It never adds upside. Company-level evidence — capital-lightness, R&D investment, gross profitability — can shrink a score but can never raise it above its industry ceiling, because a company investing heavily in the technology is a likelier adopter than victim.

04

Filings arrive late, and get restated

A fresh quarter’s SEC frame is only about 15% populated until roughly 120 days after the quarter ends, and a company’s values appear only once it files. Some names are therefore scored on data up to about fifteen months old. Each stock discloses the basis it was scored on in its detail panel.

05

Fiscal years are snapped to calendar frames

Fiscal years are aligned to SEC calendar frames, so two companies both labelled “FY0” can have year-ends eleven months apart.

06

Momentum is price return only

Robinhood’s historical closes are adjusted for splits but not for dividends, so high-yield names look systematically worse on every momentum metric than they really were on a total-return basis.

07

Banks, insurers and REITs are scored on fewer metrics

Tobin’s Q, ROIC, enterprise-value yields, Altman Z and Rule of 40 are meaningless for financial companies, so they are nulled rather than fudged. Those names lean on fewer metrics, which is visible in their coverage figure. Most REITs are excluded further upstream by the instrument-type filter.

08

Multi-class issuers and IFRS filers

Berkshire-type multi-class issuers publish no per-share XBRL figures, so per-share-free formulations are used with a flagged Robinhood fallback. Foreign private issuers filing under IFRS have no US-GAAP frames at all and are generally excluded by the coverage gate.

09

Survivorship

The universe is today’s tradable list. Delisted names vanish retroactively. This is a snapshot, not a backtest, and no backtest claim is made anywhere on this site.

10

Sector labels are Robinhood’s, not GICS

Sectors follow a FactSet-style taxonomy, so sector neutralisation inherits its quirks — Apple, for instance, sits in “Electronic Technology”.

11

The macro overlay is approximate

The Buffett Indicator uses non-financial corporate equities from the Z.1 accounts over GDP, with a one-to-two quarter lag. The CAPE gauge is a firm-level aggregate over this site’s own universe, compared against a hand-refreshed Shiller quantile table. The high-yield leg uses absolute spread anchors rather than percentiles, because only three years of that series is available without a key.

12

CAPE and PEG are whole-company, not per-share

Both are computed on total firm earnings rather than per share. Heavy repurchasers therefore screen slightly cheaper and heavy diluters slightly richer than the per-share convention would show. The dilution itself is scored separately, under Capital Discipline.

13

Accrual timing can mix bases

For companies whose cash-flow statements were not individually patched, Sloan accruals use cash flow on an annual basis, so the calculation can mix trailing-twelve-month income with full-year cash flow. Each stock discloses which basis it used.

One-off gains are taken back out, and the correction is imperfect

Two accounting events reliably make a company look far cheaper than it is, and both were found sitting near the top of the very first run of this board.

A deferred-tax valuation-allowance release happens when a company that has accumulated years of losses finally turns profitable and recognises the whole accumulated tax asset at once. It is non-cash and it never repeats. One name arrived at rank 3 showing $367m of net income on $122m of pre-tax income, because its tax line was minus $245m — an effective rate of −201%, and an apparent P/E of 1.9. Where the effective tax rate falls outside 0–60%, earnings are recomputed from pre-tax income at the statutory rate and the stock is tagged tax normalized.

A debt restructuring books written-off debt as profit. One name arrived at rank 38 reporting $5.5bn of net income on $1.9bn of revenue, having just taken long-term debt from $7.3bn to zero; the same event left its enterprise value at 5% of its market capitalisation, which turned an ordinary cash flow into a 181% “free cash flow yield”. Enterprise value below 20% of market capitalisation is now treated as too small a denominator to divide by, and earnings far larger than revenue are discarded rather than scored.

Neither correction is complete. They catch the cases that distort a ranking most, not every non-recurring item, and no automated screen can substitute for reading the filing.

14

The expected returns are model output, and single-stock dispersion is enormous

Every E[r] on the board is arithmetic over trailing data under stated assumptions — not a forecast, and not tested against what happened next. Its value is relative ordering; the level of any individual figure is far less reliable than a number printed to one decimal place looks. A name with 40% annualised volatility carries a one-year one-sigma band of roughly ±40 percentage points, wide enough to contain outcomes of the opposite sign, which is why no expected return is published anywhere on this site without a route to its band. The model is set out in full above.

15

Volatility and correlation are measured from one trailing year

σ comes from 251 daily closes and the basket’s covariance from the same window. Both are backward-looking and both move: a quiet year makes a name look safer than it is, and correlations rise in exactly the conditions where a diversification benefit would be most useful. The basket’s headline volatility number is the least stable figure the site publishes.

Pillars, weights and named effects

Baseline pillar weights, and the intra-pillar weight of every scored metric. Valuation’s weight is the only one the macro overlay moves; the other four are rescaled around it so the weights always sum to one.

27 scored metrics. “Direction” is which way is better before ranking; “imputed” marks the three penalty metrics that keep their weight when missing.
Metric Named effect it comes from Weight Direction

Sources and as-of stamps

Every source carries its own timestamp into the published file and onto this page. A stamp that has stopped moving is how you catch a silently stale input.

Source What it supplies As of
Loading source stamps…

How a score is produced

  1. Screen. Robinhood’s own instrument flags decide what is tradable; then a $500M market-cap floor and a $5 price floor. Roughly 2,500 companies survive.
  2. Direction. Metrics where lower is better are sign-flipped, so from here on higher is always better.
  3. Rank to z. Each metric is percentile-ranked across the universe and converted through the inverse normal, clamped to ±3. Ranking is the outlier control — no separate winsorisation is applied or needed.
  4. Sector-neutralise. For sectors with at least 30 companies, the sector median is subtracted. Small sectors and “Unknown” are left alone, because a twelve-name median is noise. Momentum is never neutralised.
  5. Assemble pillars. Missing reward metrics are dropped and their weight redistributed; the three penalty metrics are imputed at neutral and keep their weight. A pillar is invalid if under a third of its real weight survives.
  6. Weight by regime. Valuation’s weight is multiplied by the macro multiplier; the rest are rescaled to keep the total at one.
  7. Score. The composite is percentile-ranked among all ranked companies and expressed 0–100. Ties break on coverage, then market cap, then ticker. The top 200 are published.