Guide

Why Are My Import Margins So Low? The 28% That Was 11%

L

Landara Team

Import Operations Experts

||Updated |8 min read
Share:
THE 28% THAT WAS 11%WHAT THE SHEET SAYSSell price$50.00Cost per item-$36.00Reported margin28%$60,000 of revenue, $16,800 of gross profitbut then...WHAT THE UNITS COSTSell price$50.00Cost per item-$36.00Freight, never put on the goods-$2.80Customs duty-$2.40Clearance, port, insurance, delivery-$1.30Paid at a worse rate than the sheet-$1.20Second container, a higher cost-$0.71Recoverable import tax: $4.24 out, $4.24 backCash flow, not cost. Never in the margin.Real margin11.2%Blended cost of the units sold: $44.41Four ordinary errors. 16.82 margin points. Not one is a counting error.Worked illustration. Every line ties: 36.00 + 2.80 + 2.40 + 1.30 + 1.20 + 0.71 = 44.41

Your margin reads high because the number you are dividing by is only part of what the units cost.

Freight, customs duty, clearance, port charges, inbound delivery and the rate your bank actually gave you are the rest, and they arrive later, on documents from five different companies, not one of which mentions a product.

Worked below as an illustration: a quarter that reports a 28% gross margin and is really 11%. Your stock counts can be perfect and this still happens, which is the part that catches people out. Nothing in it is one dramatic error. It is four ordinary ones, stacked, and every individual number along the way looks fine.

The quarter that looked fine

Start by taking counting off the table. Every unit that arrived was scanned in and your store's on-hand figure is right to the unit. Nothing that follows is a counting problem.

You order 1,000 units. The supplier invoices in their own currency, and your sheet converts it at the rate sitting in the cell when you raised the purchase order. That comes to $36.00 a unit, and $36.00 goes into the Cost per item field in your store and into the cost column of your margin sheet.

Eleven weeks later you actually pay. The rate has moved and your bank takes its margin, so what left your account works out at $37.20 a unit, not $36.00. The difference lands in your books as a bank charge and an exchange line, neither of them attached to a product. Nobody goes back to the sheet.

The container clears customs in March. You sell at $50.00, and the sheet says 28%. Over April, May and June you sell 1,200 units: $60,000 of revenue and, on that sheet, $16,800 of gross profit. You reorder on the strength of it.

The other invoices arrive in the order they always arrive. The forwarder bills in late March. The customs broker bills separately for duty and clearance, the same week. The port bills. The transport company bills. Your bookkeeper codes each one to freight or to duty as it lands, and not one of them carries a SKU or a product name.

A second container lands in May, after freight rates moved sharply between the two bookings, and 200 of the units you ship in June come out of it. The sheet still says 28%, because the cost cell still says $36.00.

Nothing in that sequence is negligent. Every invoice was paid, every entry was coded, every unit was counted correctly, and the margin is wrong by nearly 17 points.

What the units actually cost

The numbers here are an illustration, not a customer. They are round enough that you can check every line, and they are the shape this goes wrong in, but no business is being described.

Duty is assumed at 6%; yours depends on your HS code and country of origin. Duty and insurance are charged on the goods plus freight, which is why both are calculated on $40,000 rather than $37,200.

Cost lineAmountPer unit
Goods, 1,000 units, at the rate the payment actually settled at$37,200.00$37.20
Sea freight and forwarder charges$2,800.00$2.80
Customs duty, 6% of $40,000$2,400.00$2.40
Customs clearance and broker fee$450.00$0.45
Port and terminal charges$290.00$0.29
Cargo insurance, 0.5% of $40,000$200.00$0.20
Inbound delivery to the warehouse$360.00$0.36
Total landed cost, 1,000 units$43,700.00$43.70

Recoverable import tax

Below that total, and never inside it, sits recoverable import tax (GST, VAT, or whatever your border charges). At a 10% rate it is 10% of $42,400, the goods plus freight plus duty, which is $4,240 paid at the border in March and claimed back on your next return. It is cash tied up, not a cost of the goods. Fold it into the total and every unit reads $47.94 instead of $43.70, the stock on your shelf is carried above what it cost, and the tax never reaches the return it was supposed to be claimed on. If you import into the United States there is no recoverable import tax at the border: you pay duty, tariffs and processing fees with nothing to claim back, and the table above is complete as it stands.

The second container is the same 1,000 units from the same supplier, landing in May after freight rates moved sharply between the two bookings. Goods $38,400, because the currency moved again. Freight $5,600. Duty at 6% of $44,000 is $2,640, clearance $450, port $290, insurance $220, inbound delivery $360. Total $47,960, or $47.96 a unit.

Where the missing 17 points went

Oldest stock ships first, so of the 1,200 units you sold in the quarter, 1,000 came out of the first container at $43.70 and 200 out of the second at $47.96. That is $53,292 of cost against $60,000 of revenue, and a gross margin of 11.2%.

Your sheet costed all 1,200 units at $36.00, for a cost of goods sold of $43,200 and a margin of 28.0%. The difference is $10,092. On $60,000 of revenue one margin point is $600, so the gap is 16.82 points.

What went wrongUnderstated byMargin points
The supplier invoice held at the rate in the sheet, not the rate the payment settled at$1,440.002.40
Freight coded to a freight expense account and never put on the goods$3,360.005.60
Duty, clearance, port charges, insurance and inbound delivery never allocated to anything$4,440.007.40
One cost cell, two containers: the 200 units from the second one carried the first one's number$852.001.42
Total$10,092.0016.82

Not one of those is a counting error. Scan every carton, reconcile every receipt, and all four are still there, because none of them is about how many units you have. They are about what the units cost.

The third row is the biggest and the dullest. Duty, clearance, port charges, insurance and inbound delivery are $3.70 a unit on the first container, and every one of them arrived on a document that named a container rather than a product. Nobody decided to leave them out. There was simply no step in the month where they were put in.

The first row is the smallest and the easiest to argue with, which is why it is worth keeping. It is 3.3% on the goods line, it is genuinely money that left your account, and it is invisible by construction: the sheet holds a rate from the day you ordered and the bank charges you a rate from the day you paid.

The last row is the one that grows. This quarter it is $852, because only 200 units came out of the second container. Next quarter, when all 1,200 do, the same single cost cell costs you $5,112.

Why nobody catches it

The money is not missing. On the first container, $6,500 of cost that was not the goods hit the profit and loss in March. On the second, $9,560 hit it in May. The stock those costs belonged to sold across April, May and June.

So March carries a cost with almost no matching sales and reads as a bad month, and April reads as a very good one. Nothing is unreconciled. Nothing is unpaid. No report anywhere shows a gap, because the gap is between two numbers that were never put next to each other: the cost in the margin sheet and the cost in the expense accounts. Businesses under a couple of million in turnover routinely expense the freight invoice in the month it lands while the stock it belonged to takes two or three months to sell, which is why the profit and loss swings for reasons nobody can point at.

The same error shows up a second time, on the other statement. At the end of the quarter you are holding 800 units from the second container. At $47.96 they are worth $38,368. Carried at $36.00 they are worth $28,800, so closing stock is understated by $9,568 as well.

The same product, bought at two prices

Your margin report holds one cost per product. Your warehouse holds one cost per delivery. Every delivery lands at its own cost, and the next one rarely matches the last.

You now hold one product at two costs: $43.70 from the first container and $47.96 from the second. Your store has one cost field. Average the two containers together and you get $45.83, a price that was never paid for anything. First in, first out says the 1,000 units from the first container cost $43.70, and only when those are gone do you start shipping $47.96 stock. On those 1,000 units the difference between the average and the real one is $2.13 each, or $2,130 in a single quarter on a single product.

And if you do go in and update the cost field when the second container lands, it is worse rather than better: the units you already sold silently reprice at the new number, last quarter's margin changes after you reported it, and the record of what those units actually cost is gone.

What people try first

A spreadsheet. Genuinely right for two or three shipments a year across a handful of products, rebuilt each time. Its flaw is not that it is manual. It is that it is disconnected: your store sold 1,200 units this quarter and the file has no idea. Every number in it was true the moment you typed it and has been drifting since.

Typing a better number into the Cost per item field. Right for a product that arrives once at one price and never changes. Otherwise the field holds one number, so the moment the second container lands you are choosing which of two costs to be wrong about.

A profit dashboard. Right if the question is which ad set is working, and several are very good at that. But a dashboard reads the cost field, it does not compute one. Feed it $36.00 and it will report 28% on every chart, beautifully, for as long as you like.

A full inventory system. Right if you need demand forecasting, purchase planning across warehouses or a manufacturing bill of materials. The large ones solved cost per item years ago. Two things make them a poor fit for a smaller importer: they are built for larger operations, and most keep the costed number in house rather than pushing it back to the store you actually sell on.

Each of those answers a real question. None of them answers "what did the units that shipped last month actually cost".

What actually fixes it

Five capabilities, in order.

  1. Freight, duty, clearance, port charges and inbound delivery allocated across the units of the shipment they belonged to, before the cost of those units is set.
  2. The supplier invoice converted at the rate the payment actually settled at, taken from the amount that left your bank rather than a rate typed into a cell months earlier.
  3. Recoverable import tax excluded from that allocation and tracked as the cash item it is.
  4. A separate dated cost for every receipt of stock, drawn down oldest first as orders ship, instead of one field per product that the next container overwrites and the last one loses.
  5. Month end producing a ready-to-post Dr COGS / Cr Inventory journal your bookkeeper reviews and posts to Xero or QuickBooks Online.

That is what Landara does. Shopify counts your stock. Landara costs it.

Worth saying what it is not. Landara is not an inventory system and is not trying to become one. If you need demand forecasting, purchase planning across warehouses or a bill of materials, a full inventory platform is the right tool and Landara is the wrong one.

And one thing it does not do today. This piece started by taking counting off the table, so it should say what happens when you cannot. If what you ordered, what arrived and what you were invoiced for do not agree, that is a receiving problem, and no costing tool fixes it by costing harder. Landara costs against the quantity your store recorded as received, so the per-unit figure is right for the stock you actually have. Telling you that those three numbers disagree in the first place is a different job, and not one it does yet.

Want to check one shipment first? The landed cost calculator is free and needs no signup. For what a healthy margin looks like rather than why yours is wrong, see ecommerce profit margins.

Find Your True Margins

Freight and duty belong in your unit cost, not in a spreadsheet your store has never seen. Landara lands them into every cost layer automatically.

Start Free
L

Written by Landara Team

Import Operations Experts

The Landara team is dedicated to helping importers and ecommerce sellers streamline their landed cost calculations and optimize their import operations.

Related Articles

THE FORMULA DOES NOT COMPUTE COGS. IT BACK-SOLVES IT.TWO VERY DIFFERENT QUARTERSQuarter A750 units sold to customersnothing lostQuarter B700 units sold to customers50 units gone, nobody knows howTHE SAME THREE INPUTSBeginning inventory$4,800+ Purchases$9,600- Ending inventory$4,000COUNTED, NOT CALCULATED250 units on the shelf, either waybecause the 50 are not there to countONE ANSWERCost of goods sold$10,400Quarter A revenue $24,000Quarter B revenue $22,400$800 of loss, filed as cost of salesWhatever is missing from the count becomes cost of goods sold, by definition.And every receipt of stock arrives at a different price, so all three inputs are valuations.
Guide

COGS Formula: What It Calculates, and What It Hides

11 min read

THE ENTRY TAKES TEN SECONDS. THE AMOUNT TAKES A LEDGER.RECEIPTS OF STOCK12 March600 units, goods $6,000freight, duty, clearance $1,200$12.0028 April400 units, goods $4,800freight, duty, clearance $1,400$15.50MAY SALES, OLDEST LAYER FIRST450 units shipped150 x $12.00 = $1,800300 x $15.50 = $4,650$6,450the cost of the units that leftTHE JOURNALDr Cost of Goods Sold$6,450Cr Inventory$6,450A COST PER SKU WOULD HAVE SAID450 x $10.00 = $4,500$1,950 of margin you never hadEvery receipt of stock arrives at a different price, and your store keeps one.Cost of sales plus closing stock has to add back to what came in. A report never has to.
Guide

COGS Journal Entry: How to Prepare One You Can Defend

8 min read