Fashion Is Seasonal. Your ERP Shouldn't Guess.
Most D2C fashion brands treat seasonality like a weather problem: unpredictable, uncontrollable, something you just "deal with."
So they guess on inventory orders. They watch competitors for markdown timing. They hold their breath and hope they clear inventory before the season ends.
Here's the result: 17% dead stock, $68,000 in markdown losses per season, and 23 days of stockouts where you can't fulfill orders because you ran out of bestsellers.
If you're doing $2M-$5M in annual revenue, that's $45,000 to $180,000 per season left on the table.
The brands that win at seasonality aren't guessing better. They're systematizing it. Multi-model forecasting, continuous demand sensing, dynamic markdowns, and profitability tracking.
This blog will show you how.
The Two Mistakes That Destroy Fashion Margins
Mistake #1: Too-Early, Aggressive Markdowns
It's December 15th. You have 120 winter coats left. Inventory cost you $78/unit. You're selling them at $78 (full retail price). You panic. "We need to clear this by end of season!" So you mark everything down 50% ($39).
In 10 days, they sold all 120 units. You collected $4,680.
Here's what you should have done:
If you'd marked it 20% off on December 15th ($62):
→ Would have sold maybe 85 units (some customers prefer full-price items)
→ Collected: $5,270
The remaining 35 units:
→ Mark those 30% off on December 28th ($54)
→ Sell maybe 28 units
→ Collect: $1,512
Total: $5,270 + $1,512 = $6,782
Difference: $2,102 more in revenue from a smarter markdown strategy.
Do this wrong across 400 SKUs and you're losing $180,000+ per season in margin.
Mistake #2: Too-Late, Insufficient Markdowns
Or you do the opposite. You want to protect margins, so you wait too long to mark items down. January 28th arrives. You still have 300 units of unsold winter coats. You mark them down 25%. Only 45 units sell. You're stuck with 255 coats going into February (off-season).
Now you have two choices:
Option 1: Keep for Next Winter
→ Ties up $22,695 in capital for 9 months
→ Carrying costs: $4,539
Option 2: Mark Down Further
→ Destroys margin completely
→ 50%+ discount just to liquidate
Neither is good.
The optimal strategy: Mark down gradually, with the right discount level at the right time, to clear by the season end.
How Proper Seasonality Management Works
Braincuber has rebuilt seasonal planning for 19 fashion brands. Here's what actually works:
Step 1: Multi-Model Forecasting (Not Single-Point Forecasting)
Instead of one forecast ("234 units"), create three models:
Best-case model
If this color/style trends (analyzes social media, search trends, competitor moves)
Expected model
Based on historical data + growth assumption
Worst-case model
If demand underperforms
Example: Parka Sales Forecast
One brand forecasted parka sales with three models:
→ Best case: 540 units
→ Expected: 380 units
→ Worst case: 210 units
Decision: They ordered 300 units (hedged between expected and worst-case, leaving room for upside).
Result: When the season arrived, demand was strong (trending on Instagram). They ran low at 280 units sold by week 5. But they had buffer to take a restock order from their supplier.
Final: 420 units sold, $18,720 revenue. No stockout. No dead stock.
Step 2: Separate Demand Models by Product Type
Not all products are seasonal the same way:
Basic Items
Jeans, plain t-shirts, fundamentals
→ Steady all year
→ Forecast longer-term, less volatility
Fashion Items
Trendy tops, seasonal dresses
→ High seasonal variation
→ Short lifecycle
→ Forecast tight, manage weekly
Seasonal Specialties
Heavy winter coats, festival wear
→ Extreme concentration
→ Requires precise timing
One brand had 47 basic items, 120 fashion items, and 87 seasonal specialties. They were forecasting all of them the same way (wrong).
They rebuilt with separate models. Result: Dead stock dropped from 18% to 6%.
Step 3: Continuous Demand Sensing (Not Static Forecasts)
Don't forecast once in June for the October season. Forecast continuously.
Continuous Adjustment Process:
→ Week 1 of season: Real data comes in. Adjust forecast based on actual demand vs. prediction.
→ Week 3: More data. Adjust again.
→ Week 6: Adjust based on what's selling and what's not.
Example: Parka Demand Sensing
One brand was selling parkas.
Forecast: 380 units
Week 1 actual: 89 units
Week 3 actual: 212 units (pace: 48 units/week)
Revised forecast: 384 units (basically on track, small variance)
But what about the specific colors?
Charcoal grey
→ Ahead of pace
→ Demand sensing: Increase
→ Trigger restock PO
Navy
→ Behind pace
→ Demand sensing: Mark down earlier and deeper
By week 8, they'd sold 378 units (vs forecast of 380) with zero stockout and only $3,200 in dead stock (vs historical $28,700 in dead stock on this item).
Step 4: Dynamic Markdown Automation
Once inventory aging data flows into your system, markdowns should be automatic.
Example Rules:
→ "If item is 30+ days old in inventory and hasn't sold 60% of weekly pace target, mark down 15%"
→ "If item is 60+ days old, mark down 30%"
→ "If item is 90+ days old, mark down 50%"
Critical: Different Rules by Location and Channel
A winter coat might be "dead" in Miami by February. But it might still have 8 weeks of selling season in Minneapolis. So:
Miami Clearance
→ Mark down 50% (end-of-season)
Minneapolis Regular
→ Mark down 15% (still in season)
Same product. Different markdown. Preserves margin in warm climates. Clears inventory in cold climates.
Example: Geographic Segmentation
One brand applied geographic segmentation to markdowns:
Miami store: 87 winter coats (dead season)
→ Marked down 50%
→ Sold all 87
→ Recovered: $3,918
Minneapolis store: 94 coats (still in season)
→ Marked down 15%
→ Sold 68
→ Recovered: $4,862
If they'd marked both down 50%, Minneapolis would have recovered $3,381 (lost $1,481 in margin).
Step 5: Profitability Tracking During Clearance
Most brands track "did we clear the inventory?" They don't track "did we preserve margin while clearing?"
You should have a dashboard showing:
→ % of inventory cleared at full price
→ % cleared at 1st markdown (15% off)
→ % cleared at 2nd markdown (30% off)
→ % cleared at final markdown (50%+ off)
→ % written off (unsellable)
→ Weighted-average margin realized
Example: The 94% Clearance That Wasn't Good Enough
One brand was clearing 94% of inventory by end of season. Sounded great. But when they looked at the detail:
→ 31% sold at full price (38% margin)
→ 24% sold at 1st markdown (28% margin)
→ 21% sold at 2nd markdown (18% margin)
→ 18% sold at final markdown (5% margin)
→ 6% written off (0% margin)
Weighted margin: 16.8%
They benchmarked against similar brands (who clear at higher margins). Best-in-class: 22.4% weighted margin during clearance.
They were leaving 5.6 percentage points on the table.
For $3.2M in annual revenue with 40% off-season clearance volume: ($3.2M × 40% × 5.6%) = $71,680 in margin loss per year.
They rebuilt their markdown strategy with dynamic rules. New weighted margin: 21.1% (close to best-in-class). Recovered margin: ~$45,000 per year.
Real Case Study: The $2.8M Fashion Brand That Cut Dead Stock by 73%
This D2C apparel brand was doing $2.8M in revenue. But they were hemorrhaging money to seasonal inefficiency.
Before
→ Dead stock: 17.3% of inventory ($127,400)
→ Carrying costs: $25,480/year
→ Markdown losses: $68,300/year (average 47% discount on clearance)
→ Stockouts: 23 days across the year (lost $34,200)
→ Total seasonal inefficiency: $128,000/year
What We Changed
Multi-model forecasting: Built best/expected/worst-case models for each product type.
Continuous demand sensing: Automated weekly forecast adjustments based on actual sell-through.
Geographic markdown segmentation: Different markdown rules for warm/cold climates.
Dynamic triggers: Automated markdown rules based on inventory age + sell-through pace.
Profitability tracking: Dashboard showing margin realization during clearance.
Results After 6 Months (One Full Season)
→ Dead stock: 4.6% of inventory (vs 17.3% before) = 73% reduction
→ Carrying costs: $6,800/year (vs $25,480) = $18,680 saved
→ Markdown losses: $18,900/year (vs $68,300) = $49,400 saved
→ Stockouts: 3 days (vs 23) = $8,700 in prevented lost sales
→ Inventory turnover improved: 6.2x → 8.1x = Faster capital recycling
→ Working capital freed up: $94,600 (from inventory optimization)
Total year-one impact: $76,780 in direct operational savings + $94,600 in freed working capital = $171,380 recovered.
Implementation cost: $27,000 (ERP configuration + demand sensing setup + training).
ROI: 635% in year one.
The Bottom Line
Seasonality isn't a problem to tolerate. It's a problem to systematize.
If you're manually forecasting seasons and guessing on markdowns, you're leaving $45,000 to $180,000 on the table per season. That's a choice you're making (whether intentionally or not).
The brands winning in fashion aren't the ones with magical trend-spotting ability. They're the ones with:
Multi-model forecasting (not single-point guesses)
Continuous demand sensing (not static plans)
Automated markdowns (not emotional decisions)
Geographic segmentation (not uniform discounts)
Profitability tracking (not just inventory clearing)
This is all possible in a modern ERP. But only if you configure it correctly.
Stop Losing $40,000+ Per Season to Poor Markdown Strategy
Most D2C fashion brands discover, within 30 minutes, that their seasonal strategy is destroying $40,000+ per season in hidden margin loss. Your competitors are already automating this. Don't fall behind.
Free 15-Minute Seasonal Planning Audit
We'll analyze whether your current forecasting and markdown strategy is costing you margin, identify exactly how much dead stock you're carrying, and show you the specific optimizations that could recover $76,000 to $171,000 per season.
FAQ: Seasonality & Clearance Questions We Get Every Month
How far in advance should I forecast for a season?
6 months minimum for new product testing. But don't forecast just once. Forecast, then demand-sense weekly during the season. Adjust based on real data.
What's the difference between demand sensing and forecasting?
Forecasting: Predicting what will happen based on historical data (static, done upfront). Demand sensing: Detecting what IS happening based on real-time sales data (dynamic, ongoing). Use both.
How do I know the right markdown level?
Use historical data: "When we marked this type of item X% off, what % of remaining inventory sold?" Test different levels. Optimize for margin, not just velocity.
Should I mark everything down uniformly at end of season?
No. Different products, locations, channels have different optimal markdown levels. Segment by all three.
What if markdown automation creates too many SKUs at different prices?
That's why you use rules-based automation, not manual discounts. The system enforces consistency: "This SKU is 30+ days old, therefore 15% off across all channels." One rule, applied intelligently.
How do I prevent marking down bestsellers?
Track sell-through pace. If an item is hitting 90%+ of weekly targets, it doesn't qualify for early markdown. The system only marks down items BELOW expected pace.
What carries more risk: over-forecasting or under-forecasting?
Over-forecasting = dead stock + carrying costs + markdown loss. Under-forecasting = stockouts + lost sales + customer defection. Over-forecasting is slightly worse (you can restock, but recovery is slow). Under-forecast by 10%, lose 10% revenue. Over-forecast by 10%, lose 15% margin + carrying costs. Aim for tight forecasts with demand-sensing adjustments.

