Loading institutional data...
Loading institutional data...
Held by 408 of 6,047 reporting institutions (96th percentile) — extremely crowded.
Data as of Q2 2026
Loading snapshot...
Loading financials...
Loading valuation...
Loading analysis...
Loading dividends & returns...
Loading capital allocation...
Loading debt & leverage...
Loading performance...
Loading peer comparison...
Loading ownership map...
Loading crowding analysis...
Loading conviction analysis...
Loading buy/sell flow...
Loading ownership trends...
Loading top holders...
Loading top holders...
Total shares institutions bought (green) vs sold (red) each quarter across all holders.
Inferred from quarter-over-quarter change in each fund's 13F position (new stakes count as buys, exits as sells). Not tick-level trades.
Ranked against 18 sector peers with collected financials. Valuation from latest close × latest fiscal-year fundamentals; 13F conviction as of 2026-06-30.
Percentile is “goodness” within the peer set (100 = best). For valuation and leverage that means cheaper / less-levered ranks higher.
| Company | Mkt cap ▼ | P/E | EV/EBITDA | P/S | Rev gr | Gross | Net | ROE | ROIC | Net D/EBITDA | 13F |
|---|---|---|---|---|---|---|---|---|---|---|---|
| PH | $119.4B | 33.3× | 23.4× | 5.5× | 8.3% | 37.7% | 17.0% | 23.7% | 15.5% | 1.4× | 1,912 |
| AXON | $33.9B | 276.4× | — | 12.2× | 33.5% | 59.7% | 4.5% | 3.8% | 2.5% | — | 1,090 |
| SNA | $18.6B | 18.7× | 12.7× | 3.6× | 0.9% | — | 19.7% | 17.1% | 14.3% | -0.3× | 1,027 |
| BALL | $15.5B | 17.7× | — | 1.2× | 11.6% | — | 7.0% | 16.9% | 16.8% | — | 778 |
| MAS | $13.7B | 18.0× | 11.5× | 1.8× | -3.4% | 35.4% | 10.7% | -438% | 29.3% | 1.6× | 875 |
| SWK | $13.5B | 33.6× | — | 0.9× | -1.5% | 30.3% | 2.7% | 4.4% | 2.8% | — | 759 |
| CCK | $11.8B | 17.1× | 8.9× | 1.0× | 4.8% | — | 6.0% | 24.6% | 8.7% | 2.5× | 573 |
| CR | $11.7B | 32.3× | 26.0× | 5.1× | 8.2% | 42.2% | 15.9% | 17.8% | 11.4% | 1.4× | 574 |
| WTS | $11.6B | 34.1× | 22.5× | 4.8× | 8.3% | 49.5% | 14.0% | 16.8% | 15.3% | -0.4× | 555 |
| VMI | $9.0B | 27.9× | 19.2× | 2.2× | 0.7% | 30.2% | 8.5% | 21.5% | 14.4% | 1.2× | 624 |
| ACA | $7.2B | 34.5× | 15.1× | 2.5× | 12.2% | 22.4% | 7.2% | 7.9% | 5.0% | 2.3× | 408 |
| SSD | $7.0B | 20.9× | 12.7× | 3.0× | 4.5% | 45.9% | 14.8% | 17.0% | 14.7% | -0.1× | 466 |
| MTRN | $5.8B | 77.4× | 34.7× | 3.2× | 6.0% | 17.3% | 4.2% | 7.9% | 5.3% | 2.5× | 391 |
| GEF | $4.7B | — | 13.8× | 1.2× | -9.7% | 22.2% | 21.4% | 28.8% | 20.4% | 2.3× | 277 |
| GFF | $4.2B | 84.5× | — | 1.7× | -3.9% | 42.0% | 2.0% | 69.1% | 3.4% | — | 330 |
| AZZ | $4.1B | 13.0× | 12.9× | 2.5× | 4.6% | 23.9% | 19.2% | 23.7% | 17.5% | 1.3× | 341 |
| SLGN | $3.8B | 13.3× | — | 0.6× | 10.7% | 17.7% | 4.4% | 12.7% | 4.4% | — | 336 |
| MWA | $3.4B | 17.7× | 12.4× | 2.4× | 8.7% | 36.1% | 13.4% | 19.5% | 13.4% | 1.5× | 407 |
| CXT | $2.8B | 19.3× | 10.4× | 1.7× | 11.4% | 42.5% | 8.8% | 11.6% | 6.1% | 2.6× | 344 |
Peers = companies sharing ACA's sector (Fabricated Structural Metal Products) with collected SEC financials. Multiples use the most recent end-of-day close and latest fiscal-year fundamentals (trailing, not forward). Missing cells mean the peer never reported that line item, has no collected price, or has a non-positive denominator. Not investment advice.
Solve the discounted cash flow backwards, then stress-test the assumptions.
Average free cash flow across the last 3 positive fiscal years (FY2023, FY2024, FY2025). Smooths the cycle. Stock compensation is NOT charged — it is added back inside operating cash flow.
To be worth $146.50 today, the market must believe free cash flow compounds 19.4%/yr for a decade (off $181.8M on the 3-yr avg basis).
On the basis ($156.9M) the requirement is 21.4%/yr. Shares issued to employees are added back in operating cash flow, so this basis treats them as free.
The market's 19.4% is more optimistic than its 9-yr track record.
Default is 10.1% — this company's computed cost of capital (computed WACC), the same rate the Analysis tab discounts at.
2-stage DCF · 0.05B shares (market data) · net debt $1.31B
mean 59.2% · volatility σ 178% · implied rate exceeded in 3/9 yrs
Central path = implied 19.4%/yr growth; shaded band = ±1σ (178%) of this company's historical FCF volatility, widening with time. The wider the band, the less certain the growth.
Reverse DCF: rather than guessing a fair value, we solve for the growth the current price implies, then you stress-test the assumptions. Enterprise value of the FCF stream, less net debt, ÷ shares. Educational — not a recommendation.
Top 40 institutional holders — bubble size is position value, color is the move since last quarter. Hover any holder for detail.
Drag any bubble to rearrange · size = dollar value of the position
What the company returns to shareholders — and whether it's covered by cash.
The dividend is comfortably covered — only 6% of free cash flow, leaving room to grow it and fund buybacks. Last year: $10.0M dividends + $0 buybacks = $10.0M returned on $175.5M FCF.
1 consecutive years of dividend increases · 23%/yr.
Yields use the latest fiscal-year dividends/buybacks over current market cap. Dividends and buybacks from the SEC cash-flow statement; payout coverage vs net income and free cash flow. Educational — not a recommendation.
How management deployed cash over 10 years — and what it earned on reinvestment.
A reinvestment story — most cash went back into growth rather than to shareholders.
Modest payoff on reinvested capital. Current ROIC on all capital: 5%. Rough measure (includes maintenance capex).
Cash uses aggregated from the SEC cash-flow statement over 10 fiscal years. "Return on reinvestment" is a rough proxy — operating-income change ÷ cumulative CapEx + M&A — and includes maintenance capex. Educational — not a recommendation.
EOD close · as of 2026-10-08
How a revenue dollar becomes profit — FY2025
Dividends and buybacks are cash paid out, shown here against the same year's profit for scale — not funded from it.
Each value shows its share of revenue below it (common-size).
| Line Item | FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | FY2016 |
|---|---|---|---|---|---|---|---|---|---|---|
| Revenue | $2.88B 100.0% | $2.57B 100.0% | $2.31B 100.0% | $2.24B 100.0% | $2.04B 100.0% | $1.94B 100.0% | $1.74B 100.0% | $1.46B 100.0% | $1.46B 100.0% | $1.70B 100.0% |
| Cost of Revenue | $2.24B 77.6% | $2.05B 80.0% | $1.86B 80.8% | $1.83B 81.7% | $1.68B 82.5% | $1.55B 80.3% | $1.40B 80.9% | $1.19B 81.4% | $1.17B 79.8% | $1.36B 79.6% |
| Gross Profit | $647.2M 22.4% | $515.2M 20.0% | $443.8M 19.2% | — | — | — | — | — | — | — |
| Selling, General & Admin | $307.1M 10.7% | $320.0M 12.5% | $261.1M 11.3% | $262.8M 11.7% | $256.0M 12.6% | $223.1M 11.5% | $179.5M 10.3% | $153.9M 10.5% | $163.0M 11.1% | $147.3M 8.6% |
| Total Operating Expenses | $305.3M 10.6% | $317.6M 12.4% | $226.5M 9.8% | $1.89B 84.4% | $1.93B 94.7% | $1.78B 92.2% | $1.58B 91.2% | $1.37B 93.5% | $1.33B 91.0% | $1.50B 88.2% |
| Operating Income | $341.9M 11.9% | $197.6M 7.7% | $217.3M 9.4% | $349.0M 15.6% | $107.3M 5.3% | $151.8M 7.8% | $152.9M 8.8% | $94.9M 6.5% | $131.7M 9.0% | $200.8M 11.8% |
| Interest Expense | $108.8M 3.8% | $70.9M 2.8% | $28.1M 1.2% | $31.0M 1.4% | $23.4M 1.1% | $10.6M 0.5% | $6.8M 0.4% | $900K 0.1% | $0 0.0% | $0 0.0% |
| Interest & Investment Income | — | $7.5M 0.3% | $4.7M 0.2% | $1.1M 0.0% | $0 0.0% | $400K 0.0% | $1.4M 0.1% | $400K 0.0% | $100K 0.0% | $100K 0.0% |
| Other Income (Expense), net | -$100.6M -3.5% | -$67.6M -2.6% | -$21.4M -0.9% | -$32.8M -1.5% | -$23.7M -1.2% | -$13.6M -0.7% | -$6.1M -0.4% | $100K 0.0% | -$1.6M -0.1% | -$3.6M -0.2% |
| Pretax Income | $241.3M 8.4% | $130.0M 5.1% | $195.9M 8.5% | $316.2M 14.1% | $83.6M 4.1% | $138.2M 7.1% | $146.8M 8.5% | $95.0M 6.5% | $130.1M 8.9% | $197.2M 11.6% |
| Income Tax Expense | $32.9M 1.1% | $36.3M 1.4% | $36.7M 1.6% | $70.4M 3.1% | $14.0M 0.7% | $31.6M 1.6% | $33.5M 1.9% | $19.3M 1.3% | $40.4M 2.8% | $74.2M 4.4% |
| Net Income | $208.4M 7.2% | $93.7M 3.6% | $159.2M 6.9% | $245.8M 11.0% | $69.6M 3.4% | $106.6M 5.5% | $113.3M 6.5% | $75.7M 5.2% | $89.7M 6.1% | $123.0M 7.2% |
| Per Share | ||||||||||
| EPS (Basic) | $4.25 | $1.92 | $3.27 | $5.08 | $1.44 | $2.20 | $2.34 | $1.55 | $1.84 | $2.52 |
| EPS (Diluted) | $4.24 | $1.91 | $3.26 | $5.05 | $1.42 | $2.18 | $2.32 | $1.54 | $1.84 | $2.52 |
| Weighted Avg Shares (Basic) | 48.9M | 48.6M | 48.5M | 48.2M | 48.1M | 48.0M | 47.9M | 48.8M | 48.8M | 48.8M |
| Weighted Avg Shares (Diluted) | 49.0M | 48.8M | 48.7M | 48.5M | 48.6M | 48.5M | 48.4M | 48.9M | 48.8M | 48.8M |
Source: SEC EDGAR XBRL filings (annual, fiscal year). Quarterly flow items are derived from cumulative filings; balance-sheet figures are as-of each period end. Ratios and margins are computed, not reported.
How much the company owes, how it's trended, and how comfortably it's serviced.
Green ≤ 1.5× · amber ≤ 3× · red > 3× (leverage relative to cash earnings).
Coverage is adequate but not comfortable. Effective rate ~7.1% on $1.52B of debt.
Cash vs short-term debt unavailable.
Short-term / long-term split not separately reported.
Debt, cash, interest and equity from the SEC balance sheet & income statement. Effective rate = interest ÷ average debt. Educational — not a recommendation.
EOD close · as of 2026-10-08
Where each multiple sits in its own 8-yr range · 91th pct blended
Dot = today · shaded = middle 50% · line = median. Lower percentile = cheaper vs its own 8-yr history.
Is the profit real, and how strong is the balance sheet?
FY2025 · every deduction from revenue to net income
DuPont — the three levers
ROE 8% against ROIC 5% — 3% of the return on equity comes from leverage and buybacks rather than from the operating business.
What the company owes vs. what it holds
This shows debt/cash structure and net leverage. The year-by-year maturity schedule is on the Debt & Leverage tab.
Latest year: profit growth vs revenue growth
High operating leverage: profit moved 6.0× as fast as sales — great in an upturn, painful in a downturn.
Each line as % of revenue — the trend in color
| % of revenue | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 |
|---|---|---|---|---|---|---|---|---|
| Cost of Revenue | 81.4 | 80.9 | 80.3 | 82.5 | 81.7 | 80.8 | 80.0 | 77.6 |
| Gross Profit | — | — | — | — | — | 19.2 | 20.0 | 22.4 |
| SG&A | 10.5 | 10.3 | 11.5 | 12.6 | 11.7 | 11.3 | 12.5 | 10.7 |
| Operating Income | 6.5 | 8.8 | 7.8 | 5.3 | 15.6 | 9.4 | 7.7 | 11.9 |
| Income Tax | 1.3 | 1.9 | 1.6 | 0.7 | 3.1 | 1.6 | 1.4 | 1.1 |
| Net Income | 5.2 | 6.5 | 5.5 | 3.4 | 11.0 | 6.9 | 3.6 | 7.2 |
Green = margin-favorable vs the row's own range · red = unfavorable.
The metrics that matter, over time
A 30-second read on ACA: price, valuation and headline fundamentals from SEC filings. The four questions at the top of the page are where the judgements live.
Earns -3.39pts against its cost of capital — capital is being consumed, not created.
| Period | ROIC | Cost of capital | Spread |
|---|---|---|---|
| FY2019 | 7.2% | 10.1% (today's — no rate published for this year) | -2.8pts |
| FY2020 | 5.8% | 10.1% (today's — no rate published for this year) | -4.3pts |
| FY2021 | 3.3% | 6.4% | -3.1pts |
| FY2022 | 10.5% | 8.1% | 2.4pts |
| FY2023 | 6.0% | 7.5% | -1.5pts |
| FY2024 | 3.9% | 10.2% | -6.3pts |
| FY2025 | 6.7% | 9.9% | -3.2pts |
| Now | 5.0% | 10.1% | -5.0pts |
| Fiscal year | Gross margin | Operating margin | Net margin |
|---|---|---|---|
| FY2016 | 20.4% | 11.8% | 7.2% |
| FY2017 | 20.2% | 9.0% | 6.1% |
| FY2018 | 18.6% | 6.5% | 5.2% |
| FY2019 | 19.1% | 8.8% | 6.5% |
| FY2020 | 19.7% | 7.8% | 5.5% |
| FY2021 | 17.5% | 5.3% | 3.4% |
| FY2022 | 18.3% | 15.6% | 11.0% |
| FY2023 | 19.2% | 9.4% | 6.9% |
| FY2024 | 20.0% | 7.7% | 3.6% |
| FY2025 | 22.4% | 11.9% | 7.2% |
Leverage and buybacks account for 3 points of the 8% return on equity in FY2025. The business earns 5% on the capital it employs; the rest is balance sheet.
ROE is on average equity; ROIC is NOPAT over average invested capital (debt plus equity less excess cash). The gap is not a single adjustment.
$1.3B of goodwill — 33% of invested capital. The gap is what was paid above the fair value of what was bought; it is real capital shareholders provided, so neither bar is the whole answer.
ROIC ex-goodwill is 9.92% against 6.66% reported — the return is earned on a capital base inflated by what was paid for acquisitions, not by the operating business alone.
Converts 1.17x of reported profit into free cash flow over 5 years, with accruals negative.
Reported free cash flow is $176M; after share-based compensation it is $149M. The difference is a real cost that the cash flow statement adds back.
Covers interest 2.2x under stress — adequate, without much room.
| EBITDA decline | Interest coverage |
|---|---|
| 0% | 3.14x |
| 5% | 2.99x |
| 10% | 2.83x |
| 15% | 2.67x |
| 20% | 2.51x |
| 25% | 2.36x |
| 30% | 2.20x |
| 35% | 2.04x |
| 40% | 1.89x |
| 45% | 1.73x |
| 50% | 1.57x |
| 55% | 1.41x |
| 60% | 1.26x |
Balance sheet at 2025-12-31. Undrawn revolving credit is not shown: the tag is collected but not yet mapped through to the API.
The maturity schedule is not part of this verdict — its filing anchor is often older than the balance sheet it sits beside, so a wall inside 24 months may not be visible here.
At $146.50, free cash flow must compound 19.49%/yr for 10 years. It has done -7.12%/yr over 6 years.
| Fiscal year | FCF growth | Price requires |
|---|---|---|
| FY2020 | −35.0% | 19.5% |
| FY2021 | −54.2% | 19.5% |
| FY2022 | −55.4% | 19.5% |
| FY2023 | 58.4% | 19.5% |
| FY2024 | 443.1% | 19.5% |
| FY2025 | −43.8% | 19.5% |
The implied rate has been matched or beaten in 2 of the last 6 years.
| Step | Amount | Running total |
|---|---|---|
| Net income | $208M | $208M |
| Share-based comp | $26M | $235M |
| Other non-cash & working capital | $106M | $341M |
| Operating cash flow | $341M | $341M |
| Capex | −$166M | $176M |
| Free cash flow | $176M | $176M |
| FCF after SBC | $149M | $149M |
| Fiscal year | Revenue growth | Receivables growth | Gap |
|---|---|---|---|
| FY2020 | 11.4% | 30.1% | 18.7 points |
| FY2021 | 5.2% | 19.4% | 14.2 points |
| FY2022 | 10.1% | 7.5% | -2.6 points |
| FY2023 | 2.9% | 6.8% | 3.9 points |
| FY2024 | 11.3% | -1.9% | -13.3 points |
| FY2025 | 12.2% | 17.8% | 5.6 points |
| Fiscal year | DSO | DIO | DPO | Cash conversion cycle |
|---|---|---|---|---|
| FY2019 | 42 days | 73.6 days | 23.4 days | 92.3 days |
| FY2020 | 49.1 days | 65 days | 33.9 days | 80.2 days |
| FY2021 | 55.7 days | 70.5 days | 40.1 days | 86.1 days |
| FY2022 | 54.4 days | 62.9 days | 38 days | 79.3 days |
| FY2023 | 56.5 days | 78.7 days | 53.4 days | 81.8 days |
| FY2024 | 49.7 days | 63.9 days | 42.2 days | 71.5 days |
| FY2025 | 52.2 days | 54.8 days | 34.8 days | 72.2 days |
| Fiscal year | Accruals / assets |
|---|---|
| FY2019 | -10.7 percent |
| FY2020 | -5.8 percent |
| FY2021 | -3.0 percent |
| FY2022 | 2.1 percent |
| FY2023 | -2.9 percent |
| FY2024 | -8.3 percent |
| FY2025 | -2.7 percent |
SBC is added back inside operating cash flow, so reported free cash flow treats shares issued to employees as free. Percent of revenue says how expensive the payroll is; percent of operating cash flow says how much of the cash exists only because the charge was added back. The buyback offset is buybacks over SBC — below 1.0 the repurchase does not cover the shares issued.
Figures are the latest fiscal year (FY2025) from the company's own filings, not a trailing-twelve-month window — Q2 reads fiscal years throughout so the cash-conversion ratios and these share one basis. A blank is a line the filer did not report; it is never read as zero.
Total return (dividends reinvested) vs the market, from quarter-end prices.
Above 0 = ahead of the S&P 500 since the window start; below 0 = behind. Rising means it's pulling ahead.
How far the stock fell below its prior peak. Deeper, longer drawdowns = a rougher ride to the same return.
Quarter-end, dividend-adjusted (total return). Beta & volatility from quarterly returns (annualized). Benchmark is the S&P 500 (SPY total return). Annual returns compound the quarters ending in each calendar year; the first and last years in a window may be partial. Past performance doesn't predict future results.