Nexus Logic SystemsShopify apps

Is cost of goods sold an expense? COGS vs operating expenses

Updated · By Senoussi, developer of True COGS at Nexus Logic Systems

Short answer

Yes. Cost of goods sold is an expense, but a special one. Stock you buy is first an asset (inventory). It becomes an expense only when it sells: IAS 2 says that when inventory is sold, its carrying amount is recognised as an expense in the period the revenue is recognised. It is shown on its own line above gross profit, apart from operating expenses such as rent, wages, ads and fees. A US sole trader reports it in Schedule C Part III, separately from the expenses in Part II.

Expense, but not when you buy

  • When you buy stock, the money becomes inventory, an asset on the balance sheet. No expense yet.
  • When a unit sells, its cost moves from inventory to cost of goods sold, in the same period as the sale (IAS 2).
  • Units still on the shelf at the end of the period stay in inventory and reach COGS in a later period, when they sell.

So a month in which you buy a lot of stock does not have a large COGS. A month in which you sell a lot does.

Where COGS sits on the profit and loss

Net sales
− Cost of goods sold
= Gross profit
− Operating expenses (rent, wages, ads, payment fees, apps, shipping to customers)
= Operating profit
COGS vs operating expenses.
Cost of goods soldOperating expenses
WhatThe cost of the units you sold: price paid, inbound freight, dutyThe cost of running the business
When it is an expenseWhen the goods sellWhen the cost is incurred
Goes withEach unit soldThe period
ShippingFreight to bring stock in (freight-in)Shipping orders to customers (freight-out)
Margin it drivesGross marginNet margin

A worked example

One month, illustrative figures, checked to the cent.
LineAmount
Stock bought this month$30,000.00
Net sales$45,000.00
Cost of the units sold (COGS)$18,000.00
Gross profit$27,000.00 (60.00%)
Operating expenses$15,750.00
Operating profit$11,250.00 (25.00%)
Stock bought but not sold, still in inventory$12,000.00

The $30,000.00 of stock is not all an expense this month. Only the $18,000.00 that sold is COGS; the other $12,000.00 stays in inventory until it sells.

COGS on a US tax return

  • Schedule C has its own part for cost of goods sold, Part III, separate from Part II, Expenses.
  • Most businesses that buy and sell merchandise must take inventories into account at the beginning and end of the tax year. Small business taxpayers (average annual gross receipts of $31 million or less for the 3 prior years, and not a tax shelter) can choose not to keep an inventory, but must still use a method that clearly reflects income (IRS Schedule C instructions, 2025).
  • The COGS formula, beginning inventory + purchases and freight-in − ending inventory, is on the COGS calculator.

Cost of sales and cost of revenue

Companies give the same line different names. IAS 1 lets expenses be presented by function, such as “cost of sales”; many US companies say “cost of revenue”. For a store that only sells goods, all three mean the cost of the goods sold. If you also sell services, ask your accountant which costs of those services go in the line.

What this means in Shopify

  • Shopify's profit reports calculate cost of goods sold from the Cost per item recorded on each order when it was created, so COGS appears only as products sell, as it should.
  • A product with no Cost per item when it sold is left out of Shopify's profit reports, so those reports do not cover all your sales.
  • A Cost per item that is older than your last delivery, or leaves out freight and duty, puts the wrong amount into COGS on every sale. True COGS keeps it at the weighted average (or FIFO) cost of what you paid and, on paid plans, closes each month with opening stock, purchases, cost of goods sold and closing value for your accountant.

Questions merchants ask

Is COGS an expense?

Yes. Cost of goods sold is an expense recognised when the goods are sold, shown above gross profit and separately from operating expenses.

Is buying inventory an expense?

Not when you buy it. The stock is an asset until it sells; then its cost becomes cost of goods sold.

What is the difference between COGS and operating expenses?

COGS is the cost of the units you sold: the price paid plus inbound freight and duty. Operating expenses are the costs of running the business, such as rent, wages, ads, payment fees and shipping to customers.

Is cost of revenue the same as COGS?

For a store that only sells goods, yes: cost of sales, cost of revenue and cost of goods sold name the same line. If you also sell services, ask your accountant which service costs belong in it.

Where does COGS go on Schedule C?

In Part III, Cost of Goods Sold, which is separate from Part II, Expenses.

Is shipping to customers part of COGS?

No. Shipping orders to customers is a selling cost. Freight to bring stock in is part of inventory cost and reaches COGS as the units sell.

Why is my COGS too low in Shopify?

Usually because some products had no Cost per item when they sold and are left out of the profit reports, or the cost is older than your last delivery or leaves out freight and duty.

Try True COGS free. True COGS is an inventory costing app for Shopify by Nexus Logic Systems. It records the price you paid on every delivery (a received purchase order or a transfer), with its share of freight and duty on paid plans, keeps every price with its date, and writes your moving weighted average cost, or FIFO cost on a paid plan, to Shopify's Cost per item. It is free for up to 25 variants with a cost on record; paid plans start at $29 a month or $290 a year.

Install from the App Store

Sources