FIX

Comfort Systems USA, Inc. ·NYSE·Industrials
1,738.99 live · 2026-08-12 15:59
42.8%
Brown Bear Score
69.6%
Business Conviction Score
24.3%
Position Health Score
25.5%
Chase Risk
Daily closes

Daily closes · 1Y (252 sessions) · +142.0% · range 680.86–2,066.51

The Businesswhat the company reports

Business & cash flow

FCF / assets 16.0%
OCF / assets 18.4%
FCF / revenue 13.0%
Gross margin 25.7%
ROIC 42.7%
Forward P/E 29.0

FCF/assets and OCF/assets are the cash-flow measures Brown Bear's own testing found to survive; FCF/revenue is shown alongside for context. Assets are from the latest annual filing (FY2025).

Price vs Earnings growth

Price has run ahead of forward EPS growth by 98.7pp

Confidence 95.0/100

Takeaway Price has moved further than forward earnings growth currently justifies — worth weighing against the rest of the entry case.

Reported earnings

Next report 2026-10-21 · consensus EPS 13.00

Q3 23 revenue: 1.38bnQ3 23 net income: 105.12mQ3 23 EPS: 2.93Q4 23 revenue: 1.36bnQ4 23 net income: 91.58mQ4 23 EPS: 2.55Q4 23Q1 24 revenue: 1.54bnQ1 24 net income: 96.32mQ1 24 EPS: 2.69Q2 24 revenue: 1.81bnQ2 24 net income: 134.01mQ2 24 EPS: 3.74Q2 24Q3 24 revenue: 1.81bnQ3 24 net income: 146.24mQ3 24 EPS: 4.09Q4 24 revenue: 1.87bnQ4 24 net income: 145.87mQ4 24 EPS: 4.08Q4 24Q1 25 revenue: 1.83bnQ1 25 net income: 169.29mQ1 25 EPS: 4.75Q2 25 revenue: 2.17bnQ2 25 net income: 230.85mQ2 25 EPS: 6.53Q2 25Q3 25 revenue: 2.45bnQ3 25 net income: 291.62mQ3 25 EPS: 8.25Q4 25 revenue: 2.65bnQ4 25 net income: 330.81mQ4 25 EPS: 9.34Q4 25Q1 26 revenue: 2.87bnQ1 26 net income: 370.38mQ1 26 EPS: 10.51Q2 26 revenue: 3.27bnQ2 26 net income: 441.60mQ2 26 EPS: 12.53Q2 26

Revenue Net incomeEPS (GAAP) (2.55–12.53, own scale) Derived Q4

12 quarters to Q2 26. Revenue and net income share one scale, so the gap between them is the margin. The line is GAAP EPS — it spans every quarter shown, where the reported figure only goes back as far as the consensus feed does.

Quarter endingRevenueYoY Net incomeEPS (GAAP) EPS reportedvs consensus Filed
2026-06-30 3.27bn +50.3% 441.60m 12.53 12.53 +18.7% 2026-07-23
2026-03-31 2.87bn +56.5% 370.38m 10.51 10.51 +52.9% 2026-04-23
2025-12-31 (derived) 2.65bn +41.7% 330.81m 9.34 9.37 +37.3% 2026-02-19
2025-09-30 2.45bn +35.2% 291.62m 8.25 8.25 +31.1% 2025-10-23

Earnings response

Typical move around a filing ±8.8%
On an ordinary two days ±2.1% — filings move it 4.1× as much
Direction 8 up, 4 down over 12 filings
Revenue change and price reaction, by quarter
Q3 22 revenue +34.3% year on yearQ3 22 filed 2022-10-26: price +7.5%Q1 23 revenue +32.7% year on yearQ1 23 filed 2023-04-26: price +12.9%Q1 23Q2 23 revenue +27.4% year on yearQ2 23 filed 2023-07-26: price -1.3%Q3 23 revenue +23.0% year on yearQ3 23 filed 2023-10-26: price +15.6%Q3 23Q1 24 revenue +30.8% year on yearQ1 24 filed 2024-04-25: price -2.2%Q2 24 revenue +39.6% year on yearQ2 24 filed 2024-07-25: price +3.3%Q2 24Q3 24 revenue +31.5% year on yearQ3 24 filed 2024-10-24: price -10.1%Q1 25 revenue +19.1% year on yearQ1 25 filed 2025-04-24: price +11.7%Q1 25Q2 25 revenue +20.1% year on yearQ2 25 filed 2025-07-24: price +25.7%Q3 25 revenue +35.2% year on yearQ3 25 filed 2025-10-23: price +24.1%Q3 25Q1 26 revenue +56.5% year on yearQ1 26 filed 2026-04-23: price +0.1%Q2 26 revenue +50.3% year on yearQ2 26 filed 2026-07-23: price -3.2%Q2 26

Revenue up year on year Revenue down Price move around the filing separate scales — a crossing means nothing

Quarter endingFiledRevenue YoY Move around filingNext 20 sessions vs SPY
2026-06-30 2026-07-23 +50.3% -3.2%
2026-03-31 2026-04-23 +56.5% +0.1% +1.5%
2025-09-30 2025-10-23 +35.2% +24.1% -6.2%
2025-06-30 2025-07-24 +20.1% +25.7% -1.1%

Share count

Diluted shares over time

Diluted shares Return since the previous filing

Direction Flat — little net change
Diluted shares 35.3M as at 2026-06-30
Change over 1 year -0.3%
Change over 3 years -1.8%
Public float $18.64bn as at 2025-06-30 (10-K)

The Pricewhat the chart is doingTop ↑

Price Levels

StrategyFair Value Anchor
Reference band 1,445.40 — 1,747.51
Protective stop 1,351.94 (Atr, 15.3% risk)
Support 1,668.02 (2 touches, 4.2% away)
Resistance 1,823.48 (4.9% away)

Takeaway The shares are nearer the floor than the ceiling: about 4.2% above 1,668.02, a price buyers have stepped in at before, and 4.9% below 1,823.48, where sellers have turned up before. That floor has held 2 times, which is how it was spotted. If someone bought at today's price and sold if it dropped through the level below, they would be about 15.3% out of pocket. That is all this figure means — an illustration of the risk, not a price to sell at.

Levels are computed from price structure. They describe where the engine locates support and extension — they are not targets, and not advice.

Ichimoku Cloud (Adaptive)

Daily cloudPrice INSIDE the cloud | periods 5/14/29 (55% of classic 9/26/52)
LinesTenkan/Kijun BEAR | cloud twist BULL (fresh up, 1d ago)
Cloud thickness60% percentile
Chikou spanNot clear of price from 26 periods ago
Weekly cloudPrice INSIDE the weekly cloud (context only, not scored)

Takeaway The stock is trading inside its cloud — a shaded band drawn from several of its own moving averages, currently 1,688.83 to 1,739.90. Inside the band those averages disagree with each other, so the indicator is not saying much either way. Its shorter-term averages agree with that.

Trailing returns

21 days -2.0%
63 days -13.8%
126 days +37.0%
252 days +150.8%
Below 252d high15.9%

Trend context

PositionFar above trend
ExtensionExtremely extended
Trend slopeFlat
Direction of travelDiverging from trend

Takeaway Extreme upside extension is still moving away from fair trend; chase risk is elevated.

Volatility

State No recent compression
Current band width15.4% of price
Recent tightest15.4% (4 sessions ago, narrower than 78.0% of its history)
Expansion since1.00×
Band 1,582.35 — 1,847.06

Takeaway Lately this share price has been swinging around inside a range roughly 15% wide. That is normal for this stock, so there is nothing unusual to read into it either way.

Historical trends

0255075100Share price 1,519.96–1,793.032026-07-032026-08-12
Position Health Business Conviction Share price

History begins when the site started recording, not when the company listed, so a short line means a short record and nothing more.

Repair Pathway

  1. Nearest Trigger EMA50 reclaim +0.9% gap is improving · Broadly stable
  2. Trigger 2 MACD histogram acceleration turns positive repair trigger repair engine identifies this as the nearest technical repair catalyst · Deteriorating rapidly
  3. Trigger 3 Relative strength stabilisation state change relative momentum rank supports RS stabilisation · Broadly stable
  4. Trigger 4 Volume confirmation above 1.2x +0.20x volume confirmation would improve confidence in the pathway · Broadly stable
  5. Trigger 5 RSI recovery above 50 secondary repair secondary repair catalyst could add confirmation if the primary trigger develops · Deteriorating rapidly

Who's Tradingthe flow behind the priceTop ↑

Insider activity

ActivityNo filings in the window
Buy filings0
Sell filings0

Open-market Form 4 purchases and sales over the last 75 days, read from SEC EDGAR Form 4. Grants, option exercises, gifts and shares withheld for tax are excluded — they are compensation mechanics, not a decision to buy or sell. Reported Form 4 activity. Brown Bear tested insider cluster-buying as a return signal and rejected it as era-unstable; shown as fact, not signal.

Volume confirmation

Volume-price trend Below its signal line
Confirmation Marginal

No absorption or distribution event in the recent window.

Takeaway The heaviest trading has been happening on days when the price falls: when large numbers of shares change hands, the price has tended to go down rather than up. That tells you where the weight of trading has been. It does not tell you what happens next, and it is not a signal to sell.

Options Positioning

No binary-event flag

FIX: no binary-event flag. Near IV 56%, far IV 58% (ratio 0.96), implied move 7.0%.

Implied volatility 56% near (9d) · 58% far (65d)
Term structure 0.96× near/far
Historical volatility 64%
Implied vs historical 0.88×
Implied move ±7.0% by 2026-08-21
Implied move vs ATR 0.42×
Skew Flat (1.10×)
Call wall 2,000.00 (+15.0% away)
Put wall 1,480.00 (-14.9% away)
Gamma pin 1,480.00

Takeaway Insuring against a move in this stock costs less for the next few weeks than for the next few months, which is the normal state of affairs and suggests no particular date is worrying anyone. Options traders are positioned for a move of around 7.0% in either direction by 2026-08-21.

Chain as at 2026-08-12. This is a risk read on whether a specific event is being priced — not a directional view.

Context & Methodthe record, and how it was builtTop ↑

Relative Rotation

ImprovingLeadingLaggingWeakeningvs sectorvs SPYsector vs SPYRS-Ratio →RS-Momentum →

Mixed Rotation Phase

Rotation health 49.0/100; Mixed Rotation.

Rotation health 49.0
Rotation strength 62.3
LegQuadrantRS-RatioRS-Mom
Stock vs sector Weakening 109.7 88.2
Stock vs SPY Weakening 101.6 87.1
Sector vs SPY Improving 87.2 105.9

Direction of travel: South-East / trend strong but momentum cooling

Position only. Brown Bear's RRG redesign programme is closed — five constructions, none beat an appropriate null — so this section describes where the name sits, and is not a signal.

News Headlines

  1. Loading headlines\u2026

Headlines are supplied by third-party feeds and are not written, ranked or interpreted by Brown Bear. They feed no score on this page.

Detailed Scoring

Positive signals

  • Piotroski F-score 6/9 (+15.0)
  • Altman Z-score 16.13 (+10.0)
  • Insider conviction score (+3.0)
  • Gross margin quality: 25.7% (+2.1)
  • ROIC quality: 42.7% (+30.0)
  • FCF margin quality: 13.0% (+8.7)
  • Gross margin improving by 4.7 pts (+2.0)
  • ROIC improving by 11.1 pts (+8.0)
  • High earnings quality (accrual ratio -0.025) (+2.0)
  • Track 1: MACD histogram state (5.46) (+8.0)
  • Track 1: 20-day momentum acceleration 0.11 (+6.0)
  • Track 1: relative momentum rank 0.97 (+5.0)
  • Track 1: EMA20 reclaim distance 0.7% (+7.4)
  • Track 1: MACD line/signal repair quality (+8.0)
  • Track 1: MACD slope improving (+5.0)
  • Track 1: EMA50 support proximity 0.9% (+4.2)
  • Track 1: Bollinger position 0.59 (+3.3)

Negative signals

  • Track 1: weak volume confirmation (0.60x average)
  • Track 1: bearish DI spread (-10.1)
  • Track 1: weak/falling ADX (17.2, falling)
  • Track 1: EMA20 slope deteriorating -0.9%
  • Track 1: MACD histogram deteriorating (-4.17)
  • Track 1: RSI deterioration/extension 43.7, 5-day change -10.0
  • Track 1: weak VPT confirmation (-0.00)
  • Track 1: price below EMA50 by 0.9%
  • Track 1: EMA50 slope deteriorating -1.0%

Chase risk is not elevated for this name, so extension penalties are omitted from the negative signals above.