Piotroski F-Score Explained: A Practical Guide for Quality Investors
Published May 8, 2026 · 8 min read
The Piotroski F-Score, twenty-five years on
The Piotroski F-Score is a nine-point checklist for separating financially improving companies from deteriorating ones. It was built for value investors picking through cheap-looking stocks, where the central question is whether a low multiple reflects a real business or a slow bleed. We treat the F-Score as a quality filter, not a buy signal: a high score tells us the fundamentals are moving in the right direction, nothing more.
flowchart TD
A[Start with a cheap universe<br/>low P/B or EV/EBIT] --> B{Compute F-Score}
B --> C{Score >= 7?}
C -->|Yes| D[Qualitative work<br/>10-Q, one-offs, sector fit]
C -->|No| E[Reject or watchlist]
D --> F[Position-size as one input<br/>among several]
style A fill:#1e293b,stroke:#3b82f6,color:#fff
style B fill:#0f172a,stroke:#64748b,color:#fff
style C fill:#0f172a,stroke:#64748b,color:#fff
style D fill:#1e293b,stroke:#10b981,color:#fff
style E fill:#1e293b,stroke:#ef4444,color:#fff
style F fill:#1e293b,stroke:#3b82f6,color:#fff
What the Piotroski F-Score actually is
Joseph Piotroski, then at the University of Chicago, published the original paper in 2000. He studied U.S. stocks in the highest book-to-market quintile — the cheapest, ugliest names — and asked whether simple accounting signals could distinguish the ones likely to recover from the ones likely to keep deteriorating. His answer was a score from 0 to 9, with each point reflecting one fundamental test passed.
Two things are worth flagging up front. First, this was designed for value baskets, not for screening the entire market. Applying it to a high-multiple growth name is mostly a waste of time. Second, it was an academic finding from a specific sample period. Useful, replicable, but not a guarantee.
The nine tests, grouped
Each test is binary. Pass and you get a point; fail and you get a zero. The nine tests fall into three buckets — profitability (4 points), leverage and liquidity (3 points), and operating efficiency (2 points).
| # | Test | Bucket | Pass when |
|---|---|---|---|
| 1 | Net income | Profitability | Positive in current year |
| 2 | Return on assets | Profitability | Positive in current year |
| 3 | Operating cash flow | Profitability | Positive in current year |
| 4 | Cash flow vs net income | Profitability | OCF > Net income (earnings quality) |
| 5 | Long-term debt ratio | Leverage | Lower than prior year |
| 6 | Current ratio | Leverage | Higher than prior year |
| 7 | Shares outstanding | Leverage | No new issuance during year |
| 8 | Gross margin | Efficiency | Higher than prior year |
| 9 | Asset turnover | Efficiency | Higher than prior year |
Profitability (4 points)
- Positive net income in the current year.
- Positive return on assets (ROA) in the current year.
- Positive operating cash flow in the current year.
- Operating cash flow greater than net income — a check on earnings quality, since cash should at least keep up with reported profit.
Leverage, liquidity, and source of funds (3 points)
- Lower long-term debt ratio versus the prior year. Less reliance on debt is the signal.
- Higher current ratio versus the prior year. Short-term liquidity is improving.
- No new shares issued during the year. Dilution counts against the company.
Operating efficiency (2 points)
- Higher gross margin than the prior year.
- Higher asset turnover than the prior year, meaning revenue per dollar of assets is rising.
Add the points and you get a number from 0 to 9.
How to read the score
The convention is that 8 or 9 is strong, 0 to 2 is weak, and the middle is mostly noise. We agree with that framing, with one caveat: the score is a relative ranking tool inside a cheap universe, not an absolute verdict on a business.
A score of 8 on a stock trading at 25 times earnings is interesting but not actionable on its own — you are paying for quality the market already sees. A score of 8 on a stock trading at 0.7 times book is the original Piotroski use case: a beaten-down name where the fundamentals are quietly improving while the price has not yet caught up.
A common follow-up question: what counts as a "good" F-Score? In Piotroski's original work, the spread between the top tier (8-9) and the bottom tier (0-1) within high book-to-market stocks was meaningful. We would not get hung up on the exact threshold. A score of 7 or higher is a reasonable cutoff for further work; below 4 is a reason to ask harder questions.
Does it still work?
Plainspoken answer: the evidence is mixed, and we would be careful about extrapolating the original results.
A few things have happened since 2000. Value as a factor went through a long, painful drawdown through much of the 2010s. Quantitative strategies got crowded as more capital chased the same signals. And the structure of the market shifted toward intangibles-heavy businesses that book value does a poor job of capturing in the first place.
Out-of-sample studies have generally found the F-Score still adds some value, but the effect is most visible in small caps and within the cheapest deciles by book-to-market. In large caps and broad universes, the edge is thinner. We would not bet a portfolio on the factor working as well in the next decade as it did in Piotroski's sample. We would treat it as one input among several.
How it compares to Altman Z and Beneish M
Three forensic-accounting scores get cited together, and they answer different questions.
| Score | Question it answers | Horizon | Use case |
|---|---|---|---|
| Piotroski F | Are fundamentals improving? | Trailing year | Cheap universes (value baskets) |
| Altman Z | Is bankruptcy likely? | ~2 years out | Distress detection |
| Beneish M | Is management cooking the books? | Trailing year | Fraud / aggressive accounting tripwire |
The Altman Z-Score estimates the probability of bankruptcy within roughly two years, using working capital, retained earnings, EBIT, market value of equity, and sales relative to total assets. It is a distress signal. A low Z is a reason to dig in; a high Z does not tell you the business is good, only that it is unlikely to fail soon.
The Beneish M-Score flags the likelihood that management is manipulating earnings, using eight ratios that compare receivables, margins, asset quality, and accruals year over year. It is a fraud screen. It catches aggressive accounting better than it catches outright fraud, but it is useful as a tripwire.
The F-Score sits in a different lane. It does not predict bankruptcy or fraud. It asks whether the fundamentals of an already-cheap business are improving. The three are complementary: Z for distress, M for accounting integrity, F for fundamental momentum.
Using the F-Score in practice
A workable workflow looks like this.
Start with a cheap universe. Use a low price-to-book or low EV/EBIT screen on the Tessera screener to define a value pool. The F-Score is designed to operate inside this kind of universe; running it across the whole market dilutes the signal.
Then filter for an F-Score of 7 or higher. This narrows the list to companies that are both statistically cheap and showing improving fundamentals across profitability, leverage, and efficiency.
Finally, do qualitative work on what is left. Read the latest 10-Q. Check whether the cash flow figure is being inflated by a one-time working-capital release. Look at the industry. A short list from this kind of two-stage filter is usually short enough to actually read, which is the point.
We would caution against simply buying the top of the list. The F-Score will not tell you that a retailer's improving margins came from closing stores it will need to reopen, or that a commodity producer's gross margin jumped because of a price spike that has already reversed.
Common pitfalls
A few things trip up first-time users of the score.
Stale financials. The F-Score uses annual data. A company can pass all nine tests on last year's 10-K and be in trouble by the time you read it. Always check the most recent quarterly filing.
One-off items. A large asset sale, a tax benefit, or a working-capital swing can flatter cash flow and net income for a single year, pushing the score up artificially. The "cash flow greater than net income" test is supposed to catch earnings manipulation, but it can also be gamed.
Buybacks and the no-issuance test. A company can avoid issuing net new shares while still issuing significant stock-based compensation, simply by buying back enough to offset it. The test passes, but dilution is real. Look at share count over multiple years, not just the most recent change.
Sector quirks. The F-Score does not translate cleanly to banks, insurers, or REITs. Their balance sheets are structured differently, current ratio and asset turnover are not meaningful in the same way, and "long-term debt" for a bank is part of the operating model. We would not apply the score to Financials or Real Estate without significant adjustments.
Survivorship bias in backtests. Many published F-Score backtests use databases that quietly drop companies that went bankrupt or got delisted, which flatters the historical results. The real-world spread between high and low F-Score stocks is probably narrower than the cleanest academic studies suggest.
What this means for your portfolio
The F-Score is most useful as a triage tool. If you are working through a list of cheap stocks — your own ideas, a screen, or a value-fund holdings list — the score helps you weed out the names where the fundamentals are quietly getting worse, which is the trap value investors fall into most often. It is not a standalone strategy and we would not treat it as one.
A concrete suggestion: pull up any deep-value name already in your portfolio and compute its F-Score. If it is 7 or higher, the thesis at least has fundamental support. If it is 3 or lower, you owe yourself a harder look at why you still own it.
This is research, not advice. Do your own due diligence.