Vital Farms (VITL) Return on Sales [ROS] (2019 - 2026)
Vital Farms' Return on Sales [ROS] came in at -4.22% for Q3 2026, down 14.97 percentage points from 10.76% a year earlier but up 19.96 percentage points from the prior quarter.
Vital Farms (VITL) Return on Sales [ROS] (2019 - 2026) Analysis & Trends
Over the trailing twelve months to Sep 27, 2026, Vital Farms reported Return on Sales [ROS] of -3.84%, down 15.07 percentage points year-over-year; for FY2025, it came in at 11.64%, up 1.15 percentage points from FY2024.
- Return on Sales [ROS] has increased in each of the last four years, with a five-year change of +5.93 percentage points (FY2020 to FY2025).
- Going back by year, Return on Sales [ROS] was 10.48% in FY2024 (+3.43 pp), 7.05% in FY2023 (+6.47 pp), 0.58% in FY2022 (+0.56 pp) and 0.02% in FY2021 (-5.69 pp).
- The five-year range for quarterly Return on Sales [ROS] is -24.18% (Q2 2026) to 16.34% (Q1 2024).
- Year-over-year, Return on Sales [ROS] has declined for three consecutive quarters, with an average year-over-year change of -7.58 percentage points over the last eight quarters.
- The fastest year-over-year change in Return on Sales [ROS] over five years came in Q1 2023 (a gain of 14.45 percentage points), and the weakest in Q2 2026 (a drop of 37.06 percentage points).
- Business Quant data shows VITL's Return on Sales [ROS] at -24.18% (Q2 2026), -1.25% (Q1 2026) and 10.03% (Q4 2025) in the three quarters before Q3 2026.
Peer Comparison
| # | Company | Market Cap | Enterprise Value | Gross Profit (Qtr) | ROS (Qtr) |
|---|---|---|---|---|---|
| 1 | Unilever | 144.95 Bn | 98.82 Bn | - | - |
| 2 | Mondelez International | 84.23 Bn | 77.29 Bn | 3.92 Bn | 17.64% |
| 3 | Hershey | 34.99 Bn | 31.72 Bn | 1.51 Bn | 24.96% |
| 4 | Kraft Heinz | 28.72 Bn | 16.47 Bn | 1.99 Bn | 14.31% |
| 5 | General Mills | 18.50 Bn | 16.16 Bn | 1.49 Bn | 14.43% |
| 6 | J M Smucker | 14.27 Bn | 14.05 Bn | 979.60 Mn | 23.05% |
| 7 | Mccormick | 12.58 Bn | 12.23 Bn | 794.90 Mn | 10.72% |
| 8 | Hormel Foods | 12.22 Bn | 8.90 Bn | 471.52 Mn | 3.75% |
| 9 | Chewy | 9.17 Bn | 6.46 Bn | 1.01 Bn | 2.76% |
| 10 | Vital Farms | 429.78 Mn | 239.13 Mn | 42.14 Mn | -4.22% |
Historic Data
| Date | Value |
|---|---|
| Sep 27, 2026 | -4.22% |
| Jun 28, 2026 | -24.18% |
| Mar 29, 2026 | -1.25% |
| Dec 28, 2025 | 10.03% |
| Sep 28, 2025 | 10.76% |
| Jun 29, 2025 | 12.88% |
| Mar 30, 2025 | 13.42% |
| Dec 29, 2024 | 7.83% |
| Sep 29, 2024 | 6.37% |
| Jun 30, 2024 | 11.63% |
| Mar 31, 2024 | 16.34% |
| Dec 31, 2023 | 6.69% |
| Sep 24, 2023 | 4.74% |
| Jun 25, 2023 | 7.55% |
| Mar 26, 2023 | 9.14% |
| Dec 25, 2022 | 3.13% |
| Sep 25, 2022 | 2.20% |
| Jun 26, 2022 | 0.87% |
| Mar 27, 2022 | -5.30% |
| Dec 26, 2021 | -5.48% |
Vital Farms 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=VITL&period=max&api_key=YOUR_API_KEY
import requests
url = "https://data.businessquant.com/historic"
params = {"slug": "return-on-sales-[ros]", "ticker": "VITL", "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=VITL&period=max&api_key=YOUR_API_KEY");
const data = await res.json();