Pfizer (PFE) Return on Sales [ROS] (2009 - 2026)
Pfizer (PFE) recorded Return on Sales [ROS] of 28.37% in Q2 2026, down 6.11 percentage points from 34.48% a year earlier and down 8.67 percentage points from the prior quarter.
Pfizer (PFE) Return on Sales [ROS] (2009 - 2026) Analysis & Trends
On a TTM basis, Pfizer's Return on Sales [ROS] came in at 32.02% as of Jun 28, 2026, up 0.54 percentage points year-over-year; for FY2025, it came in at 33.13%, up 5.14 percentage points from FY2024.
- Annual Return on Sales [ROS] has a five-year change of +3.64 percentage points (FY2020 to FY2025).
- Across earlier years, Return on Sales [ROS] came in at 27.98% in FY2024 (+17.56 pp), 10.42% in FY2023 (-29.46 pp), 39.88% in FY2022 (+7.16 pp) and 32.73% in FY2021 (+3.24 pp).
- Quarterly Return on Sales [ROS] has ranged from -20.25% in Q4 2023 to 47.01% in Q2 2022 over the past five years.
- On a year-over-year basis, Return on Sales [ROS] rose in five of the last seven quarters, with an average year-over-year change of +8.53 percentage points.
- Peak year-over-year performance for Return on Sales [ROS] in the last five years was a gain of 41.61 percentage points in Q4 2024, against a drop of 20.79 percentage points in Q2 2023 at the low end.
- Per Business Quant, the preceding three quarters came in at 37.04% (Q1 2026), 24.56% (Q4 2025) and 38.81% (Q3 2025).
Peer Comparison
| # | Company | Market Cap | Enterprise Value | Gross Profit (Qtr) | ROS (Qtr) |
|---|---|---|---|---|---|
| 1 | Johnson & Johnson | 653.54 Bn | 572.07 Bn | 17.26 Bn | 28.21% |
| 2 | AbbVie | 467.01 Bn | 440.17 Bn | 12.70 Bn | 37.86% |
| 3 | Merck | 367.16 Bn | 321.59 Bn | 12.21 Bn | -3.52% |
| 4 | Novartis Ag | 277.56 Bn | 233.43 Bn | 11.24 Bn | 32.97% |
| 5 | Astrazeneca | 258.23 Bn | 231.79 Bn | 12.86 Bn | 20.57% |
| 6 | Amgen | 224.14 Bn | 179.54 Bn | 7.24 Bn | 34.95% |
| 7 | Gilead Sciences | 187.30 Bn | 161.42 Bn | 6.22 Bn | -133.21% |
| 8 | Pfizer | 163.47 Bn | 110.41 Bn | 10.94 Bn | 28.37% |
| 9 | Vertex Pharmaceuticals | 133.31 Bn | 105.31 Bn | 2.84 Bn | 37.40% |
| 10 | Bristol Myers Squibb | 128.45 Bn | 79.72 Bn | 9.25 Bn | 2.77% |
Historic Data
| Date | Value |
|---|---|
| Jun 28, 2026 | 28.37% |
| Mar 29, 2026 | 37.04% |
| Dec 31, 2025 | 24.56% |
| Sep 28, 2025 | 38.81% |
| Jun 29, 2025 | 34.48% |
| Mar 30, 2025 | 36.15% |
| Dec 31, 2024 | 21.36% |
| Sep 29, 2024 | 35.50% |
| Jun 30, 2024 | 17.44% |
| Mar 31, 2024 | 36.36% |
| Dec 31, 2023 | -20.25% |
| Jul 2, 2023 | 26.22% |
| Apr 2, 2023 | 41.77% |
| Jul 3, 2022 | 47.01% |
| Apr 3, 2022 | 41.27% |
| Oct 3, 2021 | 32.77% |
| Jul 4, 2021 | 35.70% |
| Apr 4, 2021 | 38.34% |
| Dec 31, 2020 | 18.87% |
| Sep 27, 2020 | 32.28% |
Pfizer 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=PFE&period=max&api_key=YOUR_API_KEY
import requests
url = "https://data.businessquant.com/historic"
params = {"slug": "return-on-sales-[ros]", "ticker": "PFE", "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=PFE&period=max&api_key=YOUR_API_KEY");
const data = await res.json();