Grocery Outlet Holding Corp.
GO · Consumer Discretionary · $926.6M mkt cap · FY2025 filings · No moat ·
Doesn't clear the bar
The four filters
Median gross margin 30.5% over 9y, very stable.
Median ROIC 5.4%, above the 9% hurdle in 11% of years.
Net debt/EBITDA n/ax, interest coverage 0x.
Owner earnings trend unclear, share count growing (dilution).
Margin of safety
- Owner earnings (normalized)
- $62.3M
- Est. intrinsic value / share
- $7.05
- Recent price
- $9.44
- Discount to value
- 34% above value
Conservative model: 9% discount rate, 0% assumed growth (capped at 4%), maintenance capex ≈ min(capex, D&A).
10 years of fundamentals
The business, in plain English
Grocery Outlet Holding Corp. booked $4.7B of revenue in FY2025 in the Consumer Discretionary sector and kept 30.3% of it as gross profit — a moderate-margin business by that measure. After every other cost, −4.8% of each revenue dollar reached the bottom line.
Across the filed record, revenue grew from $2.1B (FY2017) to $4.7B (FY2025) — about 10.7% a year compounded over 8 years.
It earned −12.4% on invested capital in FY2025, with a median of 5.4% across 9 filed years. The Returns on Capital filter above scores it 6/100.
The balance sheet carried $492.9M of total debt in FY2025. Balance-Sheet Safety scores it 28/100.
The share count rose 10.3% between FY2019 and FY2025 — existing owners have been diluted over the record. Capital Discipline scores it 24/100.
Put together: Pricing Power is the strongest of the four filters (54/100) and Returns on Capital the weakest (6/100), which is how GO lands at 28/100 — a None moat.
This breakdown is generated from the filed numbers and sub-scores above — no outside narrative, no estimates. Where a filing doesn’t disclose an input, the sentence that would need it is omitted instead of guessed.
Gaps in a line mean that item isn’t in GO’s filings for that year — the series is never interpolated or estimated. The Table view lists every filed value, including operating and net margins, total debt, and share count.
Moat Score history
Score history begins Jul 17, 2026 — the record builds from here and can’t be backfilled.
Tier changesSame-methodology crossings of the Wide / Narrow / Shallow bars
None yet — GO has read No moat for every logged capture since Jul 17, 2026.
Scores are logged append-only and never overwritten — this record can’t be backfilled, which is exactly why it’s worth keeping.
Consumer Discretionary context
#275 of 340 scored Consumer Discretionary companies, ranked by Moat Score.
Nearest peers by Moat Score
- #273HLLY HOLLEY INC.28.5 out of 100, No moatNo moat
- #274GRWG GROWGENERATION CORP.28.3 out of 100, No moatNo moat
- #276PRTS CARPARTS.COM, INC.28.1 out of 100, No moatNo moat
- #277BBBY BED BATH & BEYOND, INC.28.0 out of 100, No moatNo moat
Compare GO with its nearest peers →All Consumer Discretionary companies on the Index →
Common questions about GO
- Does Grocery Outlet Holding Corp. have an economic moat?
- Based on its FY2025 SEC filings, the Moat Index scores Grocery Outlet Holding Corp. (GO) 28.3 out of 100 — below the Shallow-moat bar, so no moat. The four filters behind that score (each 0–100): pricing power 54, returns on capital 6, balance-sheet safety 28, capital discipline 24.
- Is GO stock trading below its intrinsic value?
- Against a deliberately conservative owner-earnings model (9% discount rate, 0% assumed growth, capped at 4%), estimated intrinsic value is $7.05 per share versus a recent price of $9.44 — 34% above value. This is an educational estimate computed from primary SEC filings, not investment advice.
- How has GO's Moat Score changed over time?
- The record logs 3 readings since Jul 17, 2026; the latest reads 28.3 out of 100 (no moat). No tier changes on record yet. The history is append-only — readings are only ever added, never rewritten.