In-House Warehouse vs WMS vs 3PL: How to Choose for a Growing FMCG Brand (2026)
For a growing FMCG brand the answer is rarely one of the three. Make two decisions instead: who runs the warehouse floor (your own team or a 3PL), and which software runs it (the 3PL's WMS, a WMS you license, or lightweight execution inside your order system). Most brands do best early with a 3PL and its WMS, plus an order layer that owns purchase orders, invoices and GRNs. An in-house mother warehouse earns its place when volume in one region is high and stable, when batch and expiry control is critical, or when production lands in one place. A full WMS earns its cost only when the floor itself is the bottleneck.
Use the stage triggers below to see which setup fits now, the illustrative cost model to see where the crossover sits, and the scoring matrix to compare your real options. Then test 3PLs and WMS vendors with the red flags and questions. Every rupee figure in this guide is illustrative, built to show the arithmetic, not a market rate. For the cost levers themselves, see our cost-effective warehousing guide.

Key Takeaways
- "Warehouse vs WMS vs 3PL" is two decisions: who runs the floor, and which software runs it.
- A 3PL plus your own order layer is the default for brands supplying platforms and distributors by PO.
- In-house wins on running cost only at high, stable regional volume, and only if you can run a floor well.
- A full WMS is for complex floors. Below that, picklists, batch and expiry allocation, scanning and dispatch documents are enough.
- Whatever you choose, one system should see stock at every node by batch, and one should own orders, invoices and GRNs.
How we evaluated
This framework comes from FMCG brands moving from one warehouse to several while supplying quick commerce, modern trade and distributors. It compares operating models, not named providers; for the Indian companies offering smart warehousing and WMS services, see our top 10 warehouse management solutions in India. Rates, minimum billing and SLA terms vary by provider, city and contract, so the cost model uses hypothetical numbers and labels them as such. GST points are operational guidance, not tax advice.
Disclosure: FilFlo publishes this guide and sells software in this category; it appears in one labelled section.
Two Decisions, Not Three Options
A 3PL is a way of running the floor. A WMS is software for running a floor. An in-house warehouse is a floor you run yourself, with whatever software you choose. Comparing them as three alternatives hides the real combinations brands choose between:
| Setup | Floor and software | Typical fit | Main risk |
|---|---|---|---|
| 3PL running its own WMS | 3PL team, 3PL software | Early-stage and multi-city brands, spiky volume | Batch control and visibility depend on the 3PL’s system and SLA |
| 3PL plus your order layer | 3PL floor; your system owns POs, invoices and GRNs | Brands supplying platforms, modern trade and distributors by PO | Needs a clean order and status exchange with the 3PL |
| In-house with lightweight execution | Your team; picklists, scanning and dispatch in your order system | One or two warehouses, moderate SKU count | You can outgrow it if the floor becomes complex |
| In-house with a full WMS | Your team; licensed WMS | High volume, complex storage, many pickers | Implementation and configuration effort; another system to integrate |
| Hybrid | Own mother warehouse plus 3PL city nodes | Brands with production intake and multi-city supply | Two stock records unless one layer sees every node |
Notice what stays constant across every row: someone has to own the commercial side of each order. A platform PO still needs approval, an invoice with IRN from the right GSTIN, an e-way bill, an appointment and a GRN reconciliation, whether a 3PL or your own team picks the cases.
Stage Triggers: When to Change Your Setup
Warehousing decisions go wrong when they are made on a growth plan instead of an operating signal. These triggers are the signals worth acting on:
| Trigger | What it suggests |
|---|---|
| Platform POs start arriving for a city where you hold no stock | Add a 3PL node near that platform warehouse before building anything |
| GRN shortfalls or shelf-life rejections trace back to picking | Demand batch-level FEFO evidence from the 3PL, or bring that node in-house |
| 3PL bills for a region exceed your own modelled running cost at stable volume | Model an in-house mother warehouse (see the illustrative cost table) |
| Paper picklists cause wrong-batch or wrong-SKU dispatches | Move to scan-based picking and dispatch, in-house or contractually at the 3PL |
| Slotting, waves or picker productivity become the constraint | Evaluate a full WMS for that site |
| Production or co-packer output concentrates in one region | Place a mother warehouse near it and feed city nodes by transfer |
| Festival or sale-day peaks double volume for a few weeks | Keep or add 3PL capacity for overflow instead of sizing in-house for the peak |
An Illustrative Cost Model (Hypothetical Numbers)
Illustrative only. Every rate below is a hypothetical round number chosen to show the arithmetic. They are not market rates or quotes. Replace each one with your own 3PL quotes, rent, salaries and volumes.
Take a hypothetical brand holding 300 pallets and moving 6,000 cases in and out each month. At double the throughput, assume faster turns mean 450 pallets, and that the in-house space has room for them but needs four more people.
| Monthly cost line | 3PL, base volume | 3PL, 2× volume | In-house, base volume | In-house, 2× volume |
|---|---|---|---|---|
| Storage | 300 pallets × ₹500 = ₹1,50,000 | 450 pallets × ₹500 = ₹2,25,000 | Rent 6,000 sq ft × ₹25 = ₹1,50,000 | ₹1,50,000 (space has headroom) |
| Inbound handling | 6,000 cases × ₹10 = ₹60,000 | 12,000 cases × ₹10 = ₹1,20,000 | In staff cost | In staff cost |
| Outbound handling | 6,000 cases × ₹15 = ₹90,000 | 12,000 cases × ₹15 = ₹1,80,000 | In staff cost | In staff cost |
| Value-added services | ₹20,000 | ₹40,000 | In staff cost | In staff cost |
| Staff | In rates | In rates | 6 × ₹20,000 = ₹1,20,000 | 10 × ₹20,000 = ₹2,00,000 |
| Software and devices | In rates (your order layer is separate) | In rates | ₹30,000 | ₹30,000 |
| Utilities, security, maintenance | In rates | In rates | ₹50,000 | ₹60,000 |
| Monthly total | ₹3,20,000 | ₹5,65,000 | ₹3,50,000 | ₹4,40,000 |
In this made-up example, the two models are close at base volume (₹3,20,000 vs ₹3,50,000 a month) before counting in-house capex such as racking, material handling equipment, fit-out and scanners, which tips it further toward the 3PL. At double volume, the 3PL bill grows with every case while in-house cost grows only with headcount, and the in-house model becomes cheaper to run (₹4,40,000 vs ₹5,65,000).
Two lessons carry over to real numbers. First, the crossover depends on volume stability: if the doubled volume holds for only a few months a year, the 3PL's variable cost still wins. Second, when the running costs are close, cost should not decide. Batch control, platform-facing performance and your team's ability to run a floor should.
The Decision Checklist: 10 Criteria
- Volume shape. A steady base with predictable growth favours fixed capacity; spiky or seasonal volume favours a 3PL’s variable capacity.
- Geography. Where are the platform warehouses, modern trade DCs and distributors you supply, relative to production? Count the cities that need stock within your appointment lead times.
- Batch, expiry and FEFO control. The shorter your shelf life and the stricter your buyers’ receiving norms, the more you need evidence of batch-level allocation, whoever runs the floor.
- Floor complexity. SKU count, pick lines per day, storage types (ambient, cool, chilled), kitting and picker headcount decide whether lightweight execution is enough or a full WMS earns its cost.
- Documents and GST. Who raises the invoice, IRN and e-way bill at dispatch, from which GSTIN? Every storage site generally has to be on your GST registration.
- Visibility and data access. Stock by SKU, batch, location and status, updated on every scan and invoice event or on a scheduled sync you can rely on, available to your order system without weekly spreadsheets.
- Platform-facing performance. Appointment adherence, dispatch cut-offs, ASN preparation where a platform expects one, and GRN outcomes: who owns each, and how is it measured?
- Capital and commitment. In-house means capex, a lease and hiring; a 3PL means minimum billing, lock-in and exit clauses. Compare commitment, not just monthly cost.
- Team capability. Do you have someone who has run a warehouse floor, with a deputy? Without that, an in-house warehouse is a risk regardless of the software.
- Software boundary. Whichever setup you choose, decide which system owns orders, invoices and GRNs and which owns the floor, and how they exchange data.
Scoring Matrix You Can Copy
List your two or three real options (for example, "current 3PL", "new 3PL in a second city", "own mother warehouse plus 3PL nodes"). Score each 1 to 5 per row, multiply by the weight, total and divide by 5 for a score out of 100.
| Criterion | Weight | How to score | Option A | Option B | Option C |
|---|---|---|---|---|---|
| Cost at your current volume | 15 | Monthly running cost from your own quotes, plus amortised capex | |||
| Cost at 2× volume | 10 | Same model with volume doubled | |||
| Batch, expiry and FEFO control | 15 | Evidence of batch-level allocation, not a promise | |||
| Speed to add a city | 10 | Weeks from decision to first dispatch | |||
| Visibility and data access | 15 | Stock by batch and location, available to your systems | |||
| Platform-facing performance | 15 | Appointment adherence, GRN outcomes, accountability | |||
| Commitment and exit | 10 | Lease or contract lock-in, minimums, exit terms | |||
| Team and management load | 10 | People you must hire and manage |
Weights total 100. Weighted score = sum of (weight × score) ÷ 5. Score batch control and visibility only on evidence you have seen.
Red Flags in 3PL Pitches and WMS Demos
- A 3PL says it "follows FIFO" but cannot produce a batch-level pick report for last week.
- Shrinkage, damage and mis-pick liability is vague, heavily capped or missing from the contract.
- Platform GRN shortfalls caused by picking errors are left entirely for you to dispute.
- Appointment adherence and dispatch cut-offs are not measured or reported.
- Stock visibility means a weekly Excel by email rather than system access or scheduled data.
- Minimum billing and lock-in sized above your realistic volume, or exit terms that make stock release slow.
- A WMS demo cannot show batch and expiry allocation on your own SKUs.
- A WMS plan that takes months before the first live dispatch, or duplicates order and invoicing logic your order system already owns.
Questions to Ask
For a 3PL
- How do you allocate batches (FEFO or FIFO), and can we see batch-level pick reports?
- What are your storage, inbound, outbound and value-added rates, minimum billing and annual escalation?
- Who bears shrinkage, damage and mis-pick losses, and up to what limit?
- How do you book and track platform appointments, and how do you report adherence?
- How do we get stock and order status: API, webhooks or scheduled files?
- Whose system raises invoices and e-way bills at dispatch, ours or yours?
- Can the site be added to our GST registration, and what documents will you provide?
- What are the exit terms: notice, stock release and data handover?
For a WMS or execution software vendor
- Show batch and expiry allocation, scanning and dispatch on our SKUs.
- How long until the first live dispatch, and who configures the system?
- How does it exchange orders, invoices and GRNs with our order system and ERP?
- Which devices and printers do we need?
- What is the pricing basis: sites, users, devices or volume?
Keep Your 3PL. Own the Order.
See purchase orders, invoices, e-way bills and GRNs run in one order layer while your 3PL or your own team runs the floor.
Where FilFlo Fits
FilFlo is the order-to-cash operations layer for FMCG brands selling through quick commerce, modern trade, general trade distributors and institutional buyers. In the setup table above, it is the order layer: it owns purchase order intake and approval, GST invoicing with IRN, e-way bills, multi-GSTIN invoice series and GRN variance with reason codes, whoever runs the floor.
On the floor, FilFlo works alongside an existing WMS or 3PL, or runs picking, scanning and dispatch itself for brands that don't have one. With a 3PL, orders and status are exchanged through bidirectional order webhooks, so the 3PL keeps its own system. In-house, FilFlo provides picklists with batch, expiry and FIFO-aware allocation, rack locations, and barcode-scanner picking and dispatch scanning, which covers the lightweight execution row of the table.
Not the right fit if: your floor needs slotting, wave planning, labour management or multi-client 3PL billing. That is full WMS territory, and FilFlo is not a full WMS. Typical onboarding is 2 days; pricing is quote-based.
Frequently Asked Questions
What is the most cost-effective warehousing and fulfillment setup for a growing FMCG brand in 2026?
For most, a 3PL running the floor plus an order layer that owns POs, invoices and GRNs, because it turns fixed cost into variable cost and adds cities by contract instead of by lease. Bringing a warehouse in-house makes sense when volume in one region is high and stable enough that running costs beat 3PL rates, when batch and expiry control is critical and your 3PL cannot evidence it, or when production lands in one place and a mother warehouse next to it simplifies everything. Many brands end up hybrid.
Do we need our own WMS if we use a 3PL?
Usually not. The 3PL runs the floor on its own WMS. What you need is an order layer that owns your purchase orders, approvals, invoices, e-way bills and GRNs, and exchanges orders and status with the 3PL’s system by API, webhooks or files. Buying a second WMS to sit on top of a 3PL’s WMS duplicates floor logic you do not control.
When does a full WMS make sense for a brand?
When the warehouse floor itself is the bottleneck: many SKUs and storage types, high pick volumes, many pickers, and a need for slotting, wave planning or labour management. Below that, lightweight execution (picklists, batch and expiry allocation, barcode scanning and dispatch documentation) covers what an in-house brand warehouse needs.
Can we run our own mother warehouse and use 3PLs for city nodes?
Yes, and it is a common setup: a mother warehouse near production or co-packers for intake and bulk storage, with 3PL nodes near the platform warehouses and distributors you supply. The risk is two sets of stock records. Make sure one system sees stock at every node by batch, so transfers and replenishment start from one view.
What should a 3PL SLA include for quick commerce supply?
Batch and expiry allocation rules with reports that prove them, dispatch cut-offs, appointment adherence measurement, inventory accuracy and cycle-count frequency, liability for shrinkage, damage and mis-picks, responsibility for platform GRN shortfalls caused by picking errors, data access terms, and exit terms. Rates, minimum billing and escalation vary by contract; get them in writing.
Does storing stock at a 3PL in another state affect GST registration?
Generally yes. A warehouse where your goods are stored is a place of business for GST, so a 3PL site usually needs to be added to your registration, and a site in a new state usually means registering in that state. That affects which GSTIN invoices from that site. This is operational guidance, not tax advice; confirm with your tax advisor before moving stock.
One Order Layer, Whoever Runs the Floor
Bring a real purchase order and see it go from approval to pick, invoice, e-way bill and GRN, with your 3PL or your own team on the floor.