3M (MMM) Gross Margin (2009 - 2026)
3M's Gross Margin was 41.28% in Q2 2026, down 1.25 percentage points from 42.53% a year earlier but up 0.55 percentage points from the prior quarter.
3M (MMM) Gross Margin (2009 - 2026) Analysis & Trends
On a trailing twelve-month basis, 3M's Gross Margin was 39.40% through Jun 30, 2026, down 1.60 percentage points year-over-year; for FY2025, it was 39.91%, down 1.30 percentage points from FY2024.
- Gross Margin shows a five-year change of -8.50 percentage points (FY2020 to FY2025).
- In earlier years, Gross Margin was 41.21% in FY2024 (+2.09 pp), 39.12% in FY2023 (-0.28 pp), 39.40% in FY2022 (-7.44 pp) and 46.84% in FY2021 (-1.57 pp).
- Quarterly Gross Margin has moved between -10863.64% (Q4 2022) and 45.73% (Q3 2021) over five years.
- Compared with a year earlier, Gross Margin has declined for six straight quarters, with an average year-over-year change of -0.64 percentage points over the last eight quarters.
- The best year-over-year quarter for Gross Margin over five years was Q4 2023 (a gain of 10900.41 percentage points); the worst was Q4 2022 (a drop of 10909.08 percentage points).
- Per Business Quant data, MMM's Gross Margin in the three quarters before Q2 2026 was 40.73% (Q1 2026), 33.56% (Q4 2025) and 41.81% (Q3 2025).
Peer Comparison
| # | Company | Market Cap | Enterprise Value | Gross Profit (Qtr) | Gross Margin (Qtr) |
|---|---|---|---|---|---|
| 1 | Caterpillar | 380.10 Bn | 351.79 Bn | 7.76 Bn | 37.78% |
| 2 | Amphenol | 208.03 Bn | 202.73 Bn | 3.55 Bn | 40.51% |
| 3 | Deere | 183.47 Bn | 192.23 Bn | 4.66 Bn | 36.94% |
| 4 | Eaton | 168.26 Bn | 165.49 Bn | 2.86 Bn | 33.47% |
| 5 | Parker-Hannifin | 122.34 Bn | 120.47 Bn | 2.25 Bn | 39.04% |
| 6 | Vertiv Holdings | 95.63 Bn | 86.25 Bn | 1.23 Bn | 37.71% |
| 7 | Emerson Electric | 87.72 Bn | 80.47 Bn | 2.66 Bn | 54.48% |
| 8 | 3M | 86.87 Bn | 68.33 Bn | 2.68 Bn | 41.28% |
| 9 | Illinois Tool Works | 76.08 Bn | 72.64 Bn | 1.90 Bn | 44.13% |
| 10 | Cummins | 71.78 Bn | 68.92 Bn | 2.47 Bn | 26.07% |
Historic Data
| Date | Value |
|---|---|
| Jun 30, 2026 | 41.28% |
| Mar 31, 2026 | 40.73% |
| Dec 31, 2025 | 33.56% |
| Sep 30, 2025 | 41.81% |
| Jun 30, 2025 | 42.53% |
| Mar 31, 2025 | 41.59% |
| Dec 31, 2024 | 37.70% |
| Sep 30, 2024 | 42.06% |
| Jun 30, 2024 | 42.91% |
| Mar 31, 2024 | 42.07% |
| Dec 31, 2023 | 36.77% |
| Sep 30, 2023 | 40.73% |
| Jun 30, 2023 | 40.67% |
| Mar 31, 2023 | 38.17% |
| Dec 31, 2022 | -10,863.64% |
| Sep 30, 2022 | 45.14% |
| Jun 30, 2022 | 41.47% |
| Mar 31, 2022 | 45.34% |
| Dec 31, 2021 | 45.45% |
| Sep 30, 2021 | 45.73% |
3M Gross 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=gross-margin&ticker=MMM&period=max&api_key=YOUR_API_KEY
import requests
url = "https://data.businessquant.com/historic"
params = {"slug": "gross-margin", "ticker": "MMM", "period": "max", "api_key": "YOUR_API_KEY"}
data = requests.get(url, params=params).json()
const res = await fetch("https://data.businessquant.com/historic?slug=gross-margin&ticker=MMM&period=max&api_key=YOUR_API_KEY");
const data = await res.json();