Forensic scores
Altman Z-Score: withheld for 865 filers
The Altman Z-Score is withheld for 865 companies on the 2026-09-07 build, and printed for utilities, where three quarters of the cohort score as distressed.
By Javier SanzPublished Updated : The price-staleness sentence is removed, because it was false. It said every price here was more than seven days old and that the market data had last been refreshed on 2026-08-26; the refresh ran on 2026-09-11 and the sentence went on saying otherwise, as a computed fact typed into prose will. The scope caveat it sat in is unchanged, and the build date on the distribution is unchanged at 2026-09-07. Previously, on 2026-09-13: One sentence on provenance corrected. An industry string is no longer always a vendor's judgement; since 2026-09-12 a listing the vendor never described takes the SEC's own words for its filed SIC code.
Founder of ValueScreener. Built Ninety Nine, a securities services provider, and sold it to a tier-one global bank; ran operations and internationalization at Alpaca, the brokerage API.
Who writes thisEditorial processLinkedIn (opens in a new tab)X (opens in a new tab)
On the 2026-09-07 distribution build, 865 companies were withheld from the Altman Z-Score cohort as not applicable: banks, capital markets firms, insurers, equity REITs, mortgage REITs and specialty finance. Altman's 1968 discriminant analysis was fitted on US manufacturers, and financial firms were excluded from it. Beneish excluded financial firms from his own sample too, and the M-Score is withheld here for much the same list.
The score is nevertheless published for banks in plenty of places, because the arithmetic runs on any balance sheet that has the five inputs. This product refuses it. The figure is not estimated, not adjusted, not printed with an asterisk. It is absent, with the reason in its place. The Z-Score is the widest of those refusals rather than the only one, and the full table of what else is withheld, and from whom is published on the same build.
That refusal has a visible consequence in the output. Two whole sectors, Financial Services and Real Estate, publish no Altman percentiles at all, because after the exclusions fewer than thirty companies remain in each and thirty is the minimum cohort this product will compute a percentile from. Both sectors publish percentiles for other metrics on the same build. The gap is the gate.
It has a second consequence, in a screen rather than a distribution. Put an Altman filter at the end of a funnel and it removes every company holding no score before it compares anything, which is why a deep value screen quietly loses its two largest sectors.
What the model does to a bank
Z is five terms, weighted:
Z = 1.2 (working capital / assets)
+ 1.4 (retained earnings / assets)
+ 3.3 (EBIT / assets)
+ 0.6 (market cap / total liabilities)
+ 1.0 (revenue / assets)
Run a bank through it. A bank does not present a classified balance sheet, so working capital is not defined and the first term is meaningless. Its assets are its loan book, so EBIT over assets is an order of magnitude below an operating company's by construction and the third term collapses. Its liabilities are mostly customer deposits, so the fourth term divides market capitalisation by the deposit base and produces a small number for a well-funded bank. Revenue over assets, the fifth term, is interest income over the loan book, which is a yield and not a turnover.
Four of the five terms are wrong for a reason that has nothing to do with the bank's condition. The result is that a healthy bank scores in the distress zone reliably, and the score is wrong rather than alarming. The sentence this product shows instead says exactly that.
Property trusts get their own refusal and their own sentence, because the failure is different: the Z-Score rewards working capital and asset turnover, and a company whose entire balance sheet is long-lived buildings has neither.
The sector the gate does not cover
Utilities are not excluded. The score is computed and published for them like any operating company. Here is what it produces.
| Percentile | Utilities Z | Altman's zone |
|---|---|---|
| 10th | 0.49 | distress |
| 25th | 0.74 | distress |
| 50th | 0.99 | distress |
| 75th | 1.33 | distress |
| 90th | 2.09 | grey |
74 companies, from GET /api/public/distribution/altman_z, build dated
2026-09-07, rounded to two decimals, halves away from zero. Altman's original
cutoffs are 1.81 and 2.99: below 1.81 is the distress zone, 1.81 to 2.99 is
grey, above 2.99 is safe.
At least three quarters of the utilities cohort sits in the distress zone. The sector contains some of the most reliably investment-grade issuers in the US market.
The mechanism is the same one that breaks the score for banks, in a milder form. A regulated utility carries an enormous rate base, so every term with assets in the denominator is small. It runs negative working capital, so the first term is negative. It pays most of its earnings out, so retained earnings over assets stays low however long it has existed. Revenue over assets, for a business whose assets are transmission lines with forty-year lives, is a fraction. Four terms structurally small, one of them negative, and a floor of 1.81 that was calibrated on manufacturers.
The product already knows utilities are a special case. It has a utility company class, it ranks their leverage and free cash flow against other utilities rather than against the market, and it attaches a note to each of those figures saying why. The table of metrics it withholds for a utility is empty, and the Altman score is not among the ones it re-ranks.
That is a real gap and this page is the place to say so rather than the place to hide it. The three candidate fixes are visible from here: withhold the score as it is withheld for financials, publish it ranked against utilities only as leverage already is, or publish it with a note. Which of those is right is a product decision. Printing 0.99 next to a distress label and leaving the reader to work it out is not one of the three.
The exclusion list, exactly
Six company classes are excluded from this cohort. The classification is by filed industry, not by sector, which is why the two do not line up:
- Bank. Deposit-taking lenders.
- Insurer. Underwriters. Insurance brokers are deliberately not in this class: a broker earns commission and files an ordinary commercial balance sheet.
- Capital markets. Broker-dealers and asset managers.
- Specialty finance. Financial companies that file ordinary commercial statements. For this class the Altman exclusion is the only rule applied. Everything else about them, gross margin, current ratio, free cash flow, is real and is published.
- Equity REIT. Excluded on the working capital and asset turnover argument, not the financial-firm one.
- Mortgage REIT. Excluded on both.
865 companies fell into those classes on this build. The number is not the size of the financial sector: it is the number of companies in the cohort's input population that the gate removed, and it is stated by the endpoint that produced the percentiles.
Two different counts, and why they differ
On 2026-09-07 the screener held an Altman Z-Score for 3,441 of the 5,257 listings in the pool that day, and the distribution cohort was 2,773 companies. Neither is wrong and they are not comparable.
The first counts listings holding a stored value, including the listings whose value the gate refuses to display. The second counts deduplicated companies at the verified tier after the gate has run. A screener filter matches on the stored column, so a filter on Altman Z will match a bank whose company page shows no Altman Z at all.
That is worth knowing before quoting any count of "companies with a Z-Score below x" from a screener, here or anywhere else.
What this leaves out
The exclusions and the cohort sizes are from one distribution build, dated 2026-09-07. The company classification is by industry string, which is the data vendor's judgement where the vendor supplied one and, since 2026-09-12, the SEC's own words for the filed SIC code where it did not. Either way a company on the boundary of two classes may be classified in a way its filings would not obviously support.
Altman's 1968 cutoffs of 1.81 and 2.99 are the original discriminant boundaries for the original model on public manufacturers. Later variants of the model exist with different coefficients and different cutoffs for non-manufacturers and for private companies. This product computes the original and applies the original cutoffs, which is a choice, and it is the choice that makes the utilities result above what it is.
Nothing here says a utility is financially strong or weak. It says a particular model produces a particular number for that kind of company for structural reasons, and that the number should not be read as the model's label suggests.
One of the five terms uses market capitalisation, so a company's Z moves when its share price moves with nothing having changed in any filing. The scores counted above are the ones the 2026-09-07 build computed, on that day's prices.