How to Show the Package on a ShipStation Label
Published
Short answer: not directly. ShipStation’s Label Messages feature prints up to three short messages on a shipping label and each one can carry a dynamic order field, but the package name is not among the fields you can choose. The dimensions are, and so are the three custom fields.
So there are three routes: print the dimensions, which works today with no setup; write the box name into a custom field and print that; or put it on the packing slip, which is where it belongs for nearly every operation. This page is only about getting the package onto printed output — how the box gets chosen and applied to the order is a separate job.
What Label Messages actually does
The feature is real and more capable than most accounts use, so it is worth knowing properly before the part where it stops.
Label Messages lives in Account Settings → Printing → Printing Setup → Document Options for Labels. ShipStation describes it as up to three messages printed on shipping labels, “including dynamic information about each order,” with a documented limit of 26 characters each.
There are two ways to fill a message, and the second is the one people miss:
- One field per message. Pick a field replacement from the drop-down next to the message line.
- Several fields in one message. Choose the Please Select option in the drop-down, then type the field replacements into the message box exactly as they appear, square brackets included. ShipStation says you may include separators like commas.
That second mode is why the 26 characters go further than they look. [Dimensions] on its own is one field; [Dimensions], [Weight] is two in one line, if it fits.
Three constraints are documented and all three matter here.
Label messages are account-wide. ShipStation states they “cannot be customized per store or per carrier.” Whatever you set applies to every label the account prints that supports one. There is no per-store variant and no rule that changes them per order.
Not every carrier accepts them. ShipStation says plainly that “not all carriers or services support printing label messages,” that some support none at all, and that where they do print, the position “can vary between carriers and services.” The carrier’s own article in the Integrations guide is where that answer lives, carrier by carrier.
Some carriers put them on customs paperwork too. ShipStation notes that some support label messages on CN22 and CN23 forms or commercial invoices, which is worth knowing before you put anything internal in one.
The field list, and the field that is not on it
This is the part everything else rests on. ShipStation publishes the list of what a label message can carry.
Available from the drop-down:
[Order #] · [Store Company Name] · [Ship Date] · [Order Date] · [SKU #1], [SKU #2], [SKU #3] · [Product #1], [Product #2], [Product #3] · [Dimensions] · [Weight] · [Notes from Buyer] · [Custom Field #1], [Custom Field #2], [Custom Field #3] · [Fill SKU #1], [Fill SKU #2], [Fill SKU #3] · [Warehouse Location #1], [Warehouse Location #2], [Warehouse Location #3] · [Buyer Name]
And five more that ShipStation documents as working but absent from the drop-down, so you have to type them: [Store Name] · [Carrier Name] · [Internal Notes] · [Recipient Name] · [Recipient Phone]
There is no package field in either list.
That is the whole problem, and it is a specific one rather than a general limitation. The label can print the box’s measurements and cannot print the box’s name. Someone looking for exactly this finds a feature that plainly does the job, opens a drop-down of twenty-odd fields, and the one they came for is not there.
Worth pausing on before you build a workaround, because it may not be needed: if what your team needs is the box size, [Dimensions] already does it. A dimension string is short enough for 26 characters with room to spare, it is in the drop-down, and it takes about a minute. If your box names are things like 12x9x6 anyway, you are finished, and the rest of this page is not for you.
The workaround only matters when the name carries information the measurements do not — MAILER-B, WINE-3PK, COLD-SM. A packer reaching for a box does not think in inches.
Custom fields, which are referenceable
[Custom Field #1], [Custom Field #2] and [Custom Field #3] are all in the drop-down. So the mechanism is available: the package name can print on a label if something writes it into a custom field first.
Nothing in ShipStation does that on its own. There is no setting that mirrors the package onto a custom field, and the Set Custom Field rule action writes a value you typed rather than reading one off the order. So the automation-rule version of this is not a copy — it is the same rule stating the box name twice.
In practice that means a rule already applying Set Carrier/Service/Package gets a second action, Set Custom Field 3, with the box name typed in as text. It works, and it is exactly as fragile as it sounds: two places to change when a box changes, and no error if they drift apart. It is fine for three box sizes and unmaintainable at thirty.
Two documented caveats before you build on it.
A store refresh can overwrite it. ShipStation states that if your store sends Custom Field #1, #2 or #3, a rule action setting the same field will override what the store sent — but “if the store refreshes and includes the same order information, ShipStation will update the order to match the store.” So a custom field your selling channel also populates is not a safe place to keep this.
The 26-character limit still applies. ShipStation documents the limit as 26 characters per message and does not say whether it is enforced against the field replacement text or against the resolved value. I have not found that stated anywhere, so keep box names comfortably short and check a real printed label rather than assuming.
The route is genuine, and it is the answer for anyone who needs the name on the label specifically — a third-party warehouse reading labels off a conveyor, or a carrier collection where nobody sees a slip.
The packing slip, which is the actual answer
For nearly every operation, the label is the wrong piece of paper.
The packing slip template exposes the field the label does not. [Package Type] is a documented packing slip field replacement — “the package type selected for the order’s shipment, if available” — sitting alongside [Dimensions], [Product Location] and the same three custom fields. No workaround, no character limit, no carrier support question.
In the accounts I work in this is what I recommend, and it is almost always what the person asking for it on the label actually wanted. The reasoning is just who reads what. A shipping label is read by a carrier and a sorting machine, and the box name means nothing to either. The packing slip is read by the person standing at the bench deciding which box to reach for. Putting the answer on the document that person is already holding is not a compromise; it is the correct place for it.
Customising the packing slip covers the template edit, including where to put the package line so it reads quickly. It is one line of HTML in the Order Footer and it is the highest-return change on this page.
Custom Labels, briefly
There is a further option and it is not a bigger version of Label Messages.
Custom Labels are a customised non-carrier label — a reference label that replaces a packing slip for merchants using their own delivery fleet, click-and-collect, or internal stock transfers. ShipStation builds and maintains the template itself, so it is arranged through support rather than configured in the app, and it is gated: an account in Australia, New Zealand, Canada or the United States, and for US and Canadian accounts a High Volume subscription, with additional fees possible. ShipStation also notes these labels can use QR codes and barcodes in place of label message fields.
If you hand parcels to UPS or USPS, this is not your answer. If you run your own vans, it might be the whole answer.
What to do
In the order I would try them.
Print [Dimensions] and stop. In the drop-down, no setup, works today. If the size is the information your team needs, this is the end of the task.
Put [Package Type] on the packing slip. One line in the template, no limits, and it reaches the person actually choosing the box. This is the right answer for most operations and it is where I would spend the ten minutes.
Write the box name into a custom field. Correct when the name genuinely has to be on the label. Add Set Custom Field 3 to the rule that already sets the package, avoid any custom field your store populates, and accept that the box name now lives in two places.
Ask ShipStation about Custom Labels. Only if you are running your own fleet or collection points and a plan-gated, support-maintained non-carrier label fits how you operate.
Have something compute the box and write both. If the right box depends on the combination of items in the order rather than on a rule you typed, the box name is not a string you can hard-code into a rule in the first place — that is a cartonization problem, and whatever solves it has to put its answer somewhere the label and the slip can read.
That last one is what String does: we work out the box for each order and write it into Custom Field 3 on the way through, so the label message and the packing slip both have something true to print.
Deciding it on every order
When the decision depends on the contents of each order, the packaging on hand and live rates, it has to be worked out per order before anyone opens it.
String is a small engineering firm that builds, deploys and maintains shipping logic inside existing ShipStation accounts: cartonization, rate selection, multi-box splits and batching, decided for every order and written back before your team sees it. There is nothing to log into and nothing to configure. Pricing is flat and monthly, from $500, with no per-shipment fees and no share of savings. If the native options above already cover your orders, you don't need us.
That came through. I will reply within two business days.
Rather not use a form? Email me at paul@meetstring.com and it comes straight to me.