Problems & solutions · Warehouse Management

Cold Storage Warehouse Software Problems: The 7 That Leak Revenue Every Billing Cycle

Cold Storage Warehouse Software workflow illustration showing common problems and fixes.
The short answer

The most expensive failure in cold storage warehouse software is leaving billable events to be remembered rather than emitted. Blast charges, tempering, case picks, repacks, recouping, palletising and after hours receiving are all performed by floor staff and captured on paper, then reconstructed at month end by a billing clerk working from notes and memory. Whatever is not reconstructed is never invoiced, and because the work was still done, the labour, the energy and the space were all consumed at full cost. In a public refrigerated warehouse this is the quiet leak that funds the entire build, and almost nobody can size it until the first cycle after go live.

Why does the tariff redesign creep into the build?

It happens in almost every project and it is nearly always the wrong call. Halfway through modelling the rate schedule, someone reads it properly for the first time in years and notices that three customers are on rates set before the last energy contract, that the half month cycle for one account makes no operational sense, and that the accessorial list has charges nobody has raised since a previous manager left. The obvious conclusion is that the tariff should be cleaned up, and the build becomes the place to do it.

That decision doubles the moving parts and removes your only means of validation. If the engine implements a tariff nobody has ever invoiced under, there is no known correct answer to test against. Every difference between the new invoice and the old one is ambiguous: it might be the engine, it might be the new rate design, and nobody can tell which. Projects in this state stop trusting the software and revert to the spreadsheet for one more cycle, then another, and the go live never quite happens.

Build to your tariff exactly as written today, including the awkward exceptions and the anniversary cycles and the first period minimums that seem unfair. Get to a billing run that reproduces last month's invoices line for line. Then, and only then, use what the system tells you about the real cost of delivering each service as the basis for renegotiating rates at the next cycle. You will have data you have never had before, and it will make a far better argument to a customer than an intuition would.

What goes wrong when inventory and lot history are migrated?

The dual unit of measure is where migration fails, and it fails silently. Your existing system very likely holds one authoritative quantity, usually cases or pallets, with weight as a secondary field that has been drifting for years through partial picks, repacks and cycle counts that only reconciled one dimension. Loading that into a system where both units are authoritative imports the drift and then computes storage revenue from it.

The result is a first billing cycle where storage charges differ from the old process on a subset of lots and nobody can say which figure is right. That destroys confidence at exactly the moment the project needs it, and it usually gets resolved by reverting to the old numbers, which defeats the purpose.

Handle it as a physical problem rather than a data problem. Do a full weight verification on the lots you are migrating, at least for the customers in your first phase, and treat the verified weight as the opening balance rather than the system figure. Where verification is impractical for aged product, migrate it flagged so that a variance found later is attributed correctly. Migrate lot codes, production dates and receipt dates carefully, because anniversary storage cycles bill from the receipt date of the lot and a wrong date is a wrong invoice on every subsequent cycle. And migrate open holds as holds with their scope intact, not as a status on the pallets that happened to be held on migration day.

Why do trading partner, scale and temperature integrations break after launch?

Electronic data interchange is the usual culprit. Each grocery and food service trading partner implements warehouse shipping and receiving documents its own way, with its own qualifiers, its own tolerance for missing segments and its own expectations about acknowledgements. A quote that prices electronic data interchange as one item has not counted your partners. Worse, partners change their implementation with limited notice, and the failure mode is a rejected document rather than an obvious outage, so it sits in a queue until someone asks where an advance ship notice went.

Scales are the second. Weight capture at receiving has to be reliable because it is the basis of both inventory and revenue, and a scale integration that silently returns the previous reading, or truncates, or reports in the wrong unit after a firmware update, corrupts data at the point of entry where it is hardest to detect. Validate against plausible ranges per commodity and per pallet configuration, and alert on repeated identical readings rather than trusting the device.

Temperature monitoring breaks in the mapping rather than the feed. The feed reports by sensor and zone, and what you need is an excursion tied to the affected lots, which requires knowing what was where at that time. Systems that alert only at zone level generate noise the operations team learns to dismiss, which is the worst possible outcome for a control that exists to protect customer product. Bind excursions to lots through location history so the alert names the customer and the lots at risk.

What happens when hold scope and traceability are not covered properly?

Holds modelled as a status flag on a pallet fail in one specific way, and it is the way that matters. A hold placed today on a production date range will correctly stop the pallets currently in the building. It will not stop the pallets that arrive next Tuesday from the same production run, because there was no flag to set when the hold was placed. That is forward binding, a flag cannot do it, and it is exactly how held product ships.

Model the hold as an object with a scope expressed as a query, an owner, a reason, a document trail and an explicit signed release. Scope has to cover a lot, a production date range across several lots, or everything from one supplier, and it has to bind product received after the hold was placed if it falls within scope. When an inspector asks how a specific pallet was released, the answer needs to be a record naming who released it, when and against what evidence, not a recollection.

Traceability sits alongside this. The federal traceability rule under the Food Safety Modernization Act, commonly called FSMA 204, has a compliance date of July 2028 and applies to foods on the FDA Food Traceability List. Whether your specific customers' products are covered is a question for a food safety consultant rather than an article. Commercially the requirement arrives earlier than the rule does, because grocery and food service customers already ask for lot level trace on request and award business to operators who can produce it in minutes rather than a day.

Should you build custom or configure Datex or Extensiv?

If you run a single site under roughly ten thousand pallet positions, on flat monthly storage rates, with a handful of customers and no blast capacity to schedule, buy. Datex FootPrint and Extensiv 3PL Warehouse Manager will hold your inventory competently and your billing is small enough that a spreadsheet is an annoyance rather than a risk. Put the money into refrigeration, which pays back with more certainty than software does.

Buy also if you are a private warehouse holding your own product. Without third party billing the hardest part of this build disappears, and what remains is ordinary warehouse management that packaged products handle well.

Before commissioning anything, check what your incumbent can actually be configured to do with your rate schedule. Some of the pain we are asked to fix is a billing module nobody finished setting up because the person who understood the tariff never had a fortnight free. That fortnight is far cheaper than a build and it tells you honestly where the product stops.

Build when two or more of these hold. Your billing cycle takes more than two days and depends on one person's knowledge of customer exceptions. You know accessorials are performed that never reach an invoice. Blast capacity is scheduled on a whiteboard and customers get told yes before anyone checks. Customers ask for lot level trace and the answer takes a day. Or you run more than one temperature controlled site and inter site transfers are managed by phone.

How do hidden costs get into the quote?

Four items account for most of the difference between the estimate and the invoice.

  • Tariff variety. Ten customers on similar schedules is a different build from forty with negotiated exceptions. Ask for the estimate to be stated against the number of distinct rate structures in scope, not the number of customers.
  • Trading partner count. Each electronic data interchange partner is real weeks of work and ongoing maintenance, and the list grows whenever you win a grocery account.
  • Freezer hardware. Scanners, label stock that survives condensation, mounts and screens usable with cold weather gloves behave differently below freezing than in an office. Device selection and a proper pilot at temperature is a line item, not an afterthought.
  • Parallel running. One full billing cycle in parallel on a subset of customers, comparing invoices line by line against the spreadsheet, is the step that surfaces the tariff exceptions nobody documented. Budget it as real cost in both hours and calendar.

Multi site stock transfers belong on the list too, because inter site movement changes ownership, billing responsibility and lot history in ways a single site model does not have to consider.

What separates a build that works from one that fails here?

The builds that work treat blast as a resource rather than a location. Blast cells are finite, they are the most energy intensive asset in the building, and residence time depends on the product and how it was loaded. Modelled as capacity with a queue and enforced residence, the system can refuse a booking the building cannot honour and can block early release without a logged supervisor override. It also gives you real utilisation of your most expensive asset, which is the only defensible basis for what a blast charge should cost.

They also emit billable events from the operation that caused them. The blast charge is created when the pallet enters the cell. The case pick fee is created by the pick confirmation. The repack charge is created when the repack task closes. Once every service generates its own charge, the billing run becomes a review of exceptions instead of a reconstruction, and the accessorials that were previously lost appear in the first cycle after go live.

The builds that fail redesign the tariff mid-project, treat catch weight as a field, and pilot scanners at room temperature. Settle ownership before kickoff, in writing: the repository, the infrastructure accounts and the right to hire anyone else. At Digital Heroes the client owns the code from the first commit. In a business where the software is the billing engine for the facility, any other arrangement is a dependency rather than a supplier relationship.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. McKinsey estimates that digitizing the supply chain (Supply Chain 4.0) can cut lost sales by up to 75%, reduce inventories by up to 75%, and lower supply chain operational costs by up to 30%, with up to 30% lower transport and warehousing costs. Source: McKinsey & Company (2016) →
  2. Global retail loses an estimated $1.73 trillion annually to inventory distortion (out-of-stocks and overstocks), equal to about 6.5% of global retail sales, despite $172 billion spent on improvements in the past year. Source: IHL Group (2025) →
  3. Large companies globally have captured, on average, only 31% of the expected revenue lift and 25% of the expected cost savings from their digital and AI transformations - a significant gap between expected and realized value. Source: McKinsey & Company (2023) →
  4. APQC's Open Standards Benchmarking data on the monthly financial close found median performers take about 6.4 calendar days to close the books, while top performers (top 25%) do it in 4.8 days or fewer and bottom performers (bottom 25%) take 10 or more days. Source: APQC (2018) →
Aryan G. · Shopify Engineer · Delhi

Aryan builds and maintains Shopify stores at Digital Heroes, handling theme changes, product and collection setup, app configuration and the steady stream of small fixes a live store generates. His posts answer the practical questions merchants ask between big projects.

View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

Our billing cycle takes four days. Where does the time actually go?
Almost never into calculating rates. It goes into gathering evidence of work that was performed but not recorded systematically, then chasing the exceptions each customer negotiated, then reconciling weights that no longer match the freezer. Instrument those three separately before assuming you need a new system, because the answer tells you what to build first. In most operations the largest block is accessorial reconstruction, which is also the part that produces unbilled revenue rather than only lost hours.
Can a general WMS handle catch weight if we are disciplined about it?
Discipline delays the drift rather than preventing it. A system with one authoritative quantity and a secondary weight field will diverge at partial picks, repacks and cycle counts, because only one dimension is being reconciled. Once weight drifts you are billing storage on a number that does not match what is in the building, and the divergence compounds quietly. Both units have to move on every transaction and variance has to be reported in both for the position to stay reliable.
How do we validate a new tariff engine before invoicing a customer with it?
Reproduce invoices you have already issued. Take a full recent cycle for a representative set of customers, run it through the engine, and compare line by line rather than at the total. Totals can match while two errors offset each other. Every difference must be explained before go live, because differences you cannot explain are the ones that turn into a customer conversation you are not equipped to have.
What happens at the first cycle count after go live?
You find the weight drift you inherited, which is why verification at migration matters. If opening balances came from the old system's secondary weight field, the first count produces variances in both units on the same lots and nobody can attribute them. Verified opening weights make the first count a genuine measurement of the new process instead of an argument about history. Plan the count for early in the first cycle rather than at the end of it.
Do scanners really behave differently in a freezer?
Yes, and it is not a minor consideration. Batteries deplete faster, screens respond differently, condensation forms when devices move between temperature zones, and standard label stock separates. Cold weather gloves change what counts as a usable interface. Pilot the actual devices at working temperature for a full shift before ordering the fleet, because a device that fails at hour six is a device that fails every shift.
How should anniversary storage handle a partial withdrawal mid cycle?
The way your tariff says, which is exactly why the tariff has to be modelled rather than approximated. Some schedules bill the full period regardless, some prorate, some apply a minimum that survives the withdrawal. The engine has to hold the rule per customer and per commodity with effective dates, because these are precisely the clauses that were negotiated individually and that a billing clerk currently applies from memory.
What breaks when we add a second temperature controlled site?
Inter site transfers, first. A movement between your own sites changes location, billing responsibility and sometimes the storage cycle, while lot identity and hold scope have to survive intact across the move. Systems built for one site treat a transfer as a shipment and a receipt, which resets receipt dates and breaks anniversary billing. Model the transfer as a single event with continuity of lot and cycle, and decide explicitly which site bills the period in which it moved.
When should we tell customers about the new system?
Before their first invoice from it, and with the comparison in hand. Customers who receive an unexplained invoice in a new format assume they are being charged differently, even when the total is identical. Send the parallel run comparison for their account, explain any genuine differences, and introduce the portal at the same time so they gain something visible. Operators who do this quietly and then invoice cold spend the following fortnight on the phone.
We run one small warehouse. What would a custom WMS cost for a business our size?
Plan on $40,000 to $80,000 for a focused single-site system covering barcode receiving, location tracking, directed picking, and a shipping station, which is the typical Digital Heroes range for operations with 5 to 30 floor staff. If your inventory pain costs less than about $1,500 a month in mispicks and recounts, custom rarely pays yet, and a mid-market tool or your ERP's inventory module is the smarter spend at that stage.
How small can the first version of my software be and still be worth building?
One workflow, end to end, for one type of user: the single process that currently burns the most hours or loses the most money. In Digital Heroes delivery experience, first versions scoped to 6 to 10 weeks of build time ship, get used, and generate the feedback that makes version two obviously right, while 9-month first versions routinely launch with features nobody touches. Everything you cut from v1 gets cheaper to build later, because real usage reorders the roadmap for you.
How do I calculate whether custom software will pay for itself?
Divide the build cost by the monthly benefit, where benefit is hours saved times loaded hourly cost, plus subscription fees replaced, plus any revenue the software unlocks. Three staff saving 10 hours a week each at a $40 loaded rate is about $62,000 a year, which pays back a $60,000 build in roughly 12 months. Across Digital Heroes internal-tool projects, 12 to 24 months is the normal payback range, and anything projecting under 6 months usually means the spreadsheet is hiding costs.
How many people should be working on my software project?
Three to five for a typical focused build: a project lead, one or two engineers, a designer, and part-time QA, which is the standard shape across 2,000+ Digital Heroes projects. Larger platforms justify 6 to 10, but a ten-person team on a small first version usually signals bill padding rather than horsepower. What predicts success is whether a senior engineer is writing your code daily, not the headcount on the proposal.
We run everything on spreadsheets and Airtable. How do we know it's time for custom software?
The reliable signals are re-typing the same data into multiple tools, one employee acting as human middleware between systems, and errors appearing in handoffs between teams. Hard limits force the issue too: Airtable's Team plan caps at 50,000 records per base, and Business costs $45 per seat per month, so a 20-person team pays about $10,800 a year for a tool it has already outgrown. When workarounds consume more hours than the tools save, the spreadsheet era is over.
What integrations does a custom WMS usually need?
Four categories cover most builds: the ERP or accounting system for purchase orders and invoices, sales channels like Shopify or EDI feeds from retail customers, shipping carriers through UPS, FedEx, or a multi-carrier API like EasyPost, and hardware such as label printers and scales. Each ERP connection typically adds 2 to 4 weeks of work in Digital Heroes builds, and EDI with a big-box retailer adds more. List every integration before asking for quotes, because integrations are the most common source of budget overrun in Digital Heroes projects.
What questions should I ask a development agency on the first call?
Ask who exactly will build it, what happens when scope changes mid-project, what their maintenance terms are after launch, and what they will need from you every week. Then ask them to describe a project that went wrong and what they changed afterward; teams that have shipped at real volume have war stories, and teams claiming a perfect record are hiding something. The scope-change answer matters most: a disciplined shop describes a written change-order process, not a vague promise to be flexible.
What do I need to prepare before contacting an agency about a WMS?
Three things: your volumes (daily order lines, SKU count, peak versus average), the list of systems it must connect to, and a plain walkthrough of how an order moves from dock to door today, including where it goes wrong. A one-page list of your three most expensive process failures beats a 40-page requirements document. Digital Heroes quotes run 20 to 30 percent higher when volumes and integrations are unknown, because unknowns get priced in.
Can a custom WMS work with the Zebra scanners and label printers we already own?
Almost always yes. Modern Zebra and Honeywell handhelds run Android, so the floor app installs on your existing devices, and label printers speak the standard ZPL language a custom system prints to directly. Digital Heroes also builds camera scanning into the same app so ordinary phones work as backup scanners during peak season, and if you do need extra units, new rugged handhelds typically run $1,200 to $2,000 each.
Who can build a custom warehouse management software system?

Digital Heroes builds custom warehouse management software systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.

Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.

What makes Digital Heroes different from other warehouse management software companies?

Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.

Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.

How can I check Digital Heroes is legitimate before getting in touch?

Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.

Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.

Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?