How to add product dimensions for Shopify shipping
Updated · SMART Shipping Rates (E-TRADE PARTNER)
Shopify admin has no native variant length, width, and height field for app-calculated shipping tables. SMART Shipping Rates & Rules stores those dimensions on the Product dimensions page (also on the Shopify variant page) and supports CSV import and export. You can then use them in calculated rates. Calculated rates need Shopify Carrier Service. Delivery customizations do not.
4.9 · SMART Shipping Rates does this with zones, calculated rates, and delivery customizations.
Try it freeOn this page
Weight alone does not describe a pillow, a lampshade, or a boxed side table. Those products are light and large. If variant size is missing, a dimensional-weight rate cannot see the box, and an actual-weight table will undercharge the cart.
The job is to store complete length, width, and height on every variant that needs size-aware shipping, then point a rate at those values. Enter a few by hand, import the rest, and use shop defaults only as a fallback.
Why product dimensions matter
- They let checkout charge bulky-light goods by cube instead of scale weight.
- They power dimensional-weight rates, volume conditions, and length or girth surcharges.
- They keep support answers factual: the box size in the app is the box size in the rate.
- They make catalog gaps visible with a missing-dimensions filter before you go live.
What Shopify can and cannot do natively
Shopify stores variant weight on the product. That is useful, and it is not the same as variant size. There is no native variant L/W/H field for app-calculated shipping tables. SMART stores those three sides per variant so calculated rates can use them.
| Requirement | Native settings | SMART Shipping rates |
|---|---|---|
| Variant weight | Yes, on the product | Yes |
| Variant L/W/H for calculated tables | No | Product dimensions |
| Bulk fill dimensions | Limited | CSV import and export |
| Find variants with no size | No | Missing dimensions filter |
| Fallback box when a variant has no dims | No | Default dimensions |
Setup steps in SMART Shipping Rates & Rules
- Open Product dimensions. You can also edit the same length, width, and height fields on the Shopify variant page.
- Use the Missing dimensions filter so you work the gaps first. Enter all three sides. A variant with only one or two sides is still treated as missing.
- For a large catalog, click Import dimensions. Use columns variant_id, length, width, height, and unit. An empty cell leaves the stored value unchanged.
- Review the required preview, then confirm Import dimensions. Do not skip the preview.
- Click Export dimensions when you need a backup or a file to edit and re-import. You can limit the file with Only variants missing dimensions.
- Open Settings and set Dimensional unit. Optionally fill Default dimensions. That fallback replaces the whole box, even if a variant has only some sides filled in.
- Create a calculated rate in Shipping rates that uses those dimensions, then test in Checkout simulator before real checkout.
Common mistake: saving only one or two sides
A variant needs length, width, and height. Anything less is treated as no dimensions: 0, 0, 0 unless Default dimensions are set. Rates still return, so a half-filled pillow can look cheap at checkout. Fill all three sides, or set a shop default on purpose.
Worked example: pillows, lampshades, and furniture
A home goods merchant sells throw pillows, lampshades, and lightweight furniture. Scale weight is low. The boxes are not. The team wants size on every shippable variant before it turns on dimensional-weight rates.
| Product | Actual weight | Box to store (cm) | Why size matters |
|---|---|---|---|
| Throw pillow | 0.4 kg | 45 × 45 × 20 | Light, occupies a large mailer |
| Drum lampshade | 0.8 kg | 40 × 40 × 50 | Hollow, billed on cube |
| Side table | 8 kg | 70 × 45 × 45 | Furniture carton, not a small parcel |
- Filter Product dimensions to Missing dimensions and enter the lampshade and side table by hand.
- Export a CSV, fill the pillow variants, and import with columns variant_id, length, width, height, unit. Example row: 45000000000001,45,45,20,cm.
- Preview the import, confirm the variant count, then import.
- In Settings, set a small default box only for accessories that always ship in the same mailer. Leave furniture without a default so a missing table cannot silently inherit a mailer size.
- Create a dimensional weight shipping rate using Cart dimensional weight so the pillow and lampshade are charged on cube.
You can enter sides in any order. SMART sorts them longest-first when it evaluates rates. Chargeable weight is max(actual weight, volume ÷ volumetric divisor). The divisor lives in Settings, not on the product row.
Tips for a catalog you can maintain
- Treat Product dimensions as source data. Rates only read what is stored there.
- Re-run the Missing dimensions filter after imports. Empty CSV cells do not wipe values, but they also do not fill gaps.
- Set Default dimensions only when a true standard box exists. Whole substitution means a half-filled variant uses the default, not a mix of typed and default sides.
- Align Dimensional unit and Volumetric divisor in Settings before you test DIM rates.
- After dimensions are in place, use dimensional weight rates when packed cost follows cube, not scale weight.
Store the box sizes your shipping rules can use
SMART Shipping Rates & Rules is rated 4.9 stars across 300+ Shopify App Store reviews.
Try the app free4.9 stars · 300+ reviews
How to test before launch
Pick one pillow, one lampshade, and one furniture variant. Confirm all three sides on Product dimensions, then run those carts in Checkout simulator. Include one variant with no dimensions, and one that should use shop defaults if defaults are set. Repeat the same carts in real checkout. The simulator does not run delivery customizations.
Frequently asked questions
›How do I add product dimensions in Shopify for shipping?
Shopify admin has no native variant size field for app-calculated shipping tables. In SMART, open Product dimensions and enter length, width, and height for each variant.
›Does Shopify have length, width, and height on product variants?
Shopify does not provide variant length, width, and height for app-calculated shipping tables. SMART stores those values on the Product dimensions page and on the Shopify variant page.
›Can I import product dimensions with a CSV?
Yes. On Product dimensions, use Import dimensions with columns variant_id, length, width, height, and unit. Empty cells leave stored values unchanged, and a preview is required before the import runs.
›What happens if a Shopify product has no dimensions?
SMART treats missing dimensions as 0, 0, 0 unless Default dimensions are set in Settings. Calculated rates still return.
›How do I use product dimensions in a Shopify shipping rate?
After dimensions are stored, create a calculated rate in Shipping rates that uses a dimensional condition or Cart dimensional weight / Product dimensional weight as the calculation base. See dimensional weight shipping rates.