The Moat Index

Massimo Group

MAMO · Consumer Discretionary · $39.6M mkt cap · FY2025 filings · Shallow moat ·

Doesn't clear the bar

56/ 100
Shallow moat

The four filters

Pricing power40

Median gross margin 30.5% over 4y, stable.

Returns on capital91

Median ROIC 34.7%, above the 9% hurdle in 75% of years.

Balance-sheet safety73

Net debt/EBITDA n/ax, interest coverage 44x.

Capital discipline12

Owner earnings -26.3%/yr, share count growing (dilution).

Margin of safety

Above valueOn sale
24% above value
Owner earnings (normalized)
$2.9M
Est. intrinsic value / share
$0.76
Recent price
$0.95
Discount to value
24% above value

Conservative model: 9% discount rate, 0% assumed growth (capped at 4%), maintenance capex ≈ min(capex, D&A).

5 years of fundamentals

The business, in plain English

Massimo Group booked $71.8M of revenue in FY2025 in the Consumer Discretionary sector and kept 37.5% of it as gross profit — a solid-margin business by that measure. After every other cost, 2.1% of each revenue dollar reached the bottom line.

It earned 8.2% on invested capital in FY2025, with a median of 34.7% across 4 filed years. The Returns on Capital filter above scores it 91/100.

The balance sheet carried $303583 of total debt in FY2023. Balance-Sheet Safety scores it 73/100.

Put together: Returns on Capital is the strongest of the four filters (91/100) and Capital Discipline the weakest (12/100), which is how MAMO lands at 56/100 — a Shallow 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.

FY2021–FY2025 · 5 fiscal years, normalized from MAMO’s SEC filings

RevenueSales, as filed$71.8M FY2025
$0$50M$100M202120232025
Gross marginRevenue kept after cost of goods37.5% FY2025
0%20%40%202120232025
Return on invested capitalOperating profit on the capital employed8.2% FY2025
0%50%202120232025
Owner earningsCash an owner could take out$1.6M FY2025
$0$5M$10M202120232025

Gaps in a line mean that item isn’t in MAMO’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

1 logged reading since Jul 18, 2026 · append-only, never rewritten

Moat Score over timeLast scored reading of each day, on the 0–100 scale56.2 / 100
0406080100WideNarrowShallowNo moatJul 18, 2026

Score history begins Jul 18, 2026 — the record builds from here and can’t be backfilled.

Tier changesSame-methodology crossings of the Wide / Narrow / Shallow bars

None yet — MAMO has read Shallow moat for every logged capture since Jul 18, 2026.

Scores are logged append-only and never overwritten — this record can’t be backfilled, which is exactly why it’s worth keeping.

Track record

How Massimo Group’s moat rated in each of the years we can reconstruct from its filings — scored only on what was knowable at the time — and what its price and returns did afterward. The score never saw a price; the two are joined only in hindsight, for education, not as a signal.

As-of scores 20242025, one methodology version · reconstructed from filings on file each Dec 31 — never with hindsight

As-of Moat Score (dot colored by tier)Indexed price (total-return (dividends reinvested))Rated Wide-moat that year

How to read this: each dot is what the engine would have scored MAMO on that December 31; the line below is its total-return price path (dividends reinvested) in the years since.

0406080100WideNarrowShallowNo moatAs-of Moat Score97163Indexed price · log scale (2025 = 100)202420252026

Two tracks, one timeline: the score has its own 0–100 scale (top), the price its own 100-based scale (bottom) — never a shared axis. The price path is a total-return (dividends reinvested) index built from the same data the forward returns use; gaps in the score line are years with no reconstructed rating (see the table for why). The Table view carries every value.

What followed, in the years it rated Wide

In the reconstructed history shown, MAMO did not rate Wide-moat in any year, so there is no wide-moat track record to report. That absence is itself the honest answer — we don’t manufacture a comparison where the rating never earned one.

Consumer Discretionary context

#130 of 359 scored Consumer Discretionary companies, ranked by Moat Score.

Nearest peers by Moat Score

  1. #128LINC LINCOLN EDUCATIONAL SERVICES CORPORATION56.6 out of 100, Shallow moatShallow moat
  2. #129NEGG Newegg Commerce, Inc.56.6 out of 100, Shallow moatShallow moat
  3. #131ALV AUTOLIV, INC.55.9 out of 100, Shallow moatShallow moat
  4. #132WLDN Willdan Group, Inc.55.9 out of 100, Shallow moatShallow moat

Compare MAMO with its nearest peersAll Consumer Discretionary companies on the Index →

Common questions about MAMO

Does Massimo Group have an economic moat?
Based on its FY2025 SEC filings, the Moat Index scores Massimo Group (MAMO) 56.2 out of 100 — a Shallow moat. The four filters behind that score (each 0–100): pricing power 40, returns on capital 91, balance-sheet safety 73, capital discipline 12.
Is MAMO 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 $0.76 per share versus a recent price of $0.95 — 24% above value. This is an educational estimate computed from primary SEC filings, not investment advice.
How has MAMO's Moat Score changed over time?
The record logs 1 reading since Jul 18, 2026; the latest reads 56.2 out of 100 (shallow moat). No tier changes on record yet. The history is append-only — readings are only ever added, never rewritten.
Embed this score on your site

One iframe, no script. The badge shows MAMO’s live Moat Score, updates itself as new filings are scored, and links back here. How it works.

<iframe
  src="https://buylikebuffett.com/embed/MAMO"
  width="340" height="150" style="border:0"
  title="MAMO Moat Score — The Moat Index"
  loading="lazy"></iframe>