Ask ten business owners how much they make on a product, and nine will calculate it like this: selling price minus purchase price. It’s fast, simple, and almost always wrong. Some understate the cost and think they earn more than they do. Others go the opposite way, trying to cram everything into the cost and drowning in accounting that gives nothing back. Let’s break down what goes into the cost of goods and what doesn’t, and where the clear line runs.
Cost of goods and margin are different things
First, let’s separate two concepts that are constantly confused.
Cost of goods is how much it cost you to have this product ready to sell on the shelf. Not just the supplier’s price, but everything it took for the product to end up with you.
Gross margin is revenue minus cost of goods. What’s left “on top” after you’ve covered the cost of the product itself.
And there’s a third level — net profit: that’s gross margin minus all the other costs of the business (rent, salaries, advertising, commissions, delivery to customers). It’s calculated not per product, but for the business as a whole — in the profit and loss statement (P&L).
Most mistakes happen because these three levels get mixed into one pile. And when they’re mixed, profit is easy to confuse with an illusion — we wrote about that in «Profit or Illusion?».
Trap #1: “price minus purchase” understates the cost
The most common mistake is treating only what you paid the supplier as the cost. But on the way to your warehouse, the product picks up expenses:
- delivery from the supplier;
- duties and customs clearance (if it’s an import);
- broker services, cargo insurance;
- loading and unloading.
All of this is part of the cost of goods, because without these expenses the product simply wouldn’t be on your shelf. If you ignore them, you see an understated cost and an overstated margin. On cheap items the difference is invisible, but on imports, delivery and duties can “eat” most of the imagined profit.
In ERPJS such additional costs are distributed across the batch automatically, forming the real cost of each unit. And when the product is sold, the system takes its cost using FIFO — from the oldest batches, not “the last price at random.” This matters: if you bought the same product three times at different prices, FIFO shows what the exact unit you just sold actually cost.
Trap #2: don’t cram everything into the cost
Having realized that cost is more than the supplier’s price, many people swing to the other extreme: let’s count absolutely everything in the cost of goods. Office electricity, the water cooler, the accountant’s salary, rent, advertising. The logic seems right — these are expenses too. But it’s a mistake, and here’s why.
First, these costs aren’t tied to a specific product. The water cooler doesn’t make your batch of smartphones more expensive. These are costs of the business existing at all, not of this product.
Second, they can’t be allocated correctly. How much electricity “falls on” one T-shirt sold? Any number here is made up. And accounting built on made-up numbers is worse than no accounting, because it creates an illusion of precision.
Third, the weight of these costs is tiny while the hassle is large. You’ll spend a heap of time and effort, make mistakes — and your gross margin will become “more accurate” by pennies. Meanwhile the general costs are already fully captured in the P&L. The game isn’t worth the candle.
There’s a subtlety for manufacturing. Direct energy — the electricity a machine “ate” while making this exact part — is a genuine production cost, and it belongs in the product cost. But general workshop lighting does not; that’s the same “water cooler,” only on the production floor. The difference is one thing: is the cost directly tied to a unit of product, or is it just the backdrop the whole business runs against?
A separate story is administrative costs. People especially love to “hang” them on the product, even though they have nothing to do with it. The director’s salary doesn’t belong in product cost — neither by common sense nor by accounting standards.
A simple line: the moment of receipt into the warehouse
To avoid agonizing every time, remember one rule. The boundary of cost is the moment the product entered your warehouse.
- Everything that happened before that moment (purchase, delivery, duties, customs clearance, and for manufacturing — materials and labor) is the cost of goods.
- Everything that happens after the product is already “yours” (storage, marketplace commissions, delivery to the customer, acquiring fees, advertising, equipment depreciation, admin costs) is a period expense. It goes into the P&L, not the cost.
This boundary settles 90% of the disputes. You don’t have to wonder every time “is this cost or not?” — just ask: did it happen before the warehouse or after?
That’s exactly how accounting works in ERPJS. For each product you see the gross margin — revenue minus the real cost (with delivery and duties, by FIFO). And all the costs of running the business — commissions, delivery to customers, rent, salaries — the system collects in the P&L, where the real net profit is visible. Two levels, each in its place. By the way, from this same cost the system can automatically form the selling price — so the markup isn’t pulled “out of thin air.”
A small practical note: if allocating some pre-warehouse cost precisely is disproportionately hard (and the benefit is tiny) — don’t agonize, put it into a separate expense line. Common sense here matters more than accounting fussiness.
Look where the weight is: inventory revaluation
Here’s the main idea. The energy you spend distributing pennies of lighting is better directed where almost no one looks — because the weight there is many times greater. The best example is inventory revaluation to market value.
While you’re splitting a dollar of lightbulbs across a thousand SKUs, a batch may be sitting in your warehouse that’s really worth tens of thousands less than recorded in the books. The model is outdated, a newer one appeared, prices fell — yet the product still “hangs” at the old cost. Your warehouse is “on paper” worth more than it really is, which means profit is overstated too. That’s where the real weight is — and that’s where the mistake is expensive.
The correct approach (and the one accounting standards require) is to carry inventory at the lower of two values: cost or real market value. If the market dropped, the product is written down, and the difference is recognized as a loss immediately rather than hidden until the moment of sale. One such revaluation does more for an honest picture than a year of meticulously distributing utility pennies.
Conclusion
The cost of goods is neither “the purchase price” nor “all the costs of the business.” It’s a clearly defined value: everything it took to bring the product to your warehouse — and not a penny more. The rest of the costs live in the P&L, where they belong.
When these levels are separated correctly, you finally see the real picture: what the gross margin is on each product and what the real net profit is for the business. ERPJS calculates cost by FIFO including delivery and duties, shows the margin on each item, and brings the full profit picture together in the P&L — without manual spreadsheets and without made-up allocations.
Want to see the real margin on your products? Request a demo — we’ll show you.
—
FAQ
What goes into the cost of goods?
Everything it took to bring the product to your warehouse: the supplier’s price, delivery, duties and customs clearance, broker services, cargo insurance. For manufacturing — materials and production costs. Anything that happened after receipt into the warehouse no longer belongs in the cost.
Do marketplace commissions and delivery to the customer go into the cost of goods?
No. These are selling expenses — they arise after the product is already yours. They belong in the profit and loss statement (P&L), not in the cost of goods. They don’t go into the cost, and they shouldn’t.
Why is “selling price minus purchase price” the wrong margin?
Because the purchase price isn’t the whole cost. If you ignore delivery, duties, and other costs of bringing the product to the warehouse, the cost is understated and the margin overstated. It’s especially noticeable on imports, where logistics and duties can be substantial.
Can I count rent, salaries, and electricity in the cost of goods?
You shouldn’t. These costs aren’t tied to a specific product, can’t be allocated correctly to a unit, and complicate accounting with no real benefit. General and administrative costs are accounted for in the P&L for the business as a whole.
Which costing method does ERPJS use?
FIFO — when sold, the product is written off at the cost of the oldest batches. This shows the real cost of the exact unit sold, even if you purchased the product several times at different prices.
What is inventory revaluation and why does it matter?
It’s writing the product down to its real market value when that value falls below cost (the product became outdated, prices dropped). Accounting standards require carrying inventory at the lower of two values — cost or market value — so as not to overstate the value of the warehouse and the profit.