When does a 3PL not make sense?
For most DTC brands, a 3PL is the right answer, but "most" isn't all.
Here's what I've seen when it makes sense to fulfill in-house:
(1) US manufactures (even assembly). The capital is already spent. Your team already touches inventory. Shipping out is the last (smaller) step of what you're already doing.
(2) Has retail stores. You're already managing store inventory and DC-to-store flow. You have to be good at supply chain anyway. Also, 3PLs consistently suck at cross-docking.
(3) You personalize almost every order. Engraving, monogramming, on-demand print, custom assembly. 3PLs are built for SKU-based picking, not per-order build.
(4) Apparel brands. SKU counts get into the thousands once you factor size and color. You're the customer 3PLs don't want. Too many bins. Too much returns processing. You'll get deprioritized at peak.
(5) Hazmat. Sounds like something huge, but it's perfumes, candles, aerosols, supplements with alcohol, lithium battery electronics. Most 3PLs won't take you. The ones that will require certified staff, segregated storage, and carrier pre-approval.
(6) Furniture, fitness equipment, anything over ~50 lbs. Dimensional weight surcharges and freight class issues mean you're already paying premium rates. You're better if you own the dock, LTL relationships. lift-gates.
(7) Frozen food, fresh meal kits, temperature-controlled supplements. The 3PLs that handle this are few and expensive. You're probably already running your own freezer and tight ship windows.
And sometimes....
(8) Subscription with predictable volume. Same boxes, same cadence. Carriers will give you rates a 3PL can't get on your volume alone. Heck, even Amazon Shipping will actively want your business.
(9) You're big enough. Past a certain volume, you can hire the ops talent (ex-Amazon's great), negotiate the carrier contracts, and run the WMS yourself. The 3PL margin you were paying becomes your margin. Most brands never get here.
If none of these describe you, outsource.
One caveat that overrides all of this: Don't run a warehouse if you don't have an experienced/strong ops leader. Fastest way to suck at it.