The Ohlson O-Score turns nine numbers from a company's financial statements into a single probability of default. Here is how the model is built, how to convert the score into a percentage, and where it quietly breaks.
In 1980, accounting researcher James Ohlson published "Financial Ratios and the Probabilistic Prediction of Bankruptcy" in the Journal of Accounting Research. His goal was to improve on Edward Altman's 1968 Z-Score, which had become the standard tool for flagging companies at risk of failure. Altman used a technique called multiple discriminant analysis (MDA), which draws a boundary between "healthy" and "failing" firms but requires some restrictive statistical assumptions, and outputs a score whose units are hard to interpret directly.
Ohlson took a different route. He fit a logistic regression (logit) model on a sample of roughly 2,000 industrial firms, including 105 that went bankrupt between 1970 and 1976. Logistic regression does not assume the two groups have identical variance structures or normally distributed inputs, and its output is naturally bounded between 0 and 1. That last property is the headline feature: instead of a raw score, the O-Score model produces an explicit probability of default. Investors often reach for the O-Score precisely because "an 8% chance" is easier to reason about than "a Z of 1.7."
The model combines nine accounting inputs plus an intercept. Seven are continuous ratios; two are yes/no dummy variables. The linear score, usually written O, is a weighted sum:
| Variable | Definition | What it captures | Coefficient |
|---|---|---|---|
| Intercept | — | Baseline level | −1.32 |
SIZE | log(total assets / price-level index) | Firm size; larger firms fail less often | −0.407 |
TLTA | Total liabilities / total assets | Leverage and overall solvency | +6.03 |
WCTA | Working capital / total assets | Short-term liquidity buffer | −1.43 |
CLCA | Current liabilities / current assets | Near-term liquidity strain | +0.0757 |
NITA | Net income / total assets | Profitability (return on assets) | −2.37 |
FUTL | Funds from operations / total liabilities | Cash-flow coverage of debt | −1.83 |
INTWO | 1 if net loss in both of the last two years | Chronic, repeated losses | +0.285 |
OENEG | 1 if total liabilities exceed total assets | Negative book equity | −1.72 |
CHIN | (current NI − prior NI) / (|current NI| + |prior NI|) | Direction and momentum of earnings | −0.521 |
The signs mostly line up with intuition. More leverage (TLTA) and more short-term strain (CLCA) push the score up, toward higher default risk. More profitability (NITA), more operating cash flow relative to debt (FUTL), a bigger liquidity cushion (WCTA), and improving earnings (CHIN) push it down. CHIN is scaled to sit between −1 and +1, so a company swinging from a large loss to a large profit registers near +1.
One coefficient looks backwards and deserves a note. OENEG flags negative equity, yet its coefficient is negative. That is not a typo: when equity is negative, TLTA exceeds 1 and the large +6.03 weight already blows the score up dramatically. The −1.72 on OENEG acts as a correction that dampens that extreme, so the model does not double-count the same distress. Read the two terms together, not in isolation.
The raw O value can be any real number, positive or negative. To turn it into a probability of default, the model passes it through the logistic (sigmoid) function:
P = 1 / (1 + e^−O)
This squeezes any score into the 0-to-1 range. The mechanics are worth internalizing:
O = 0, the exponent is zero, e^0 = 1, and P = 1/2 = 0.50. So a score of zero is the "even odds" midpoint.O climbs positive, P approaches 1 (high estimated default risk).O falls negative, P approaches 0 (low estimated default risk).Because it is a smooth S-curve, small changes near the middle move the probability a lot, while changes far out in either tail barely register. A firm already at P = 0.02 can deteriorate meaningfully in its raw score without the headline percentage moving much, so the underlying O value is often more sensitive than the probability it produces.
Consider a hypothetical cyclical manufacturer, coming off a weak year. Its statements give these inputs (dollar figures in millions):
TLTA = 760/800 = 0.95WCTA = −60/800 = −0.075, and CLCA = 260/200 = 1.30NITA = −40/800 = −0.05FUTL = 30/760 = 0.0395INTWO = 1OENEG = 0CHIN = (−40 − (−25)) / (40 + 25) = −15/65 = −0.231SIZE ≈ 11.0 (the natural log of total assets after deflation)Multiplying each input by its coefficient:
| Term | Calculation | Contribution |
|---|---|---|
| Intercept | — | −1.320 |
| SIZE | −0.407 × 11.0 | −4.477 |
| TLTA | 6.03 × 0.95 | +5.729 |
| WCTA | −1.43 × −0.075 | +0.107 |
| CLCA | 0.0757 × 1.30 | +0.098 |
| NITA | −2.37 × −0.05 | +0.119 |
| FUTL | −1.83 × 0.0395 | −0.072 |
| INTWO | 0.285 × 1 | +0.285 |
| OENEG | −1.72 × 0 | 0.000 |
| CHIN | −0.521 × −0.231 | +0.120 |
| Total (O) | +0.589 |
Now convert: P = 1 / (1 + e^−0.589). Since e^−0.589 ≈ 0.555, we get P = 1 / 1.555 ≈ 0.64. The model assigns this firm roughly a 64% implied probability of default within the horizon it was trained on. The heavy lifting comes from leverage (TLTA alone contributes +5.73) partly offset by the firm's size (SIZE contributes −4.48). Take away the scale and this balance sheet looks fragile.
How high is "too high"? The logistic midpoint of P = 0.50 (equivalently O = 0) is the natural even-odds reference, and a probability well above it, like the 64% above, signals elevated distress risk in the model's terms. But bankruptcy is a rare event: in any given year the vast majority of firms do not fail. Ohlson found that classifying every firm above 50% as a failure would miss most real failures, so he chose an empirically optimal cutoff far lower, in the low single-digit percentages, to balance false alarms against missed cases. Different implementations pick different cutoffs for exactly this reason.
The practical takeaway is descriptive, not prescriptive. A high Ohlson probability is a screen, not a verdict. It says this company statistically resembles firms that later ran into severe distress; it does not predict that this particular company will. A single number is one input among many, and it deserves a look at the actual filings behind it.
Investors frequently run both models side by side. They ask overlapping but distinct questions, and they can disagree in informative ways.
| Dimension | Altman Z-Score | Ohlson O-Score |
|---|---|---|
| Method | Discriminant analysis (MDA) | Logistic regression (logit) |
| Output | A score with zone cutoffs | An explicit probability (0–1) |
| Inputs | 5 ratios, including a market-value term | 9 accounting variables, no market price |
| Emphasis | Profitability and market value | Balance-sheet leverage and cash flow |
| Uses market cap? | Yes (market value of equity / liabilities) | No — statements only |
Two differences matter most. First, the classic Z-Score includes a market-value-of-equity term, so it reacts to how the market prices a stock; the O-Score is built entirely from accounting statements and is indifferent to price. That makes the O-Score useful when you want a distress read that a falling (or soaring) share price cannot contaminate. Second, the O-Score leans harder on the balance sheet and on cash-flow coverage of debt. When the two models diverge, the gap itself is worth investigating: a company that looks fine on Z but poor on O may be carrying leverage the market has not yet punished.
The O-Score is durable, but it has well-known edges where it fails or misleads:
TLTA and WCTA mean something entirely different for them, so the model is calibrated on and intended for non-financial industrials.SIZE carries a large coefficient. Ohlson defined it on price-deflated total assets, and plugging in raw assets, or the wrong currency unit, or the wrong log base, can swing the final probability from single digits to over 90%. This is the single most common implementation error. Compute SIZE consistently with how the coefficients were estimated.Lower is safer, because a lower O maps to a lower probability of default. A negative O corresponds to a probability below 50%, and healthy large firms often sit far into negative territory. There is no universal pass/fail line; the appropriate cutoff depends on the base rate of failure in the population you are screening.
Neither is strictly "better." The O-Score outputs a direct probability and relies only on accounting data, while the Z-Score incorporates market value and is simpler. Many investors treat them as complementary readings rather than competitors, and pay attention when the two disagree.
Generally no. The model was estimated on non-financial industrial companies. Banks, insurers, and other financials have fundamentally different balance-sheet structures, so the leverage and liquidity ratios do not carry the same meaning and the model's calibration does not apply.
A negative O value simply means the logistic function returns a probability below 0.50. The more negative the score, the lower the model-implied probability of default. It is a normal, common result for financially stable companies.
In Ohlson's original work, FUTL uses funds provided by operations relative to total liabilities. A widely used approximation is pretax income plus depreciation and amortization, though implementations vary. Because the definition affects the ratio, it is worth checking how any given screen computes it.
Quintarthai computes an Ohlson probability-of-default column directly from public filings (SEDAR+/EDGAR) for U.S. and Canadian equities, alongside the raw O value and its component ratios. You can sort and filter the full universe on this measure in the screener, and each company's deep-dive page breaks the score into its nine contributing variables next to related distress models like the Altman Z-Score, so a flag is always presented as one input to examine rather than a standalone conclusion.
WMT or any name on your watchlist on the free Core dashboard at quintarthai.com/app.