eCommerce
The Gross-to-Net Revenue Gap: Benchmarks by Category
The gross-to-net revenue gap is the share of gross sales lost to returns, discounts, and chargebacks before GAAP net revenue. It runs from under 10% for jewelry to under 15% for beauty, up to 55-65% for premium fashion DTC. Returns dominate: REVOLVE's FY2025 filings imply a 57% return rate, while well-run mid-market apparel sits near 18%.
Key Takeaways
- The gap is 10% to 65% of gross sales, and it is category-driven. Jewelry and beauty lose roughly 10-15% of gross before net revenue is recognized; mid-market fashion loses 20-35%; premium fashion DTC loses 55-65%. The number on your Shopify dashboard is not the number that reaches your income statement. Source: composite of SEC 10-K filings, NRF/Happy Returns 2024, Finaloop H1 2024.
- Returns do most of the damage in apparel. REVOLVE's FY2025 10-K implies a ~57% return rate ($1.604B in return provisions against $1.226B net revenue). A well-run mid-market brand like AKA Brands ran 17.7% in FY2024 and called it well below industry average. Source: REVOLVE and AKA Brands 10-K filings.
- Discounts are the silent partner. Promo codes never appear as a line item in DTC filings, but vendor benchmarks put the effective discount at roughly 5-10% of gross for most verticals (health and beauty ~6.8%). A 20%-off welcome offer on 30% of first orders is 6% of gross gone before a single return posts. Source: SimplyCodes 2026 State of Coupon Codes.
- Channel mix masks the true DTC rate. Deckers (HOKA, UGG, Teva) shows just ~5.7% return provisions on gross in FY2026 because it is roughly 59% wholesale. A pure-DTC apparel brand cannot use a blended-company benchmark as its own. Source: Deckers Outdoor FY2026 10-K.
- Chargebacks are small but punishing. Most operators run 0.3-0.7% of transactions. It is the smallest gap component, but you lose the revenue and the COGS and pay a dispute fee, and card networks flag merchants above ~0.9% as high-risk. Source: Chargeflow / Chargebacks911 2024 data; Visa chargeback thresholds.
Every ecommerce brand reports revenue, but which revenue? The number on your Shopify dashboard the morning after a launch is not the number that will land on your income statement once returns post, promo codes net out, and a few chargebacks settle. For apparel especially, the spread between gross sales and GAAP-recognized net revenue is not a rounding error. It runs from roughly 10% to 65% of gross depending on the category, and brands that build P&Ls on the gross number are systematically overstating the revenue they actually get to keep.
When I talk to founders running a brand at $1M to $5M who still do their own books, the moment this clicks is usually a bank reconciliation. They compare what the payment processor actually deposited against what the dashboard showed and find a hole. One way operators describe it: "eight to twelve points of revenue I thought I had." This post puts hard numbers on that gap, by category, using primary-source data from public 10-K filings and the major returns benchmark reports.
The gross-to-net gap by category
The single most useful thing you can know about your vertical is how much of gross sales survives to recognized net revenue. The chart below stacks the three deductions, returns, promotional discounts, and chargebacks, as a share of gross. Whatever is left after the stack is your net revenue.
The spread is enormous. Premium fashion DTC loses roughly 64% of gross before net revenue, driven almost entirely by returns, a cost we break down in detail in our true cost of apparel returns analysis. Jewelry and accessories lose under 10%. Beauty and skincare sit near 14%, and most of that is discounting rather than returns, because the product is largely non-returnable. CPG is the odd one out: its returns are tiny, but trade spend and channel allowances push its discount component into the high teens.
The table below carries the per-row ranges behind the chart midpoints, with the verified public-company example that anchors each band.
| Vertical | Return rate (% of gross) | Verified anchor | Discount est. | Total gap est. |
|---|---|---|---|---|
| Premium fashion DTC | 40-60% | REVOLVE FY2025: ~57% | 5-12% | 55-65% |
| Mid-market fashion DTC | 15-30% | AKA Brands FY2024: 17.7% | 5-10% | 20-35% |
| Athletic / active DTC | 12-28% | Loop Returns swimwear: 21.6% | 3-8% | 18-30% |
| Footwear DTC (blended) | 5-20% | Deckers FY2026: 5.7% blended | 3-8% | 10-25% |
| Consumer electronics DTC | 10-18% | Finaloop H1 2024: ~80% net | 5-9% | 18-25% |
| Beauty / skincare DTC | 4-12% | Finaloop H&B median: ~90% net | 4-10% | 8-18% |
| Home goods DTC | 8-18% | Finaloop home median (all channels): ~93% net | 3-8% | 12-22% |
| Jewelry / accessories DTC | 2-8% | Brilliant Earth FY2025: very low | 2-6% | 5-15% |
| CPG / consumables | 3-10% | Trade spend dominates | 12-25% (trade spend) | 15-30% |
The practical read: pick your row, then build your model on the high end of the range until you have your own trailing data. Optimism here is expensive.
Returns are quietly eating your margin. See by how much.
Get our Real Cost of Returns calculator: plug in your numbers, see the true hit per return.
Check your inbox. We'll send the Real Cost of Returns calculator shortly.
Returns are doing most of the damage
In fashion and footwear, returns are the dominant driver of the gap, and you can read them straight out of public filings. Under ASC 606, a company recognizes revenue net of expected returns, so the return reserve rollforward in a 10-K tells you the implied return rate. Add the year's return provisions back to net revenue to get implied gross, then divide.
REVOLVE is the ceiling. Its FY2025 10-K shows $1.604B in return provisions against $1.226B in net revenue, which implies gross sales near $2.83B and a return rate of roughly 57%. That is not typical, and it should not be your benchmark. It is what happens when a premium fashion brand offers free, frictionless 30-day returns to customers who order a closet to try on and keep a third of it. The audit team flagged the return reserve as a critical audit matter, which tells you how material it is to the financials.
AKA Brands is the more useful anchor for a normal operator. Its brands (Princess Polly, Culture Kings, mnml) ran a 17.7% blended return rate in FY2024, which the company explicitly called well below industry average. Deckers, blended across HOKA, UGG, and Teva, shows just 5.7% in FY2026, but that is a channel-mix artifact: Deckers is roughly 59% wholesale, and wholesale return rates are a fraction of DTC. If you run a pure-DTC brand, you cannot borrow a blended company's number.
| Company (ticker) | Fiscal year | Net revenue | Return provisions | Return rate (% of gross) |
|---|---|---|---|---|
| REVOLVE Group (RVLV) | FY2025 | $1,226M | $1,604M (annual provisions) | ~56.7% |
| AKA Brands (AKA) | FY2024 | ~$575M | stated directly | 17.7% |
| Deckers Outdoor (DECK) | FY2026 | $5,472M | $329M | ~5.7% |
| Deckers Outdoor (DECK) | FY2025 | $4,986M | $307M | ~5.8% |
| Lulu's Fashion Lounge (LVLU) | FY2025 | $282M | $10.3M reserve (point-in-time) | headwind cited in MD&A |
| Brilliant Earth (BRLT) | FY2025 | jewelry, low | $3.5M refund liability | very low |
The pattern we see again and again: a founder builds a contribution margin model on Shopify gross revenue and pencils in "maybe 10% returns." Then diligence, usually a Series A data room, forces a real reconciliation, and the actual rate including exchange credits and delayed refunds comes in closer to 28%. At that corrected rate the unit economics that looked healthy turn negative. The fix is not complicated, but it has to happen before you raise, not during.
The discount problem the 10-K hides
Returns you can audit. Discounts you mostly cannot, at least not from public filings, because for DTC brands promotional discounts are applied at checkout and never show up as a separate line item. CPG companies that sell through wholesale do disclose trade spend as contra-revenue, which is why the CPG bar in the first chart leans on discounting. For everyone else, you need vendor benchmark data.
That data says discounting is a bigger leak than most founders think. Per-code depth in apparel and beauty averages around 19-20% off, but the number that matters is the effective rate across all orders. SimplyCodes' 2026 analysis of more than 500,000 online retailers puts the effective discount near 5-10% of gross for most verticals: about 6.8% for health and beauty, rising to 16.8% for the most aggressive discounters. Three-quarters of DTC brands planned to discount deeper in 2025, not shallower.
The mechanics are simple and brutal. A 20%-off welcome offer applied to 30% of first orders is 6% of gross gone before a single return posts. Stack a sitewide sale, a VIP early-access code, and an abandoned-cart incentive, and you are well into double digits. One pattern operators describe in fashion is training their own audience to wait: aggressive VIP and email discounting conditions customers never to pay full price, until something like 40% of revenue runs at a discounted price and the effective hit to gross is around 12%. One founder called promo creep "a tax we created ourselves." It is the most controllable line in the whole gross-to-net stack, and the most ignored.
Chargebacks: the smallest gap, the hardest to recover
Chargebacks are the smallest component for most operators, typically 0.3% to 0.7% of transactions, but they punish out of proportion to their size. When a chargeback goes through, you lose the revenue, you lose the COGS on a product you will never see again, and you pay a dispute fee on top. Several operators describe finding out about chargebacks only after they had already been decided against them, with no systematic process to file evidence in time.
The reason to keep this line under control is structural. Card networks set thresholds: Visa issues early warnings near 0.65% and pushes merchants into excessive-chargeback programs near 0.9%, with fines and, at the extreme, the risk of losing your processor. Global ecommerce chargeback rates rose sharply through 2023 and 2024 as card-not-present and "friendly" fraud climbed. For a brand at 0.4%, this is a watch-it line. For a brand drifting toward 1%, it is an existential one.
How to build the gross-to-net schedule into your model
Here is the schedule we rebuild for almost every brand that comes in running its P&L on the gross number. Start at gross GMV. Deduct returns at your category benchmark rate. Deduct promotional discounts at your effective rate, not your headline depth. Deduct chargebacks. What is left is net revenue, and only then do you apply COGS, fulfillment, and customer acquisition. The waterfall below shows it for a representative mid-market apparel brand.
For every $100 of gross sales, returns at 22% take $22, discounts at 6% take another $6, and chargebacks at 0.5% take $0.50, leaving $71.50 of recognized net revenue. That is the number your CAC payback and contribution margin should be built on. Run the same exercise on your own rates and the answer will be specific to you, but the shape almost never changes: the gross number is a story, the net number is the business.
If you plan on gross and reserve a casual 10% for returns, you are not running a conservative model. You are running an optimistic one with extra steps. The brands that survive diligence are the ones that started from gross GMV and worked all the way down to net before they ever drew a margin line.
When operators bring in a fractional CFO, the first deliverable is almost always this: figuring out what the real net revenue actually is. Rebuilt from gross GMV down, that single change typically moves the modeled breakeven point three to six months to the right in the cash runway. It is not a fun number to find. It is a much worse one to find in a data room.
The two biggest drivers of the gross-to-net gap each have their own benchmark: see our average ecommerce return rate data and discount rate by vertical. For the margin side of the same equation, our DTC gross margin by public companies tracks where net revenue lands. To build the full gross-to-net schedule into your model, that is core fractional CFO work.
Sources and methodology
Return rates are computed from SEC 10-K return reserve rollforwards. Under ASC 606, revenue is recognized net of expected returns, so a year's return provisions approximate expected returns on that year's sales. Implied gross revenue equals net revenue plus provisions, and the return rate is provisions divided by implied gross. This holds when provisions track annual expected returns; it does not work for companies that disclose only a point-in-time balance-sheet reserve (Lulu's, Brilliant Earth), which reflects open returns on recent sales, not a full-year rate.
Public-company figures come from SEC EDGAR 10-K filings. REVOLVE Group FY2025 (CIK 1746618), AKA Brands FY2024 (CIK 1865107), Deckers Outdoor FY2026 (CIK 910521), Lulu's Fashion Lounge FY2025 (CIK 1780201), and Brilliant Earth FY2025 (CIK 1866757). Filings are searchable at the SEC EDGAR full-text search and the REVOLVE filing index.
Return rate benchmarks come from NRF and Loop Returns. The NRF / Happy Returns 2025 Retail Returns Landscape reports a 19.3% online return rate for 2025 and 16.9% across all US retail in 2024 ($890B total). The Loop Returns Winter 2024 Benchmark Report analyzed 22 million returns across 4,000-plus Shopify merchants, finding a 14% adjusted return rate and swimwear at 21.6%.
Net-to-gross ratios by vertical come from Finaloop merchant data. The Finaloop ecommerce profit benchmarks (H1 2024 cohort) report median net-sales-to-gross of roughly 80% for consumer electronics, 93% for home and garden, and 90% for health and beauty, the most direct published measure of the gross-to-net gap across a live Shopify cohort.
Discount depth is drawn from the SimplyCodes 2026 State of Coupon Codes, tracking 500,000-plus online retailers: median code depth near 15%, average around 19-20% when a code fires, and effective discount of roughly 5-10% of gross for most verticals (about 6.8% for health and beauty). Chargeback ranges (0.3-0.7% of transactions; Visa thresholds near 0.9%) reflect 2024 card-network and processor data from Chargeflow and Chargebacks911.
Frequently asked questions
what's the average return rate for online clothing brands?
Online apparel typically runs in the high teens to high twenties as a percent of gross. AKA Brands disclosed 17.7% in FY2024 and called that below industry average. Premium fashion with free, no-friction returns is far higher: REVOLVE's FY2025 filings imply roughly 57%. Loop Returns put the all-merchant adjusted rate near 14%, with swimwear topping out at 21.6%.
why does my shopify revenue look different from my actual recognized revenue?
Because the dashboard shows gross sales at the moment of checkout, before returns post, before promo codes are netted the way your accountant nets them, and before chargebacks settle. Under ASC 606 you recognize revenue net of expected returns, so your real number is gross minus a returns reserve minus discounts minus chargebacks. For apparel that gap is often 20-35 points.
how much revenue does the average promo code actually cost me?
Per-code depth in apparel and beauty averages around 19-20% off, but what matters is the effective rate across all orders. SimplyCodes data puts that near 5-10% of gross for most verticals, about 6.8% for health and beauty and up to 16.8% for aggressive discounters. Multiply your discount depth by the share of orders that use a code to get your real number.
what's a normal chargeback rate for an ecommerce store?
Most operators sit between 0.3% and 0.7% of transactions. Card networks treat that as healthy. Visa flags merchants near 0.9% and pushes them into high-risk programs with fines above that, so 1% is the line you do not want to cross. Chargebacks hurt more than the rate suggests because you lose the product, the revenue, and a dispute fee.
how do beauty brands keep return rates so low compared to apparel?
Fit is the difference. Apparel customers order multiple sizes to try on and send back what does not fit, which is why premium fashion return rates run so high. Beauty, skincare, and jewelry are largely non-returnable for hygiene or irreversibility reasons, so their gross-to-net gap is driven more by discounts than by returns. Brilliant Earth carried only a $3.5M refund liability in FY2025.
how should i set a return reserve in my financial model?
Start from your own trailing return rate by category, not a blended industry average, and apply it to gross GMV before anything else. If you sell apparel, model returns at your real rate including exchange credits and delayed refunds, then layer in 2-5% of returned-item value for reverse logistics and restocking. Most founders underbook this by 8-15 points the first time.
what's the difference between gross sales and net sales on a gaap income statement?
Gross sales is everything customers paid at checkout. Net sales is what survives after contra-revenue items: returns allowances, promotional discounts, and in wholesale, trade spend and chargebacks. The income statement starts at net. That is why a brand can show $100M in gross GMV on its dashboard and report $72M in net revenue to investors.
