Royal Caribbean Cruises (RCL) Net Margin (2009 - 2026)
Royal Caribbean Cruises' Net Margin came in at 30.91% for Q3 2026, up 0.26 percentage points from 30.65% a year earlier and up 7.56 percentage points from the prior quarter.
Royal Caribbean Cruises (RCL) Net Margin (2009 - 2026) Analysis & Trends
Over the trailing twelve months to Sep 30, 2026, Royal Caribbean Cruises reported Net Margin of 23.78%, up 0.46 percentage points year-over-year; for FY2025, it came in at 23.80%, up 6.34 percentage points from FY2024.
- Net Margin has increased in each of the last four years, with a five-year change of +286.27 percentage points (FY2020 to FY2025).
- Going back by year, Net Margin was 17.45% in FY2024 (+5.24 pp), 12.21% in FY2023 (+36.60 pp), -24.39% in FY2022 (+318.95 pp) and -343.34% in FY2021 (-80.87 pp).
- The Q3 2026 figure represents the highest quarterly Net Margin in data going back to Q1 2009.
- Year-over-year, Net Margin increased in seven of the last eight quarters, with an average year-over-year change of +3.95 percentage points.
- The fastest year-over-year change in Net Margin over five years came in Q4 2021 (a gain of 3866.03 percentage points), and the weakest in Q2 2026 (a drop of 3.32 percentage points).
- Business Quant data shows RCL's Net Margin at 23.34% (Q2 2026), 21.14% (Q1 2026) and 17.70% (Q4 2025) in the three quarters before Q3 2026.
Peer Comparison
| # | Company | Market Cap | Enterprise Value | Gross Profit (Qtr) | Net Margin (Qtr) |
|---|---|---|---|---|---|
| 1 | Marriott International | 109.41 Bn | 107.68 Bn | 1.54 Bn | 11.33% |
| 2 | Royal Caribbean Cruises | 90.23 Bn | 87.16 Bn | 2.88 Bn | 30.91% |
| 3 | Hilton Worldwide Holdings | 83.56 Bn | 80.30 Bn | 3.05 Bn | 16.12% |
| 4 | Carnival | 41.76 Bn | 34.95 Bn | - | 22.76% |
| 5 | Viking Holdings | 38.86 Bn | 23.99 Bn | 996.62 Mn | 26.82% |
| 6 | Trip.com | 28.88 Bn | -16.15 Bn | 1.84 Bn | -15.64% |
| 7 | Intercontinental Hotels | 27.81 Bn | 23.78 Bn | - | - |
| 8 | Hyatt Hotels | 17.41 Bn | 14.83 Bn | 384.00 Mn | 3.33% |
| 9 | H World | 15.43 Bn | 6.84 Bn | 456.00 Mn | 22.10% |
| 10 | U-Haul Holding | 10.98 Bn | 6.62 Bn | 1.75 Bn | 7.71% |
Historic Data
| Date | Value |
|---|---|
| Sep 30, 2026 | 30.91% |
| Jun 30, 2026 | 23.34% |
| Mar 31, 2026 | 21.14% |
| Dec 31, 2025 | 17.70% |
| Sep 30, 2025 | 30.65% |
| Jun 30, 2025 | 26.66% |
| Mar 31, 2025 | 18.25% |
| Dec 31, 2024 | 14.68% |
| Sep 30, 2024 | 22.74% |
| Jun 30, 2024 | 20.78% |
| Mar 31, 2024 | 9.66% |
| Dec 31, 2023 | 8.32% |
| Sep 30, 2023 | 24.25% |
| Jun 30, 2023 | 13.03% |
| Mar 31, 2023 | -1.66% |
| Dec 31, 2022 | -19.21% |
| Sep 30, 2022 | 1.10% |
| Jun 30, 2022 | -23.88% |
| Mar 31, 2022 | -110.19% |
| Dec 31, 2021 | -138.12% |
Royal Caribbean Cruises Net Margin 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=net-margin&ticker=RCL&period=max&api_key=YOUR_API_KEY
import requests
url = "https://data.businessquant.com/historic"
params = {"slug": "net-margin", "ticker": "RCL", "period": "max", "api_key": "YOUR_API_KEY"}
data = requests.get(url, params=params).json()
const res = await fetch("https://data.businessquant.com/historic?slug=net-margin&ticker=RCL&period=max&api_key=YOUR_API_KEY");
const data = await res.json();