Naar de inhoud

Just launched ask us anything — usually answered within a working day

For online shops

IOSS versus holding stock in the EU: where is the break-even?

One route has no fixed cost and pays €3 per product type on every order. The other has a VAT registration to pay for and no duty at all. At what monthly volume do they cross, and what moves that point?

· 12 min read

Contents

In short

  • The comparison is a fixed cost against a per-order cost. That is all it is, and it has exactly one crossing point.
  • On the assumptions below the two routes cross at about 69 parcels a month to a single country, with one product type per parcel.
  • At two product types per parcel the crossing moves down to about 34 a month, because the duty side doubles and the local side does not.
  • Below the crossing, IOSS plus the €3 is genuinely cheaper. Above it, the registration pays for itself and keeps paying.
  • Delivery time is not in the sum. If a domestic transit time converts better for you, the crossing point is lower than the money alone suggests.
  • Every number here is an assumption you should replace. The calculator further down takes your own.

Since 1 July 2026 an import into the EU carries €3 per product type in the consignment. IOSS handles the VAT and does nothing about that charge.

Holding stock inside the EU removes the charge entirely, because the border is crossed once on a bulk shipment instead of on every order. It costs you a local VAT registration.

So the whole decision is one line of arithmetic: at what monthly volume does a fixed cost become cheaper than a charge on every parcel? This article does that sum and then hands you the inputs.

The five assumptions, stated up front

€8.00 for a cross-border label, €5.00 for a domestic one, €3.00 duty per product type, €3.10 in fulfilment on the local route, and €200 a month for a VAT registration with a fiscal representative. Only the fulfilment figure is ours; the other four are yours to replace.

What are you actually comparing?

Import every order (IOSS)Hold stock in the EU
Fixed cost per monthNoneVAT registration, fiscal representative, bookkeeping
Customs per order€3 per product typeNone — the import happened once
Shipping labelCross-borderDomestic
FulfilmentYou or your existing setupA fee per order
Delivery timeCross-border, with a clearance stepDomestic
What it scales withYour order count, linearlyYour order count, minus a fixed base
One route is a straight line through zero. The other starts higher and rises more slowly. They cross once.

That is why "which is cheaper" has no answer without a volume attached to it. At five parcels a month the fixed cost dominates everything; at five hundred it is a rounding error.

What does each route cost per parcel?

Cost itemImport every orderHold stock in the EU
Shipping label€8.00€5.00
Customs duty€3.00 per product type
FulfilmentYour own time or 3PL€3.10
Total per parcel, one product type€11.00€8.10
Total per parcel, two product types€14.00€8.10
The local route also carries €200 a month that this table does not show. That is the whole point of the next section.

Note what the second product type does. On the import route it adds €3.00 to every single parcel; on the local route it adds nothing at all, because there is no import to charge.

Where is the break-even?

Line chart of monthly cost against parcels a month. The import route rises from zero at €11.00 a parcel. The EU stock route starts at €200 a month and rises at €8.10 a parcel. The two lines cross at roughly seventy parcels a month.
On these assumptions the lines cross at about 69 parcels a month. Left of the crossing, importing is cheaper; right of it, local stock is.
Parcels a monthImport routeEU stock routeDifference
25€275€403€128 more with local stock
50€550€605€55 more with local stock
100€1,100€1,010€90 saved with local stock
200€2,200€1,820€380 saved with local stock
400€4,400€3,440€960 saved with local stock
One product type per parcel, one destination country. Excludes returns and VAT, which fall on both routes.

Below 69 parcels a month you are paying a registration to save duty you were barely paying. That is the honest reading of the top two rows, and it is the reason this article exists rather than a landing page.

Above it the gap widens every month, and it widens fastest for the shops with the most orders and the smallest baskets.

How do product types move the crossing point?

More than anything else in the sum. The duty is per tariff heading in the parcel, so a shop that ships bundles pays a multiple of what a single-product shop pays.

Product types per parcelDuty per parcelImport cost per parcelBreak-even
1€3.00€11.0069 parcels a month
2€6.00€14.0034 parcels a month
3€9.00€17.0023 parcels a month
4€12.00€20.0017 parcels a month
Same fixed cost, same local cost per parcel. Only the duty side moves — and it moves the crossing point a long way.

A shop shipping three-product sets crosses at roughly 23 parcels a month rather than 69. If that describes you, run the sum before you assume you are too small.

How the per-product-type counting works, and why splitting a parcel does not help, is in The EU's €3 customs charge.

What is really in that fixed cost?

  • The VAT registration itself. Free to apply for, but it comes with periodic returns that someone has to file.
  • A fiscal representative, for businesses established outside the EU. That is a fee, and they will usually want a security deposit or bank guarantee on top.
  • Bookkeeping. A second set of returns in a second country is real work, whether you do it or pay for it.
  • One customs clearance on the bulk shipment. It is a one-off rather than a monthly cost, but it belongs in the first year.
  • The stock itself. Inventory sitting in another country is working capital that is not in your bank account.

What the registration involves in the Netherlands, and why OSS does not remove it, is set out in VAT when you store stock in another EU country.

The fulfilment side has no fixed cost in our model — no storage fee, no minimum, no contract. That is what makes the local line start at the registration rather than well above it.

Put your own numbers in

With a 3PL

€3.95

Per order

€395 a month

With AirPost

€3.10

Per order

€2.25 sender fee + €0.85 platform fee, at any volume

€0.85 per order cheaper here.

Set-up cost spread over twelve months. Excludes carrier rates, returns and VAT.

What does this calculation leave out?

Four things, and they do not all point the same way. Two make local stock look better than the sum suggests, and two make it look worse.

What is missingWhich way it pushesWhy
Delivery timeTowards local stockA domestic transit time converts better than a cross-border one. It is real money and it is not in the cost line.
Refused and undelivered parcelsTowards local stockA domestic parcel has no customs step to fail at, so fewer parcels come back.
Working capital in stockAway from local stockInventory sitting in another country is money you cannot spend on advertising or on more inventory.
Returns handlingAway from local stockA return to a person with a spare room is a different problem from a return to a warehouse. Agree it before you start.
Deliberately left out of the arithmetic above. Adding a guess for any of them makes the break-even feel precise while making it less true.

The honest way to use them is as a tiebreaker rather than as an input. If the sum says the two routes are close, the first two rows usually decide it in favour of local stock.

If the sum says importing is clearly cheaper, none of the four is big enough to overturn that.

When does IOSS stay the right answer?

  • Under about 69 parcels a month to any single EU country.
  • A wide catalogue where orders pull from too many SKUs to hold locally.
  • Seasonal or unpredictable volume, where a fixed cost runs all year and the orders do not.
  • High average order values, where €3 to €9 of duty disappears in the margin.
  • Weekly volume into one country with small, light products — that is the case local stock was built for.
  • Bundles of three or more product types, where the duty multiplies and the local route does not.

There is no shame in the top half of that list. Most shops selling into the EU should be on IOSS and should stay there until the volume argues otherwise.

How do you check it on your own numbers?

  1. Take one country and one real month

    Not your EU total. The registration is per country, so the sum is per country, and your largest EU market is the only one worth starting with.

  2. Count distinct product types per order

    Not items — tariff headings. This is the input that moves the answer most, and it is the one nobody has to hand.

  3. Get a real quote for the registration

    A fiscal representative quotes on your situation. Use their number rather than ours, and ask about the deposit separately.

  4. Price a domestic label in that country

    A domestic parcel is a different rate card from a cross-border one. Take the real figure for the size you actually ship.

  5. Divide the fixed cost by the per-parcel gap

    Monthly fixed cost divided by the difference in cost per parcel. That is your break-even, in parcels a month, and it is one line of arithmetic.

  6. Add delivery time to the decision, not to the sum

    Keep it out of the money so the money stays honest. Then ask separately what a domestic transit time is worth to your conversion rate.

Frequently asked questions

At how many orders a month is an EU warehouse worth it?

On the assumptions in this article, around 69 parcels a month to a single country with one product type per parcel, and around 34 if you typically ship two product types. Your own break-even depends mostly on those product types and on what a fiscal representative charges you.

Does IOSS become pointless if I hold stock in the EU?

No. Orders shipped from your EU stock are domestic or intra-EU supplies, but anything you still import stays under IOSS. Most sellers end up running both.

Is the €3 charge really per product type?

Yes — per tariff heading in the consignment. Two identical items are one product type; two different products are two. That is why bundles move the break-even so far.

What if I sell into five EU countries?

You do not need stock in all five. Goods held in one EU country ship intra-EU to the other four without any import duty; the only question is transit time and the local rate card.

Does delivery time belong in the calculation?

Not in the cost calculation — keep that honest. Handle it separately: estimate what a domestic transit time does to your conversion rate, and treat it as a second reason rather than a discount.

What happens if my volume drops after I register?

The registration and its returns continue while the orders do not, which is exactly the risk of any fixed cost. That is why the honest advice below the break-even is to wait.

Sources

A break-even is not an opinion. Take the fixed cost, divide it by the gap per parcel, and the number that comes out is yours rather than ours.

See the domestic rate and transit time per country

Where we are active

Share this article

Read next