FirmAdapt
FirmAdapt
LIVE DEMO
Back to Blog
piotroski-f-scorestock-screeningvalue-investinginvestment-analysis

How to Build a Piotroski F-Score Screening Strategy

By Basel IsmailJuly 10, 2026
How to Build a Piotroski F-Score Screening Strategy

In 2000, an accounting professor named Joseph Piotroski published a paper showing that a simple nine-point scoring system, applied to cheap stocks, did a surprisingly good job of separating the winners from the losers. Stocks with high scores beat stocks with low scores by a wide margin, and the whole thing ran on nothing more than nine yes-or-no questions about the numbers in a company's financial statements. No management meetings, no discounted cash flow model, no gut feel required.

More than two decades later, quant funds still use the F-Score as one input among many, and researchers keep re-testing it across different markets and eras. Yet most individual investors have never heard of it, and plenty who have heard of it never bothered to build a real screen around it. If you analyze companies for a living or invest seriously on the side, it is worth the afternoon. Here is how I'd set it up.

The nine signals

The F-Score looks at three areas of financial health: profitability, leverage and liquidity, and operating efficiency. Each signal is worth either 0 or 1, so the total lands somewhere between 0 and 9. You compare the most recent fiscal year against the prior year, which means you need two years of statements to score anything.

Four of the signals cover profitability. One, net income is positive. Two, operating cash flow is positive. Three, return on assets improved versus last year, which suggests the business is getting more out of what it owns. Four, operating cash flow is greater than net income. That last one is the quiet workhorse of the whole score, because when cash runs ahead of reported earnings, you are usually looking at cleaner profits and less room for accounting games.

Three signals cover leverage and liquidity. Five, long-term debt fell as a share of total assets, so the balance sheet is getting stronger rather than more fragile. Six, the current ratio improved, meaning short-term liquidity got better. Seven, the company did not issue new shares during the year. A firm diluting its owners to raise cash is telling you something, so no new equity earns the point.

The last two cover operating efficiency. Eight, gross margin improved, which hints at pricing power or better cost control. Nine, asset turnover improved, meaning the company squeezed more revenue out of the same asset base. Add up the nine, and a company scoring 8 or 9 is one where nearly everything is moving in the right direction at once.

Why it works

The useful thing about the F-Score is that it finds improving businesses, not just cheap ones. A plain value screen hands you the stocks with the lowest price-to-book ratios, and a lot of those are cheap for a good reason. The business is shrinking, margins are compressing, the balance sheet is eroding. Those are the value traps that quietly wreck a value portfolio.

The F-Score screens most of them out. By demanding profits that are positive and improving, debt that is coming down, and efficiency that is rising, it points you toward companies whose numbers are turning up before the market has fully clued in. A business getting better while the stock still trades on the old, worse story is more or less the ideal setup for value investing.

The evidence has held up reasonably well. Piotroski's original study found that within the cheapest stocks, buying the high scorers and shorting the low scorers produced a large return spread, and later work across international markets has repeated the basic effect, though the size of the edge varies. It shows up most strongly in small-cap and micro-cap names, where fewer analysts are watching and information gets priced in slowly.

Building the screen, step by step

You need financial statement data for at least two consecutive years. Most free data sources will give you the raw inputs: net income, operating cash flow, total assets, long-term debt, current assets, current liabilities, shares outstanding, gross profit, and revenue. EDGAR has all of it in the 10-K if you want to go to the source, and the cash flow statement plus the balance sheet cover almost everything.

Start with the universe you actually want to fish in. Piotroski built the strategy for the cheapest stocks, so rank your universe by price-to-book and take the bottom quintile before you apply anything else. Skipping this step is the single most common way people get worse results than the research suggests.

For each company, compute all nine binary signals from the current and prior year, sum them, and sort by score, highest first. The 8s and 9s are your shortlist. Then treat the score as a filter, not a verdict. Its job is to shrink a huge universe down to a readable list of candidates so you can do real work on the survivors. A company that went from awful to merely bad can rack up points on year-over-year improvement while still being a weak business, so look at whether the improvement is durable or just a one-year bounce.

Common mistakes

The first mistake is running the score on the wrong universe. It was built for cheap stocks, specifically the low end of the book-to-market range. Point it at glamour growth names or the broad market and the edge fades, because the mechanism only fires when the starting valuations are already beaten down.

The second is stale data. Statements come out on a quarterly cadence, and many data feeds lag behind. Screen on numbers that are a few months old and you may be reacting to signals the market has already partly absorbed. Use the freshest data you can get and keep the reporting calendar in mind.

The third is ignoring sector concentration. In any given year the screen can spit out a cluster of names from one or two corners of the market. If every high scorer you get is a regional bank or a commodity producer, you own a sector bet, not a diversified book. Cap your exposure per sector so one macro move doesn't sink the whole thing.

The fourth is trading it too often. The score refreshes annually, or quarterly if you adapt it, and it was never meant to be a short-term trading trigger. The intended rhythm is to build the portfolio, hold it for about a year, then rebalance on updated scores. Churn positions on minor score wiggles and transaction costs and taxes will eat whatever edge you had.

Enhancements worth trying

A few tweaks have held up in later research. The most reliable is pairing the F-Score with price momentum. Names that score high and have shown positive price momentum over the prior six to twelve months have tended to do better than the score alone. The logic is simple enough: if the fundamentals are improving and the market has started to notice, the re-rating often has further to run.

Another is weighting the signals instead of treating all nine as equal. In practice the cash flow signals, positive operating cash flow and cash flow running ahead of net income, tend to carry more predictive weight than the rest, so leaning on those can sharpen the score.

The third is going international. The effect has often looked stronger outside the US, especially in markets where information moves more slowly, so screening globally widens your opportunity set and cuts home-country bias. The tradeoff is messier data and thinner liquidity, so size positions accordingly.

Putting the portfolio together

Once you have your shortlist, how you build the book matters. Equal weighting is the simplest approach and it holds up fine. It keeps any one position from running the whole show and lets you capture the average outperformance across the group rather than betting it all on your favorite name.

On breadth, a portfolio of roughly 20 to 30 high scorers gives you real diversification while staying concentrated enough to actually express the strategy. Drop much below 15 and single-stock blowups start to dominate your results. Push past 50 and you are basically buying the index with extra steps. Rebalance once a year after filing season, which for calendar-year companies runs roughly February through April, so you are working off the newest annual data. Some people rebalance twice a year to catch mid-year changes, which is fine as long as the extra trading costs are worth the extra information.

What to actually expect

Be honest with yourself about returns. The return spreads in the academic papers assume clean, frictionless implementation, no transaction costs, no market impact, no data lag. In the real world you capture a portion of that, not the headline number, and how large a portion depends on your costs and discipline. Treat the studies as evidence the effect is real, not as a promised rate of return.

Expect the strategy to lag in frothy bull markets when speculative growth stocks lead, since improving-fundamentals signals are not what drives those moves. It tends to do its best coming out of bear markets, when the market is repricing damaged-but-recovering businesses and the improvement signal has the most to work with. Plan for multi-year stretches of both outperformance and underperformance relative to the broad indices, because you will get them.

Automating it

Because every signal is binary and comes from public data, the F-Score automates cleanly. A little Python with pandas and a data source like yfinance can pull statements and score thousands of tickers in minutes, and any screening platform that supports custom formulas can hold the F-Score as a saved screen that reruns on a schedule. If you would rather not build your own, several platforms now ship a pre-built Piotroski screen. The one thing to check is that whoever built it computes the signals correctly and refreshes them promptly after new filings land, because a screen running on stale or slightly wrong inputs is worse than no screen at all.

The F-Score is not a magic formula, and it will have bad years. What it gives you is a disciplined, evidence-backed way to tell improving businesses apart from deteriorating ones inside the value universe, run mechanically enough that you can stick with it. That is about as much as any screen can honestly offer, and it is more than most.

Ready to uncover operational inefficiencies and learn how to fix them with AI?
Try FirmAdapt free with 3 analysis credits. No credit card required.
Get Started Free
How to Build a Piotroski F-Score Screening Strategy | FirmAdapt