Guide

The Piotroski F-Score Explained: The 9 Criteria and How to Use It

7 min read·

The Piotroski F-Score grades a company's financial health from 0 to 9 across nine accounting signals. Here's each criterion, the formula behind it, and how to use the score as a screening filter rather than a buy signal.

What the Piotroski F-Score actually measures

The F-Score is a 0-9 grade of a company's fundamental health, introduced by Stanford accounting professor Joseph Piotroski in his 2000 paper "Value Investing: The Use of Historical Financial Statement Information to Separate Winners from Losers." It combines nine binary signals, each worth one point, drawn from the income statement, balance sheet, and cash flow statement. Crucially, it compares the current period against the prior period, so it rewards businesses that are improving, not just those that are already large or cheap. Piotroski found that within a universe of high book-to-market (value) stocks, buying the strongest scores and avoiding the weakest meaningfully improved returns. It is purely accounting-based: it ignores price and technicals entirely.

The 0-9 scale and how to read it

Each of the nine signals scores 1 when it passes and 0 when it fails, so the total runs from 0 (every signal failing) to 9 (every signal passing). A practical reading: 0-2 signals weak, deteriorating fundamentals and a possible value trap; 3-6 is average and needs more research; 7-9 indicates strong and improving financials. One caveat that matters in real data: a 0 from missing financial statements is not the same as a genuine 0. StoqPulse treats a name with insufficient statement data as F-Score UNKNOWN rather than a confirmed fail, so data-poor stocks aren't silently dropped by a minimum-score filter.

Group 1 - Profitability (4 signals)

The first four signals test whether the company makes real money and is getting better at it. (1) Positive return on assets: ROA = Net Income / Total Assets > 0. (2) Positive operating cash flow: CFO > 0. (3) Improving ROA: this year's ROA greater than last year's. (4) Earnings quality (accruals): operating cash flow greater than net income, i.e. CFO > Net Income, which signals profits backed by cash rather than accounting accruals. Example: a firm with net income of $200M, operating cash flow of $260M, and total assets of $2,000M passes signals 1, 2, and 4 outright (ROA = 10%, CFO positive, CFO > net income), then earns signal 3 if 10% beats last year's ROA.

Group 2 - Leverage, liquidity and funding (3 signals)

The next three signals check the balance sheet and whether the company is funding itself responsibly. (5) Lower leverage: long-term debt to total assets fell versus the prior year (Long-Term Debt / Total Assets decreasing). (6) Higher current ratio: Current Assets / Current Liabilities improved year over year, showing better short-term liquidity. (7) No share dilution: shares outstanding did not increase versus last year. A rising share count is treated as a red flag because it dilutes existing owners and often signals a company raising equity to plug holes. Together these reward firms that are deleveraging, more liquid, and not issuing new stock to stay afloat.

Group 3 - Operating efficiency (2 signals)

The final two signals measure whether the business is becoming more efficient at turning assets and sales into profit. (8) Higher gross margin: Gross Profit / Revenue improved versus the prior year, indicating better pricing power or lower input costs. (9) Higher asset turnover: Revenue / Total Assets increased year over year, meaning the company generates more sales per dollar of assets. Example: revenue rising from $1,000M to $1,150M while total assets hold near $2,000M lifts asset turnover from about 0.50 to 0.58, earning signal 9. Improving margins plus improving turnover is the efficiency story Piotroski wanted to capture.

How to use the F-Score in practice

Piotroski designed the score as a filter, not a buy trigger. The classic workflow: start with a value universe (historically low price-to-book or high book-to-market), then rank by F-Score, favouring 7-9 and avoiding 0-2. The score tells you the financials are improving, not why, so pair it with qualitative research and a valuation view. Be cautious with micro-caps, where accounting quality varies and some signals get noisy. It also pairs well with complementary metrics like the Altman Z-Score for bankruptcy risk. Treat a high F-Score as a green light to dig deeper, not as a finished investment decision.

Running the F-Score at scale with StoqPulse

Computing nine year-over-year signals by hand for one stock is tedious; doing it across a market is impractical. The StoqPulse stock screener calculates the Piotroski F-Score automatically for each candidate from current and prior-period fundamentals, displays it as a 0-9 readout, and lets you set a minimum F-Score as a filter alongside market cap, P/E, an Altman Z-Score, a multi-factor composite score, momentum, and sector. US coverage is free for 14 days (no card), so you can build an F-Score screen at no cost. Set your minimum, run the screen, and start each research session with a shortlist of financially improving names rather than a blank ticker box.

FAQ

What is a good Piotroski F-Score?

A score of 7-9 is considered strong, indicating healthy and improving fundamentals. 3-6 is average and warrants more research, while 0-2 signals weak or deteriorating financials and a possible value trap. The score is most useful when applied within a value universe and combined with valuation and qualitative analysis.

What are the three groups of Piotroski F-Score criteria?

The nine signals split into profitability (4 signals: positive ROA, positive operating cash flow, improving ROA, and CFO greater than net income), leverage/liquidity (3 signals: falling long-term-debt ratio, improving current ratio, and no new share issuance), and operating efficiency (2 signals: improving gross margin and improving asset turnover).

Does the Piotroski F-Score include price or technical analysis?

No. The F-Score is purely accounting-based, derived from the income statement, balance sheet, and cash flow statement. It measures profitability, leverage and liquidity, and operating efficiency. It does not use share price, valuation multiples, or technical indicators, which is why it is typically applied on top of a separate value or price-based screen.

Can the F-Score be used on its own to pick stocks?

It is best used as a filter rather than a standalone buy signal. Piotroski intended it to rank an existing value universe so you concentrate on improving fundamentals and avoid deteriorating ones. A high score tells you the financials are improving, not why, so combine it with valuation, business quality, and qualitative research before investing.

Why might a stock show no F-Score or an UNKNOWN value?

The F-Score needs both current and prior-period financial statements to compute its nine signals. When that data is missing, a literal score of 0 would be misleading because it reflects absent inputs rather than a genuine failing grade. StoqPulse marks such names as F-Score UNKNOWN so they are not incorrectly treated as the worst-quality stocks or dropped by a minimum-score filter.

Put this to work in StoqPulse

Stock screener is included in your free 14-day trial — no credit card required.