Account Minimums And Monthly Tech Fees: Fixed Overhead That Doesn't Belong In COGS

Monthly 3PL minimums and tech fees are fixed overhead, not variable fulfillment cost. Here's how to spot them on your invoice and keep them out of per-order COGS.
Quick answer
3PL account minimums, WMS/portal access, EDI/API, and integration fees are fixed overhead — they don't scale with order count. Classify them below the contribution-margin line as operating overhead, not inside per-order COGS. Rolling them into COGS makes CM look artificially weak in slow months and artificially strong in peak, with no operational cause.
Account Minimums and Monthly Tech Fees in 3PL Billing
Fixed monthly charges from a 3PL — minimums, WMS access, EDI/API, integrations — that exist regardless of order volume and should sit in overhead, not COGS.
Most 3PL invoices mix two very different cost types on one PDF. Variable charges (pick, pack, ship, materials) move with every order you fulfill. Fixed charges — a monthly storage or revenue minimum, a WMS seat fee, EDI/API port charges, and one-time or recurring integration maintenance — are owed whether you ship 500 orders or 50,000.
Treating both groups as COGS is a common accounting shortcut that quietly distorts contribution margin. The correct classification is to leave genuinely variable fulfillment charges in COGS and move the fixed line items into operating overhead, where they belong next to rent, software, and headcount.
This is one of the most common findings in a 3PL invoice line-item audit. On a typical mid-market Shopify brand's invoice, 8–15% of the monthly spend is fixed overhead disguised as fulfillment cost.
Why rolling fixed fees into COGS distorts your P&L
Contribution margin is supposed to answer one question: does the next order make money? Fixed fees don't belong in that calculation because they don't change when the next order ships.
When you divide a $4,000 monthly WMS fee across orders, your per-order COGS looks great in November (big volume, tiny per-order allocation) and awful in February (low volume, bloated allocation). Nothing operational changed — only the denominator.
The seasonal illusion
A beauty brand we reviewed saw "CM%" swing from 42% in Q4 to 28% in Q1 purely because $6,200/mo in fixed 3PL fees was baked into COGS. After reclassifying to overhead, true variable CM% held steady at 38–40% across all quarters. The real story was volume leverage on fixed costs — not a product-margin problem.
How to spot fixed fees on your 3PL invoice
Scan the invoice for any line item whose quantity column is "1" or whose unit is "month," "account," or "integration." Those are your tells. If the charge wouldn't change when you doubled order volume, it's fixed.
Common offenders: account minimum true-ups (billed when variable spend falls below a floor), WMS user seats, Shopify or NetSuite connector fees, EDI VAN charges per trading partner, lot/serial tracking modules, and recurring "account management" retainers. Shipping label platforms and insurance platforms sometimes hide here too.
How to reclassify without breaking historical reporting
Open a new GL account under operating overhead called something like "Fulfillment platform & overhead." Move the fixed 3PL lines there going forward. Keep per-order variable fulfillment (pick, pack, ship, dunnage) in COGS where it accurately scales with units.
For historical comparability, restate the trailing 12 months using the same split. Yes, it's a few hours of work. It's also the only way your CM% trend becomes interpretable — and the only way board-deck margin numbers stop lying to you about seasonality.
Account-minimum edge case
If your 3PL charges a monthly minimum and you consistently exceed it with variable activity, the minimum effectively disappears into variable cost — no reclassification needed. If you regularly fall short and get billed a true-up, that true-up is pure fixed overhead and should move out of COGS.
Sensitivity checks worth running
Run two scenarios side by side: current CM% with fixed fees in COGS, and restated CM% with them in overhead. The gap tells you how much your reported margin depends on volume rather than product economics. Anything over 3 percentage points is a reporting problem worth fixing this quarter.
Then model the break-even order volume where fixed 3PL fees stop meaningfully diluting margin. If you need 18,000 orders/month just to absorb your WMS and EDI stack, that's a procurement conversation — not a merchandising one. This feeds directly back into the 3PL invoice line-item audit workflow and any 3PL renegotiation.
Frequently asked questions
If the minimum is a floor you consistently exceed with real variable activity, it's effectively variable and sits in COGS. If you get billed a true-up because you fell short, that true-up portion is fixed overhead and should sit below the contribution-margin line.
Operating overhead, in a software or fulfillment-platform line. WMS seats cost the same whether you ship 100 or 100,000 orders, so they fail the variability test for COGS. Treating them as overhead keeps your per-order economics honest.
No. EDI VAN fees, API port charges, and ongoing integration maintenance are fixed infrastructure. They belong in overhead or SaaS/software. The only exception is a per-transaction EDI charge, which is genuinely variable and can sit in COGS.
Both move, but contribution margin changes more meaningfully. Moving fixed 3PL fees out of COGS raises reported gross and contribution margin, and — more importantly — stabilizes them across seasonal volume swings. The absolute profit number doesn't change.
GAAP permits either treatment as long as it's consistent. The management-accounting view (what you use to run the business) can differ from the statutory P&L. Keep a reconciliation schedule so external reporting stays unchanged while internal decisions use the cleaner split.
For brands shipping 3,000–30,000 orders/month, fixed fees usually run 8–15% of the total invoice. Smaller brands can see 20%+ because minimums and WMS seats are a bigger share. A line-item audit will give you an exact number for your account.
If your 3PL quotes a flat monthly fulfillment fee regardless of volume, that fee is fixed by contract — treat it as overhead. If the rate is per-order or per-unit, it's variable and belongs in COGS. The billing structure, not the activity, determines classification.
Quarterly at minimum, and every time your 3PL changes its rate card or you add a new integration. New SKUs, new sales channels, and new EDI partners all introduce new fixed charges that often get mis-classified by default.
Usually the opposite. Investors modeling your business want to see clean variable CM so they can project margin at scale. Fixed fees mixed into COGS make it look like margin doesn't leverage with volume, which depresses valuation multiples.
Pull three months of invoices and sort every line item by "does this charge change with order count?" Any line that's identical across all three months — same amount, same quantity — is almost certainly fixed overhead and a candidate to move out of COGS.
See Metricuno on your data
Bring your stack — Google Analytics, Stripe, a CRM, anything — and we'll walk through the metric tree that turns your funnel into one number.