ValueMap

Explore
Header image

Stock Screener

Rafael Gomes·

The ValueMap screener narrows the universe of listed stocks down to the ones that meet the criteria you set, and then ranks whatever survives by the value metrics you care about. It is free, it lives at valuemap.io/screener, and it needs no login. It covers the roughly 4,500 US-listed companies out of the box (more once you add other exchanges), draws on over 100 value metrics, and refreshes daily.

screener-hero

Most screeners only filter: you get a flat list of everything that passed. ValueMap’s also ranks, so you get an ordered shortlist with the strongest candidates on top. The rest of this page walks through each control.

Screen or Rank

The screener has two modes, toggled at the top right. They answer two different questions.

screener-mode-toggle

Screen answers what am I allowed to look at? You set hard constraints and the universe collapses to the rows that pass every one. A filter is binary: a stock either clears the hurdle or it disappears from the list.

Rank answers among what’s left, which are best? You pick factors and the tool orders the survivors by a composite score. Ranking is continuous: nothing is excluded for being mediocre, it just sinks down the list.

The two modes stack. You filter first to define the pond, then rank inside it. Rank mode is the default, and it starts loaded with the Magic Formula (more on that below).

The control bar

Everything you configure lives in three rows above the table.

screener-filters
  1. Category filters narrow the universe by Exchange, Sector, Industry, or Country.
  2. Value filters constrain individual metrics (market cap, debt, yield, and so on). There are over 100 to choose from, most with sensible presets.
  3. Ranking factors (Rank mode only) decide which metrics the survivors are scored and ordered by.

Choose your universe

The first row holds four multi-select dropdowns: Exchanges, Sectors, Industries, and Countries. Open one, tick the values you want, and the table updates immediately. Each dropdown has a search box and a clear button, and you can select as many values as you like.

screener-universe

By default the screener is limited to the US exchanges (NYSE, NASDAQ, AMEX). That is deliberate: market caps are reported in each listing’s native currency, so a global market-cap sort would rank a Japanese bank at ¥41T above Apple purely because the number is larger. Remove the exchange filter when you mean to, and read cross-country size comparisons with care.

Add a value filter

Click + Add filter to open the metric picker. Start typing to search, or scroll the grouped list (Valuation, Dividends, Quality, Safety, Deep Value, Price, Efficiency, Per Share, Financials). Click a metric and it becomes a filter chip below the row. The i icon next to any metric opens its definition.

Add a Market Cap filter and the count drops in real time — 4,779 stocks down to 77.

Set the filter value

Click a chip to set its value. Every numeric filter offers two things: a set of one-click presets and a custom range with a minimum and a maximum. The range inputs accept magnitude suffixes, so you can type 10B for ten billion or 500M for five hundred million. Leave a bound empty for an open-ended filter (only a minimum, or only a maximum).

screener-filter-value

To remove a filter, click the × on its chip. The universe reopens to whatever the remaining filters allow.

Rank the survivors

Switch to Rank mode to score the filtered universe. Instead of a # column you now get a Rank and a Score, and the list is ordered by score rather than by whichever column you clicked.

Ranking is built from factors: the metrics you think express a good opportunity. The Presets row gives you three ready-made factor sets in one click, and you can add, remove, or reweight factors from there.

Each preset re-scores the whole universe and reorders the list.

Add and weight factors

Click + Add factor to add your own. Each active factor becomes a chip with three things:

  • A direction arrow. ▲ means higher is better (earnings yield, return on capital); ▼ means lower is better (PE, price-to-book). The tool orients each factor automatically so that a better company always scores higher.
  • A weight ( / value / +, from 1 to 10). A factor weighted 2 counts twice as much as one weighted 1 in the composite score.
  • A remove button (×).
screener-rankings

Require all factors (on by default) drops any company missing data for one of your factors, so nothing is ranked on incomplete information. Turn it off to keep partial rows, which then land at the bottom of the missing factor.

A handful of factors are marked with a padlock; a free account unlocks around 30 more.

screener-add-factor

How the score is calculated

Joel Greenblatt’s original Magic Formula made the key observation: you cannot simply add two metrics measured in different units. An earnings yield of 8% and a return on capital of 25% live on incompatible scales. His fix was to rank every company on each metric separately, then add the ranks.

The screener does the same thing with percentiles. For each factor it scores every company against the rest of the filtered universe,

percentilei=percent_rank(valuei)×100\text{percentile}_i = \text{percent\_rank}(\text{value}_i) \times 100

oriented so that 100 is always best. Then it blends the factors by the weights you set:

score=iwipercentileiiwi\text{score} = \frac{\sum_i w_i \cdot \text{percentile}_i}{\sum_i w_i}

The result is a 0–100 score where higher is better. Each stock also carries its rank: its true position among every company that passed the filters, not just the page you happen to be looking at.

Why percentiles instead of raw values?

  1. They are robust to outliers. A company showing a return on capital of 270x — almost certainly a denominator artifact — is simply “top of the pile,” worth no more than the honest 60% just below it. One lunatic number can’t hijack the ranking.
  2. They are scale-free. You can blend an earnings yield (a small fraction), a Piotroski score (an integer from 0 to 9), and net-debt-to-EBITDA (a leverage multiple) and the composite stays coherent, because everything was flattened onto the same ladder first.
  3. They are honest about missing data. A stock missing a factor lands at the bottom for that factor, never the top, so you can’t accidentally reward a company for having no number.

Read the results table

Every figure is trailing-twelve-month (TTM) and as-reported. The screener describes the company as it is, not as an analyst forecasts it will be, and the whole set refreshes daily. Reading a row left to right:

  • Rank / # — position in the ranked (or filtered) universe.
  • Symbol — links to the full stock page. Hover it for the company name, sector, and industry.
  • Score — the 0–100 composite, drawn as a bar so you can see the gap between the leaders and the pack. Hover the bar for the per-factor percentile breakdown behind the number.
  • Metric columns — the data points you chose to display. Negative values render in red.
screener-symbol-tooltip

Choose your columns

The Columns button opens a searchable, grouped list of every metric. Tick or untick to show or hide columns; your selection is remembered in your browser between visits. Any metric you filter or rank on is shown automatically, whether or not it is ticked. Reset restores the defaults.

screener-columns

You can also drag a metric column’s header sideways to reorder it.

Sort

In Screen mode, click any column header to sort by it. Click again to switch between descending, ascending, and back. The active column shows a small arrow. (In Rank mode the list is always ordered by score, so header-sorting is off.)

In Screen mode, click a header to sort; click again to flip the direction.

The table shows 50 stocks per page, with Previous / Next controls and the total count at the bottom. To jump to a specific company within your results, type part of its ticker or name into the search box next to the mode toggle.

The screener has no separate “save” button because it doesn’t need one: your entire configuration — filters, factors, weights, sort, and page — lives in the page URL. Copy the address bar to bookmark a screen or send it to someone else, and it reopens exactly as you left it.

The starter recipes

The three presets each encode a different bet about what makes a business worth owning. The screenshots below were all run on the same pond — US exchanges with a Market Cap ≥ $2B filter added — which keeps the microcap swamp, where the data is thinnest, out of the picture.

Magic Formula

Greenblatt’s original: earnings yield and return on capital, equal weight. Cheap and good — the bet that the market underprices quality compounders.

screener-magic-formula

One thing the result quietly teaches: insurers cluster near the top (AXIS, Hamilton, Allstate, Mercury). That is not a glitch — insurance businesses genuinely screen cheap on earnings yield — but it is a sector tilt worth noticing rather than accepting blindly.

Quality + Value

Cheapness measured by free-cash-flow yield rather than earnings, paired again with return on capital. A more defensive, cash-based tilt: it rewards businesses that actually convert profit into cash, which is harder to fake than accounting earnings.

screener-quality-value

Deep Value

Pure Graham: low PE, low price-to-sales, and low price-to-book, all at once — statistically cheap on every line.

screener-deep-value

Watch for a trap here: several top-ranked names may have a negative PE, and a “lowest PE” ranking reads a loss as the cheapest thing on the board. Deep Value, more than any other recipe, rewards adding a positive-earnings filter and reading every name before you get interested.

What the output is (and isn’t)

The output is a shortlist, not a verdict. A score of 98 does not mean “buy.” It means “of the companies that passed your filters, this one ranks near the top on the factors you chose.” Both halves of that sentence carry weight. If your filters were sloppy, the top of the list is the top of a bad universe. If your factors don’t capture what actually makes a business valuable, a high score is measuring the wrong thing precisely.

So the discipline is:

  • Put your margin of safety in the filters. The non-negotiables that would disqualify a company belong here.
  • Put your thesis in the factors. The ranking is where you express what you think creates returns.
  • Then do the work. The screener’s job ends when the list is twenty names long. It cannot read a 10-K, judge a management team, or notice that the cheap retailer is cheap because Amazon is eating it. Every name that survives to your shortlist is a hypothesis — and the point of narrowing the universe was to have the time to test each one properly.