Formula, calculation and example
Piotroski F-Score
The Piotroski F-Score is a nine-point accounting score designed to separate financially strong value companies from weak ones. Each profitability, funding or efficiency test contributes one point when its condition is met.
Piotroski F-Score formula
F-Score = F_ROA + F_CFO + F_ΔROA + F_ACCRUAL + F_ΔLEVER + F_ΔLIQUID + F_EQ_OFFER + F_ΔMARGIN + F_ΔTURNEach of the nine signals is binary: one point when the criterion is satisfied and zero when it is not. ROA, operating cash flow to assets and asset turnover use beginning-of-year assets. Long-term leverage uses average assets, and any increase in comparable split-adjusted weighted-average shares fails the equity-offering test.
Key inputs
- Profitability signals
- Positive ROA, positive operating cash flow divided by beginning assets, improving ROA and cash flow to beginning assets exceeding ROA.
- Leverage and liquidity
- Lower long-term debt divided by average assets, improved current ratio and no increase in comparable split-adjusted shares.
- Operating efficiency
- An improving gross margin and improving revenue divided by beginning assets compared with the prior year.
- Comparable statements
- Three consecutive annual balance dates, current and prior income statements, current cash flow and one consistent split-adjusted share basis.
Piotroski F-Score calculation example
- 1Assets are 200, 100 and 200 at the current, prior and opening dates. Net income of 15 and 20 produces ROA of 15/100 = 15% versus 20/200 = 10%: the improvement point passes.
- 2Current operating cash flow of 20 divided by beginning assets of 100 is positive and exceeds current ROA: 2 more profitability points.
- 3Long-term leverage falls and current liquidity improves, but new shares were issued: 2 of 3 funding points.
- 4Revenue of 150/100 = 1.5 exceeds the prior 100/200 = 0.5 asset turnover, while gross margin also improves: 2 efficiency points.
- 5Add the satisfied binary signals across all nine criteria; a split-adjusted share increase from 100 to 100.4 receives zero for issuance.
The company scores 7 out of 9. That indicates relatively strong fundamentals, but it is not a valuation signal and does not by itself show whether the shares are cheap.
When Piotroski F-Score is useful
- Screening value stocks for improving financial quality.
- Comparing fundamental momentum across companies with available financial statements.
- Adding a balance-sheet and earnings-quality check to a valuation analysis.
Limitations to consider
- The score does not estimate intrinsic value or a target price.
- One-time accounting effects can distort individual criteria.
- Sector-specific business models can make direct comparisons less meaningful.
- If the third balance date or a comparable split-adjusted share series is unavailable, no score is produced.
How to calculate Piotroski F-Score
- 1Use prior-year assets for current ROA and opening assets for prior-year ROA.
- 2Divide current operating cash flow by prior-year assets and test whether it is positive.
- 3Award one point when ROA improves and another when cash flow to beginning assets exceeds current ROA.
- 4Award points for lower long-term debt to average assets, improved liquidity and no split-adjusted share increase.
- 5Award points for improved gross margin and revenue to beginning assets.
- 6Add all nine binary results and document the financial periods used.
- 7Combine the score with valuation, business quality and industry analysis.
How to interpret the result
Scores of 8 or 9 generally indicate strong and improving fundamentals. Scores around 4 to 6 are mixed, while 0 to 2 can signal weak profitability, deteriorating funding or poor efficiency. Thresholds are screening conventions, not guarantees of future returns.
Compare related stock analysis models
Frequently asked questions
What are the nine Piotroski F-Score criteria?
They are positive ROA, positive operating cash flow, improving ROA, cash flow above net income, lower leverage, improved liquidity, no new shares, improved gross margin and improved asset turnover.
What is a good Piotroski F-Score?
A score of 8 or 9 is generally considered strong. Scores around 4 to 6 are mixed, while very low scores can indicate weak or deteriorating fundamentals.
How is the Piotroski F-Score calculated?
Use three consecutive annual balance dates so both compared years have beginning assets. Test the nine canonical criteria, assign one or zero, then add them for a score between 0 and 9.
Does the Piotroski F-Score predict stock returns?
It was designed to separate financially strong value companies from weak ones, but no score guarantees future returns. Market valuation and business quality still matter.
Can the F-Score be negative?
No. The score ranges from 0 to 9 because each of the nine binary criteria contributes either zero or one point.
Learn the method in context
Go beyond the formula with worked explanations, assumptions and common mistakes in the Stock Insights Academy.
Read the related Academy guideApply Piotroski F-Score to a stock
Use Stock Insights to combine this model with additional valuation and financial health checks.
Analyze a stock