Cullen (CFR) Return on Sales [ROS] (2009 - 2026)
Cullen (CFR) recorded Return on Sales [ROS] of 62.68% in Q3 2026, down 5.46 percentage points from 68.13% a year earlier but up 1.64 percentage points from the prior quarter.
Cullen (CFR) Return on Sales [ROS] (2009 - 2026) Analysis & Trends
On a TTM basis, Cullen's Return on Sales [ROS] came in at 32.65% as of Sep 30, 2026, up 1.05 percentage points year-over-year; for FY2025, it was 65.15%, down 6.66 percentage points from FY2024.
- Annual Return on Sales [ROS] has a five-year change of +37.65 percentage points (FY2020 to FY2025).
- Across earlier years, Return on Sales [ROS] came in at 71.81% in FY2024 (+2.80 pp), 69.01% in FY2023 (+18.71 pp), 50.31% in FY2022 (+12.87 pp) and 37.43% in FY2021 (+9.94 pp).
- Quarterly Return on Sales [ROS] has ranged from -74.82% in Q4 2024 to 73.80% in Q3 2023 over the past five years.
- On a year-over-year basis, Return on Sales [ROS] has declined for three consecutive quarters, with an average year-over-year change of -18.79 percentage points over the last eight quarters.
- Peak year-over-year performance for Return on Sales [ROS] in the last five years was a gain of 34.61 percentage points in Q1 2023, against a drop of 136.91 percentage points in Q4 2024 at the low end.
- Per Business Quant, the preceding three quarters came in at 61.04% (Q2 2026), 59.47% (Q1 2026) and -53.27% (Q4 2025).
Peer Comparison
| # | Company | Market Cap | Enterprise Value | Gross Profit (Qtr) | ROS (Qtr) |
|---|---|---|---|---|---|
| 1 | Jpmorgan Chase | 909.02 Bn | 886.77 Bn | - | 91.99% |
| 2 | Banco Santander Chile | 406.67 Bn | -7,110.43 Bn | - | - |
| 3 | Bank Of America | 350.91 Bn | -2,025.20 Bn | - | 89.38% |
| 4 | Hsbc Holdings | 308.71 Bn | -2,966.46 Bn | - | 48.15% |
| 5 | Morgan Stanley | 293.66 Bn | -249.15 Bn | - | 95.47% |
| 6 | Royal Bank Of Canada | 283.56 Bn | -546.44 Bn | - | 138.04% |
| 7 | Goldman Sachs | 262.71 Bn | -3,480.74 Bn | - | 139.33% |
| 8 | Wells Fargo & Company | 257.44 Bn | 92.87 Bn | - | 84.54% |
| 9 | Mitsubishi Ufj Financial | 256.82 Bn | -75.42 Bn | 10.89 Bn | 51.45% |
| 10 | Cullen | 9.84 Bn | -19.92 Bn | - | 62.68% |
Historic Data
| Date | Value |
|---|---|
| Sep 30, 2026 | 62.68% |
| Jun 30, 2026 | 61.04% |
| Mar 31, 2026 | 59.47% |
| Dec 31, 2025 | -53.27% |
| Sep 30, 2025 | 68.13% |
| Jun 30, 2025 | 65.64% |
| Mar 31, 2025 | 64.42% |
| Dec 31, 2024 | -74.82% |
| Sep 30, 2024 | 73.17% |
| Jun 30, 2024 | 73.78% |
| Mar 31, 2024 | 71.20% |
| Dec 31, 2023 | 62.09% |
| Sep 30, 2023 | 73.80% |
| Jun 30, 2023 | 71.79% |
| Mar 31, 2023 | 68.55% |
| Dec 31, 2022 | 64.65% |
| Sep 30, 2022 | 54.96% |
| Jun 30, 2022 | 40.97% |
| Mar 31, 2022 | 33.93% |
| Dec 31, 2021 | 33.55% |
Cullen Return on Sales [ROS] API
Pull this series into your own models, spreadsheets and apps with the Business Quant
Historical Metrics API. The request below matches the chart above — change the
frequency, period or values and it follows. Swap YOUR_API_KEY for your own key.
https://data.businessquant.com/historic?slug=return-on-sales-%5Bros%5D&ticker=CFR&period=max&api_key=YOUR_API_KEY
import requests
url = "https://data.businessquant.com/historic"
params = {"slug": "return-on-sales-[ros]", "ticker": "CFR", "period": "max", "api_key": "YOUR_API_KEY"}
data = requests.get(url, params=params).json()
const res = await fetch("https://data.businessquant.com/historic?slug=return-on-sales-%5Bros%5D&ticker=CFR&period=max&api_key=YOUR_API_KEY");
const data = await res.json();