Compare sales with the profit left after direct costs and the profit left after all expenses and taxes.Formula: Gross profit = revenue − cost of revenue
Net income = total income − total expenses
Latest period Q2 '26. Revenue 503.33M. Gross profit 249.29M. Net profit 86.19M.
RevenueGross profitNet profit
See which business lines, products, or regions generate the company’s sales.Formula: Company revenue = Σ(segment revenues) + reconciliation adjustments
Latest period Q2 '26. Detection 201.38M. Fire Service 161.89M. Industrial PPE And Other 140.06M.
Breathing ApparatusFall ProtectionFirefighter Helmetsand Protective ApparelFix Gas Flame Detection InstrumentsHead ProtectionOther ProductsPortable InstrumentsAmericasInternationalDetectionFire ServiceIndustrial PPE And Other
See how much of each dollar of sales remains after direct costs, after running the business, and after all expenses and taxes.Formula: Gross margin = gross profit ÷ revenue × 100%
Operating margin = operating income ÷ revenue × 100%
Net margin = net income ÷ revenue × 100%
Latest period Q2 '26. Gross margin 49.5%. Operating margin 22.2%. Net profit margin 17.1%.
Gross marginOperating marginNet profit margin
Revenue the company expects from promised goods or services it still needs to deliver under customer contracts.
Latest period Q2 '26. Remaining performance obligations 24.3M.
Remaining performance obligations
Compare cash generated by the business, spending on long-lived assets, and what remains afterward.Formula: Free cash flow = operating cash flow − capital expenditures
Compare the company’s cash cushion with its borrowings. Negative net cash means debt is greater than cash.Formula: Net cash = cash − debt
Latest period 2026. Cash 200.1M. Debt 599.7M.
CashDebtNet cash
See how the number of shares changes over time. More shares can mean each existing share owns a smaller slice of the company.Formula: Outstanding shares = issued shares − treasury shares
Share-count growth = (current shares ÷ previous shares − 1) × 100%
Stock split history may be out of date.
Latest period 2026. Shares outstanding 38.6M. Class detail unavailable 38.6M.