Piotroski Score: Complete Guide to the F-Score, Value Investing & Stock Screening

M
MarketXLS Team
Published
Piotroski Score — 9 criteria F-Score calculation for value investing and fundamental stock analysis

Piotroski Score is a discrete scoring system that rates a company's financial strength on a scale of 0 to 9 based on nine fundamental criteria spanning profitability, leverage, liquidity, and operating efficiency. Developed by Stanford accounting professor Joseph D. Piotroski in a landmark 2000 paper, the F-Score has become one of the most widely used quantitative tools in value investing — providing a systematic way to separate financially strong companies from weak ones, even when both appear "cheap" by traditional valuation metrics.

This guide covers everything you need to know about the Piotroski Score: what each of the nine criteria measures, how to calculate the score, how to use it for stock screening, its proven track record in academic research, and how to implement it efficiently using MarketXLS in Excel.

What Does the Piotroski Score Indicate?

The Piotroski Score acts as a financial health report card. It answers a simple but powerful question: Is this company getting stronger or weaker?

Traditional value investing focuses on finding cheap stocks — companies with low price-to-book ratios, low PE ratios, or high dividend yields. The problem is that many stocks are cheap for good reasons: deteriorating fundamentals, rising debt, or declining profitability. Buying these "value traps" can be devastating.

Piotroski's insight was that you can improve value investing returns dramatically by adding a quality filter. The F-Score separates genuinely undervalued companies (temporarily out of favor but fundamentally sound) from companies that deserve their low valuations (weak and getting weaker).

Score interpretation:

  • 8-9: Excellent financial health — strong buy signal for value investors
  • 6-7: Good financial health — solid candidates worth further analysis
  • 4-5: Average — mixed signals, requires deeper investigation
  • 2-3: Weak — financial deterioration, caution warranted
  • 0-1: Very weak — significant financial distress, avoid

The 9 Piotroski Score Criteria Explained

The F-Score evaluates nine binary criteria organized into three categories. Each criterion scores either 1 (pass) or 0 (fail).

Category 1: Profitability (4 Criteria)

Criterion 1: Return on Assets (ROA)

  • Score 1 if: Current year ROA > 0
  • What it measures: Is the company generating a profit from its assets?
  • Why it matters: A company that can't generate positive returns on its assets has fundamental problems regardless of valuation

Criterion 2: Operating Cash Flow (CFO)

  • Score 1 if: Current year operating cash flow > 0
  • What it measures: Is the company generating real cash from operations?
  • Why it matters: Earnings can be manipulated through accounting, but cash flow is harder to fake. Positive CFO means the company can fund its operations

Criterion 3: Change in ROA (ΔROA)

  • Score 1 if: Current year ROA > Prior year ROA
  • What it measures: Is profitability improving?
  • Why it matters: A company with improving profitability is getting stronger, not just surviving

Criterion 4: Cash Flow vs. Earnings (Accruals)

  • Score 1 if: Operating cash flow > Net income (ROA)
  • What it measures: Is earnings quality high?
  • Why it matters: When cash flow exceeds reported earnings, it suggests conservative accounting. When earnings exceed cash flow, the company may be using aggressive accounting to inflate reported results

Category 2: Leverage, Liquidity & Source of Funds (3 Criteria)

Criterion 5: Change in Leverage (Long-Term Debt/Assets)

  • Score 1 if: Current leverage ratio < Prior year leverage ratio
  • What it measures: Is the company reducing its debt burden?
  • Why it matters: Declining leverage improves financial stability and reduces bankruptcy risk

Criterion 6: Change in Current Ratio (Liquidity)

  • Score 1 if: Current ratio (current assets / current liabilities) > Prior year
  • What it measures: Can the company meet its short-term obligations?
  • Why it matters: Improving liquidity means the company has more cushion against short-term financial stress

Criterion 7: Share Dilution

  • Score 1 if: No new shares issued in the current year (shares outstanding ≤ prior year)
  • What it measures: Is management diluting existing shareholders?
  • Why it matters: Companies that issue equity when their stock is cheap are destroying shareholder value. No dilution shows management confidence and financial discipline

Category 3: Operating Efficiency (2 Criteria)

Criterion 8: Change in Gross Margin

  • Score 1 if: Current gross margin > Prior year gross margin
  • What it measures: Is the company maintaining or growing pricing power?
  • Why it matters: Expanding margins indicate competitive strength, pricing power, or improving efficiency

Criterion 9: Change in Asset Turnover

  • Score 1 if: Current asset turnover (revenue / total assets) > Prior year
  • What it measures: Is the company using its assets more efficiently?
  • Why it matters: Higher turnover means the company generates more revenue per dollar of assets — a sign of operational excellence

Calculating the Piotroski Score: Step-by-Step

Manual Calculation

To calculate the F-Score manually, you need two years of financial statement data (current and prior year). Here's the process:

  1. Gather income statement, balance sheet, and cash flow statement data for both years
  2. Calculate each of the nine metrics
  3. Score each as 1 or 0
  4. Sum all nine scores

Calculating with MarketXLS in Excel

MarketXLS makes Piotroski Score calculation straightforward. The dedicated function handles all nine criteria automatically:

Get the Piotroski F-Score directly:

=PiotroskiFScore("AAPL")

This single function returns the total F-Score (0-9) by automatically pulling the necessary financial data and calculating all nine criteria.

Using Component Functions for Deeper Analysis

For investors who want to see the individual components, MarketXLS provides the underlying financial data:

Profitability metrics:

=Revenue("AAPL")                    — Total revenue
=hf_revenue("AAPL", 2024, 2)       — Historical quarterly revenue
=PERatio("AAPL")                    — Price-to-earnings ratio

Fundamental data for manual scoring:

=MarketCapitalization("AAPL")       — Market cap for size context
=Last("AAPL")                       — Current stock price
=DividendYield("AAPL")              — Dividend yield
=DividendPerShare("AAPL")           — Dividend per share

By pulling these components individually, you can build a detailed Piotroski analysis worksheet that shows not just the total score but how close each criterion is to flipping — giving you forward-looking insight into whether the score is likely to improve or deteriorate.

Building a Piotroski Screening Spreadsheet

Here's a practical layout for screening multiple stocks:

ColumnHeaderFormula (Row 2)
ATickerAAPL
BPrice=Last(A2)
CPE Ratio=PERatio(A2)
DMarket Cap=MarketCapitalization(A2)
ERevenue=Revenue(A2)
FDiv Yield=DividendYield(A2)
GF-Score=PiotroskiFScore(A2)

Enter ticker symbols in column A, and all data populates automatically. Sort by F-Score (column G) to find the highest-scoring companies.

Piotroski Score Track Record: What the Research Shows

Piotroski's Original 2000 Paper

In his seminal paper "Value Investing: The Use of Historical Financial Statement Information to Separate Winners from Losers," Piotroski studied high book-to-market (value) stocks from 1976 to 1996. His findings were remarkable:

  • A strategy of buying high F-Score stocks (7-9) and shorting low F-Score stocks (0-2) generated an average annual return of 23%
  • High F-Score stocks outperformed low F-Score stocks by an average of 7.5% annually
  • The strategy was effective across different market capitalizations and time periods

Subsequent Research

Multiple follow-up studies have confirmed the F-Score's effectiveness:

  • International markets: The score has been validated in European, Asian, and emerging markets, though effectiveness varies by region
  • Different time periods: Studies extending through the 2000s and 2010s continue to show outperformance for high F-Score value stocks
  • Combination with other metrics: Research shows that combining the Piotroski Score with other value indicators (low PE, low price-to-book) produces even stronger results than using any single metric alone

How to Use the Piotroski Score in Practice

As a Value Investing Filter

The most common application is as a quality overlay on a value screen:

  1. Start with value stocks: Screen for stocks with low PE ratios using =PERatio("TICKER"), low price-to-book ratios, or high dividend yields
  2. Apply the Piotroski filter: Calculate F-Score using =PiotroskiFScore("TICKER") and keep only stocks scoring 7+
  3. Conduct further analysis: Review remaining candidates' competitive position, management quality, and growth prospects

This approach systematically eliminates value traps — stocks that are cheap because they deserve to be.

As a Sell Signal

The Piotroski Score isn't just for buying. Monitor scores on your existing holdings:

  • A dropping F-Score (especially falling from 7+ to below 5) may signal deteriorating fundamentals before the market fully prices it in
  • Watch for specific criteria flipping — a company that starts issuing shares (Criterion 7) or seeing declining margins (Criterion 8) may be in early-stage trouble

Sector-Specific Considerations

The Piotroski Score works best for capital-intensive businesses where balance sheet metrics like leverage and asset turnover are meaningful. Consider these sector nuances:

SectorF-Score EffectivenessNotes
IndustrialsHighClassic value companies, all 9 criteria relevant
Consumer StaplesHighStable financials make year-over-year comparisons meaningful
FinancialsModerateDifferent capital structure; leverage criteria need adjustment
TechnologyModerateHigh growth may score poorly on some criteria despite strength
UtilitiesModerateRegulated returns and high leverage are normal, not warning signs
Biotech/PharmaLowPre-revenue companies will always score poorly
REITsLowRequired payouts and leverage structures distort the score

Limitations of the Piotroski Score

While powerful, the F-Score has important limitations that every investor should understand:

Backward-Looking Nature

The score is based entirely on historical financial statements. By the time annual reports are filed, the data may be 3-6 months old. A company's financial health can change significantly in that time, especially during economic downturns or industry disruptions.

Accounting Manipulation Risk

Because the score relies on accounting data, it's vulnerable to earnings management. Companies can:

  • Time revenue recognition to inflate results
  • Reclassify expenses to improve margins
  • Manipulate working capital timing to boost cash flow
  • Use off-balance-sheet arrangements to hide leverage

Growth Company Bias

High-growth companies often score poorly on several criteria:

  • They may issue shares to fund growth (Criterion 7 = 0)
  • They may increase leverage to invest in expansion (Criterion 5 = 0)
  • Their ROA may decline as they invest ahead of revenue (Criterion 3 = 0)

A low F-Score for a growth company doesn't necessarily mean it's financially weak — it may be investing aggressively for the future.

Industry Norms Ignored

The score treats all industries the same, but normal financial structures vary dramatically:

  • Banks naturally carry high leverage
  • Utilities have regulated returns that limit ROA improvement
  • Tech companies often have minimal tangible assets, making asset-based ratios less meaningful

No Valuation Component

The Piotroski Score measures financial quality, not valuation. A company can have a perfect 9 score but still be overvalued. The score should always be used alongside valuation metrics — never as a standalone buy signal.

Advanced Piotroski Analysis Techniques

Trend Analysis: Tracking F-Score Changes

Instead of looking at a single snapshot, track how the F-Score changes over time. Use MarketXLS to pull quarterly financial data:

=hf_revenue("AAPL", 2024, 1)   — Q1 2024 revenue
=hf_revenue("AAPL", 2024, 2)   — Q2 2024 revenue
=hf_revenue("AAPL", 2024, 3)   — Q3 2024 revenue
=hf_revenue("AAPL", 2024, 4)   — Q4 2024 revenue

A rising F-Score trend is more bullish than a static high score. A company improving from 4 to 7 may offer better returns than one that's been at 8 for years, because the improving trajectory hasn't been fully priced in yet.

Composite Scoring

Combine the Piotroski Score with other fundamental metrics for a more complete picture:

Value + Quality Screen:

  1. Low PE ratio: =PERatio("TICKER") < 15
  2. High F-Score: =PiotroskiFScore("TICKER") ≥ 7
  3. Reasonable dividend: =DividendYield("TICKER") > 1%
  4. Adequate market cap: =MarketCapitalization("TICKER") > $1B

Momentum + Quality Screen:

  1. High F-Score: =PiotroskiFScore("TICKER") ≥ 7
  2. Above 50-day SMA: =Last("TICKER") > =SimpleMovingAverage("TICKER", 50)
  3. RSI not overbought: =RSI("TICKER") < 70

Geographic Diversification

Research shows the Piotroski Score works across global markets. Consider applying it to:

  • US large-cap value stocks
  • International developed market stocks
  • Emerging market stocks (where information asymmetry makes fundamental screening even more valuable)

Impact of Economic Cycles on the Piotroski Score

The F-Score's effectiveness varies across economic cycles:

During Expansions

  • Most companies score well as revenue grows and profitability improves
  • High scores may be less discriminating — even weak companies look good in a rising tide
  • Focus on other differentiators alongside the F-Score

During Recessions

  • Scores become highly discriminating — companies with strong fundamentals separate from weak ones
  • High F-Score stocks tend to decline less than low F-Score stocks
  • The best time to use the Piotroski Score for stock picking

During Recoveries

  • The most rewarding period for F-Score investors
  • Companies that maintained high scores through a recession often outperform dramatically in recovery
  • Low-scoring companies that survived may see rapid F-Score improvement, offering turnaround opportunities

Frequently Asked Questions

Is a Piotroski Score of 6 good?

A score of 6 is above average and indicates moderately strong financial health. The company meets six of nine criteria, suggesting more positives than negatives. However, it's worth examining which specific criteria scored 0 — some failures (like declining ROA or increasing leverage) are more concerning than others (like a minor decrease in current ratio). For strict value investing, most practitioners prefer scores of 7 or higher.

Can the Piotroski Score predict stock performance?

Research consistently shows that high F-Score value stocks outperform low F-Score value stocks over 1-2 year holding periods. However, the score is not a timing tool — it doesn't predict short-term price movements. It works best as a selection filter within a broader value investing framework, not as a standalone trading signal. Combine it with valuation metrics and technical analysis for better results.

How often should the Piotroski Score be updated?

Ideally, update the score quarterly when new financial statements are released. Annual updates align with the original methodology but quarterly reviews let you catch deterioration earlier. MarketXLS functions like =PiotroskiFScore("AAPL") automatically use the latest available data, so recalculating is as simple as refreshing your spreadsheet.

Does the Piotroski Score work for growth stocks?

The score was designed for value stocks and works best in that context. Growth companies often score poorly because they issue shares, increase leverage, and sacrifice short-term profitability for long-term growth — all of which reduce the F-Score. A low score on a growth stock doesn't necessarily indicate weakness. For growth investing, consider supplementing with metrics like revenue growth rate, gross margin expansion, and free cash flow trajectory.

Can companies manipulate their Piotroski Score?

Companies can influence individual criteria through accounting choices (timing of revenue recognition, expense classification, working capital management). However, manipulating all nine criteria simultaneously without genuinely improving financial health is extremely difficult. The multi-dimensional nature of the score provides natural protection against manipulation. Cross-referencing with cash flow data (Criterion 4) adds another check, since cash is harder to fabricate than accounting earnings.

How do I screen for high Piotroski Score stocks in Excel?

Use MarketXLS to build a screening spreadsheet. Enter a list of ticker symbols in column A, use =PiotroskiFScore(A2) to calculate the F-Score, and add columns for =PERatio(A2), =Revenue(A2), and =DividendYield(A2) for context. Sort by F-Score to identify the strongest companies.

Summary

The Piotroski Score is a powerful, research-backed tool for identifying financially strong companies among cheap stocks. Its nine criteria cover profitability, leverage, liquidity, and operating efficiency — providing a comprehensive financial health assessment that can dramatically improve value investing returns.

Key takeaways:

  • Scores of 7-9 indicate strong financial health and historically outperform
  • Scores of 0-3 signal financial weakness and should generally be avoided
  • The score works best as a quality filter on top of a value screen, not as a standalone signal
  • Combine with valuation metrics like PE ratio and dividend yield for best results
  • Track trends — an improving score can be more bullish than a static high score
  • Use =PiotroskiFScore("TICKER") in MarketXLS for instant calculation across any stock

Whether you're screening for undervalued gems or filtering out value traps, the Piotroski Score gives you a systematic, evidence-based framework for better investment decisions.

Ready to start screening? Visit MarketXLS or get MarketXLS for instant F-Score calculations in Excel.

Here is the template you might want to check out: F-score Template.

Use AI driven search for all functions on MarketXLS here:

Download from the link below, a sample spreadsheet created with MarketXLS Spreadsheet builder

Note this spreadsheet will pull latest data if you have MarketXLS installed. If you do not have MarketXLS consider subscribing here

Relevant blogs that you can read to learn more about the topic

SPX Options Historical Data — In-Depth Analysis & Trends The Ultimate Guide to Real-Time Option Data in Excel 0DTE Theta Decay: What Every Trader Should Know

Important Disclaimer

The information provided in this article is for educational and informational purposes only and should not be construed as investment advice, a recommendation, or an offer to buy or sell any securities. MarketXLS is a financial data platform and is not a registered investment advisor, broker-dealer, or financial planner. Always conduct your own research and consult with a qualified financial professional before making any investment decisions. Past performance is not indicative of future results. Trading and investing involve substantial risk of loss.

Interested in building, analyzing and managing Portfolios in Excel?
Download our Free Portfolio Template
I agree to the MarketXLS Terms and Conditions
Call: 1-877-778-8358
Ankur Mohan MarketXLS
Welcome! I'm Ankur, the founder and CEO of MarketXLS. With more than ten years of experience, I have assisted over 2,500 customers in developing personalized investment research strategies and monitoring systems using Excel.

I invite you to book a demo with me or my team to save time, enhance your investment research, and streamline your workflows.
Implement "your own" investment strategies in Excel with thousands of MarketXLS functions and templates.
MarketXLS provides all the tools I need for in-depth stock analysis. It's user-friendly and constantly improving. A must-have for serious investors.

John D.

Financial Analyst

I have been using MarketXLS for the last 6+ years and they really enhanced the product every year and now in the journey of bringing in AI...

Kirubakaran K.

Investment Professional

MarketXLS is a powerful tool for financial modeling. It integrates seamlessly with Excel and provides real-time data.

David L.

Financial Analyst

I have used lots of stock and option information services. This is the only one which gives me what I need inside Excel.

Lloyd L.

Professional Trader

Meet The Ultimate Excel Solution for Investors

Live Streaming Prices in your Excel
All historical (intraday) data in your Excel
Real time option greeks and analytics in your Excel
Leading data service for Investment Managers, RIAs, Asset Managers
Easy to use with formulas and pre-made sheets