Do I Need an HS Code for International Shipping? (Shopify Beginner Guide)
Every few years the same question pops up on r/shopify: "Do you need to do HS codes?", "is hs code for all products a must?", "Do I need an HS code for international shipping?" — and new sellers get buried in conflicting answers.
Here's the direct version: yes — if you ship internationally, your parcels need HS codes, and from November 1, 2026 the EU's per-line charge makes correct codes directly tied to your profit margin.
The short answer
- Domestic-only orders (US→US, UK→UK): no HS code needed.
- Any international order: the carrier must declare what's inside. HS codes are how customs understands the goods — no code means a hold, a guess by customs, or both.
- EU-bound parcels ≤€150: HS6 grouping decides your per-line charge. Wrong codes = wrong lines = more €5 charges (see below).
What happens without an HS code
You can't "just skip it" on an international parcel. In practice, "missing" codes play out as:
- Customs hold. The parcel sits until a code is provided — days of delay, angry customers, refund requests.
- Carrier re-classification. The carrier assigns a code for you — often a catch-all with the worst rate, charged back to you.
- Wrong line math. Misclassified goods break HS6 grouping, so identical products get declared on separate lines and the EU €5 charge multiplies.
We covered the damage in detail here: what happens when your HS code is wrong.
What you actually need to set up (minimum viable)
You don't need a customs license — you need three things:
- The correct HS6 for each product you sell internationally. Start with your top 20 SKUs; that's 80% of your order volume.
- A home for it in Shopify. HS code goes in each product's Customs information (commodity code field), which Shopify attaches to customs docs. See the Shopify HS code field setup guide.
- Consistency between platforms. The code Shopify bills and the code your carrier declares must match — mismatches are where double-charged lines come from.
Why this matters more from November 1
From November 1, 2026, the EU charge per declaration line rises to €5 (€3 duty + €2 Union Handling Fee). Correct HS6 grouping — same code, same description, same origin on one line — is the legal lever that keeps lines low. Sellers doing this properly see 73–80% savings on the duty portion.
For a beginner, that's the difference between a store that eats €25 on a 5-line order and one that shows its customer a clean €5.
Where to find your codes
- Use the free HS code lookup tools we tested.
- Check your supplier's invoice — suppliers usually declare a code; verify it against the lookup.
- Run your product list through the free EU duty calculator to see line counts and charges before Nov 1.
Calculate my EU duty exposure →
FAQ
Q: Do I need an HS code for every single product?
A: Every product you ship internationally needs a classification. You can start with HS6 for your top SKUs — find each product's HS code first, but unsold or missing codes on other products still cause holds when they ship.
Q: Is HS6 the same as the US HTS code?
A: No — HS6 is the global 6-digit core; HTS is the national extension. For EU orders, HS6 is what drives your per-line charge. See the HTS vs HS6 breakdown.
Q: What if I only use DDP / paid shipping labels?
A: Your carrier still needs codes to create the declaration — DDP just moves who pays. If codes are wrong, DDP orders get charged the penalty on your account.
Q: I'm a beginner — is this urgent?
A: If you ship to the EU, yes, before Nov 1. The €5 regime starts then, and fixing codes after the fact means refunding overcharged customers or eating the lines.