Accounting glossary

COGS (Cost of goods sold)

What COGS includes, how product and service businesses differ, and per-jurisdiction inventory valuation rules for UK/AU/CA/NZ/SG in 2026.

By ExpenseFlow team
· 18 May 2026

Definition

COGS (cost of goods sold), also called cost of sales or cost of revenue, is the direct cost of producing the goods or services sold during a period. It includes raw materials, direct labour, sub-contractor fees, and freight inwards. COGS is deducted from revenue on the income statement to produce gross profit. The accurate measurement of COGS depends on the inventory valuation method chosen (FIFO or weighted average under modern accounting standards).

What COGS means in practice

For a bookkeeper in a product business, COGS is the trickiest expense category because it requires inventory accounting. A purchase of stock does not become COGS at purchase: it sits in inventory on the balance sheet. It becomes COGS only when the stock is sold and removed from inventory. The cost attached to that removal depends on the valuation method: FIFO assumes the oldest stock sells first; weighted average uses a rolling average of all stock held.

In a service business, COGS is simpler because there is no inventory. The direct costs (sub-contractor fees, freelance specialists, project-specific software, direct billable labour) post to a “cost of services” or “direct costs” account each period. The result on the income statement is structurally the same: revenue minus direct costs equals gross profit.

A practical example: a UK product business sells 500 units in October 2026. Opening inventory: 800 units at an average cost of 8 each. Purchases during October: 300 units at 10 each. Under weighted average, the new average cost is ((800 * 8) + (300 * 10)) / 1100 = 8.55 per unit. COGS for the 500 units sold: 500 * 8.55 = 4,275. Closing inventory: 600 units at 8.55 = 5,130. Revenue of 12,500 minus COGS of 4,275 = gross profit of 8,225 (66% gross margin).

How COGS works by country

United Kingdom

FRS 102 Section 13 governs inventory valuation: lower of cost and net realisable value. Cost includes purchase price (net of trade discounts), conversion costs, and direct overheads attributable to production. FIFO and weighted average are the two permitted methods. LIFO (last in, first out) is not allowed under FRS 102 or full IFRS. The chosen method must be applied consistently across periods.

Australia

AASB 102 mirrors IAS 2. Inventory at the lower of cost and net realisable value, with FIFO or weighted average. The ATO requires consistent year-over-year application of the chosen method. Small business simplified inventory rules apply for businesses with turnover under AUD 10 million and inventory variation under AUD 5,000 between opening and closing: these businesses can ignore stock movements for tax purposes.

Canada

ASPE Section 3031 and IAS 2 both apply (the choice depends on whether the entity is a private company on ASPE or a public company on IFRS). FIFO and weighted average permitted; LIFO disallowed. CRA’s section 10 of the Income Tax Act requires inventory to be valued at the lower of cost and fair market value, which is broadly equivalent to net realisable value under the accounting standards.

New Zealand

NZ IAS 2 mirrors IAS 2. FIFO and weighted average permitted. Small business taxpayers can use the simplified trading stock rules if year-end stock is under NZD 10,000 and the difference from prior year is under NZD 5,000: these businesses can effectively ignore stock for income tax purposes, treating purchases as expenses when paid.

Singapore

SFRS(I) 2 mirrors IAS 2. FIFO and weighted average permitted. IRAS accepts the same valuation methods for tax purposes provided the choice is consistently applied. Stock obsolescence write-downs to net realisable value are deductible for tax when properly documented with evidence of the impairment.

COGS sits at the top of the income-statement cascade:

  • Gross profit is revenue minus COGS.
  • Inventory is the balance-sheet account that holds unsold stock; COGS is the income-statement account that records what was sold.
  • Net profit is the bottom line after COGS, OpEx, interest, and tax.
  • Operating expenses sit below gross profit (distinct from COGS, which sits above).
  • Profit margin ratios depend on accurate COGS measurement.
  • The income statement is the statement that displays COGS.

See also

For the inventory accounting that produces accurate COGS, see the inventory entry.

FAQ

See the answered questions above for COGS vs OpEx, service business COGS, and what is included in inventory cost.

Questions, answered

Common questions

What is the difference between COGS and operating expenses?

COGS is the direct cost of producing what you sold: materials, direct labour, freight inwards. Operating expenses are the indirect costs of running the business: salaries (not directly billable), rent, software. The dividing line is sometimes blurred: a workshop foreman's salary is direct labour (COGS); the office manager's salary is operating expense. The function-of-expense format on the income statement separates them; the nature-of-expense format combines them.

Does my service business have COGS?

It can. Service businesses without inventory often have sub-contractor fees, freelance specialists, or direct project labour cost that scale with revenue. These are direct costs and belong above gross profit. Many service-business income statements use 'cost of services' or 'direct costs' rather than 'cost of goods sold' but the function is identical.

What is included in inventory cost?

Per IAS 2 and FRS 102 Section 13: purchase price (net of trade discounts and rebates), conversion costs (direct labour and a systematic allocation of production overheads), freight inwards and import duties to bring the inventory to its present location and condition. Storage costs after production, abnormal waste, and selling costs are excluded.

Keep exploring

Track cogs (cost of goods sold) without spreadsheets

ExpenseFlow keeps your books clean by encoding the rules behind terms like this directly into capture and categorisation.