Best Practices For Warehouse Shipping

This is the second post in my series on warehouse procedures. I’ve spent the last couple months overhauling our warehouse so I’ve been doing tons of research on best practices for all things warehouse related. In addition I’ve had 3 warehouse workflow experts with 70 years of combined experience come in to review my setup and tweak it, so I’m pretty confident we got it right. I thought I’d share a broad overview of what we’ve set up. In this post I address shipping.

Shipping speed is how a warehouse’s performance is generally measured. To get to a good speed though you need to first address your receiving procedures. If you’ve done that then you’re ready to take on shipping. We have actually developed custom software for our warehouse which I believe actually exceeds best practices. I’d love for anyone to tell me which steps to eliminate because I’m fairly confident we’ve removed as much as possible. so here is an outline of our full shipping workflow.

  1. Our pick-list is printed and sorted by location, then distributed to the pickers based on warehouse zones. It contains all outstanding orders across all platforms. We currently print the lists on regular paper straight from an Excel export. The pickers cross out what they pick as they pull the item onto their machine. We have several zones, most of which are just a series of aisles, but we also have a zone which is just lower level bins warehouse wide that won’t require an order picker machine to pick.
    1. We don’t prioritize any orders based on SKU or age or portal because our goal is to ship everything outstanding daily regardless of those factors.
  2. Each picker then takes the list and starts down the aisle, picking everything they can until their basket is full. Then they head over to the shipping area and drop off the basket and pick up a new one to repeat the process.
  3. Once the items are dropped off at the shipping area we have a crew of “scanners” that process them from there.  The scanners will then scan the barcode on the package. Luckily for us, all of our products are pre-packaged and labeled with barcodes of their SKU. Once an item is scanned, our custom Crossware functionality will look for the oldest outstanding order for that SKU. It will import that order into UPS Worldship at which point the label will come out of the printer. The scanner then applies the label and loads it into the container.
    1. Crossware is a UPS owned piece of software that allows you to do crazy custom stuff to Worldship. In our case UPS covered the development costs. If you don’t have the volume, you can still hire the guy we worked with here. He does great work.
    2. The other component of this customization is that we had to create a table that contained all outstanding orders. This got complicated because we bill to various accounts depending on the order. So we import all of this data with each scan. This way we can ship any way we want including international and express. As far as the scanner is concerned they just need to scan and apply the label that comes out. This is simply a database table that Crossware reads from.
    3. Once the label is printed Crossware writes back the tracking information to another table, which then imports it into the order. This also triggers the record to be deleted from the original table so you don’t ship duplicates.
    4. You’ll notice at no point is a packing slip mentioned. We don’t use packing slips. This was originally done as an experiment and we received virtually zero complaints, so we eliminated it. If that’s not an option for your though one could conceivably have a packing slip print at the same time as the shipping label from a second printer that reads the same tables.


This is the outline of what is currently happening. I have a few additional things in the works though that I’ll mention here:

  • We’re in the process of integrating with CompassIM. This is a warehouse management system that was recently acquired by Monsoon Commerce. I wanted to be able to use RF scanners to track progress and also compensate based on performance and this is the company I chose. This is just going to replace picking and put away functions. I’m keeping shipping as is. The two main reasons I chose them are 1. They are very affordable compared to most other WMS I reviewed, and 2. They have an API that you can integrate to, so if you switch ERPs or platforms you can still keep things in the warehouse the same if you want to. They also offer a monthly subscription which is perfect for those that are interested in using RF but don’t want to drop $50,000 right out of the gate.
  • We’re going to move the scanners to the order picker machines. Instead of dropping off the rugs and then having the labels added, we’re actually going to mount PCs with scanners and printers to each order picker machine. Then as soon as the product is pulled a shipping label will be put on it. Then the basket will be dropped off simply to be put in the container. This will eliminate another step in the process of manually moving the product. It also reduces mis-shipments and mis-picks.
  • We’re going to compensate based on performance once the CompassIM system is in place. We’re also displaying a real time report on a big screen TV hanging in the warehouse to show where each person stands relative to the other pickers and receivers. This is my attempt to “gamify” the whole process and spurn some healthy competition.

So far we’ve come from a 2 week average shipping time to an average of 52 hours today. So we’ve come a long way but still have a bit to go.

So as I said this isn’t exactly a standard setup but I actually believe this is a more efficient approach. Hopefully this will help you tweak your own operation and at least give you an idea or two. What do you think? I’m open to any and all suggestions!

  • Jose Ignacio

    Hey Tom,

    At Shipedge, we follow a very similar workflow for Label Ready SKUs: packaged and labeled. We had two huge game changers that improved our process:

    1. Small Label Printers everywhere.
    2. The Shipedge Android App.

    We basically batch print the shipping-labels before we start the pick process. Instead of having a paper list for each zone, the picker goes into their android connected to the WMS through WiFi and loads his zone. Each Android is connected to bluetooth barcode scanners (we tried cheap ones, finger ones and also some heavy RF units — They all work as long as they have a bluetooth connection).

    The picker scans a tracking# in the label and then the SKU. If everything checks, that will mark the order as shipped and shares tracking# with everyone. From the Android, pickers can also request more labels and serve them from one of many small printers located in the warehouse. So we basically do pick and QC all in a single process.

    Many warehouse people have android phones, so they just load the app which works only in our warehouse IP after they scan their personal code. Our Android app keeps track of the number of units picked per hour for each person and other metrics. The Android app can even be updated on the fly…

    Checkout the video on my website:, you will see we use them everywhere. We made the Android App with an open API, so we could sell it as an independent solution that could connect to any WMS or even directly to shopping carts or Channel Advisor. So yes, our technology is for sale ; )… We also developed our own multi-carrier shipping station so that we can print any labels, not only UPS. We even have an algorithm to determine the box size for pick & pack orders…

    • Tom Fougerousse

      The site looks great!

      When I first started this latest job they were using a lot of shipping labels to pick. The problem was that some were getting lost and then causing tracking to remain stagnant, etc. So that’s why I changed it. I think it’s past due though that someone builds something for phones. These RFs are absurdly overpriced!