Skip to content

Financial Reporting · Revenue

Contract Costs and Contract Balances under IFRS 15

Updated 11 October 2026 · Fact-checked

Under IFRS 15, you capitalise incremental costs of obtaining a contract and costs of fulfilling it (if they meet set conditions), then amortise them as the goods or services transfer. A contract asset is a right to payment that is still conditional; a receivable is unconditional; a contract liability is cash or a claim received before you perform.

Understand Contract Costs and Contract Balances

Revenue is only part of the IFRS 15 story. You also need to show the costs that sit behind a contract and the balances that arise because cash, invoicing and performance rarely happen at the same time.

Start with costs. Costs to obtain a contract are costs you would not have incurred if the contract had not been won. A sales commission is the classic case. If it is expected to be recovered, you capitalise it as an asset. Costs you would have incurred anyway, such as travel for a tender you might lose, are expensed. As a practical expedient, you may expense the cost if the amortisation period would be one year or less.

Costs to fulfil a contract are first checked against other standards, such as IAS 2, IAS 16 and IAS 38. If another standard covers them, follow it. If not, you capitalise them only if all three conditions are met: they relate directly to a contract (or a specific anticipated one), they generate or enhance resources used to satisfy future performance obligations, and they are expected to be recovered. General overheads, wasted materials and costs relating to performance already completed are expensed.

Capitalised costs are amortised on a systematic basis that matches the pattern of transfer of the related goods or services. They are also tested for impairment: if the carrying amount exceeds the remaining consideration you expect to receive less the costs still to be incurred, you recognise an impairment loss in profit or loss.

Now the balances. Compare performance with payment. If you have performed and your right to payment depends on something other than time passing, you show a contract asset. If the right is unconditional, only time must pass, it is a receivable. If the customer has paid, or you have an unconditional right to payment that is due, before you perform, you show a contract liability (deferred income). In the second case you also recognise a receivable for the amount due. Without an unconditional right, there is no receivable and no contract liability until cash is received. Net the balances for each contract, never across different contracts.

Key rules to remember

Costs to obtain a contract
Incremental cost, expected to be recovered → capitalise as asset; otherwise expense
Expedient: expense if amortisation period is one year or less. Costs incurred whether or not the contract is won are expensed.
Costs to fulfil a contract
Outside other standards AND directly related AND generate/enhance resources AND expected recovery → capitalise
All three conditions must be met. Overheads, wastage and costs of past performance are expensed.
Amortisation of contract costs
Annual charge = Capitalised cost × (goods/services transferred in year ÷ total expected transfer)
Use the pattern of transfer. Straight line is often the pattern if the service is evenly delivered.
Impairment of contract cost asset
Impairment = Carrying amount − (Remaining consideration expected − Costs still to be incurred)
Recognise in profit or loss only if the carrying amount is higher.
Contract balance classification
Performed, right conditional → contract asset; right unconditional → receivable; paid, or unconditional right to payment due, before performance → contract liability
Show net position per contract.

How to solve Contract Costs and Contract Balances questions

Use this order for any contract costs or contract balances question.

  1. 1Identify the contract and its performance obligations, and when each is satisfied.
  2. 2Separate costs into those to obtain the contract and those to fulfil it.
  3. 3Test obtaining costs: are they incremental and recoverable? Check the one-year expedient.
  4. 4Test fulfilment costs: does another standard apply? If not, apply the three conditions. Expense anything that fails.
  5. 5Work out the amortisation for the period using the pattern of transfer, and check for impairment.
  6. 6Compare revenue recognised with cash received and amounts invoiced for each contract.
  7. 7Classify the balance: contract asset, receivable or contract liability, and state the amount.
  8. 8Show the double entries and the statement of financial position presentation.

Quickest way: Three-test shortcut

When to use it: Use in Section A and B objective questions where time is short.

  1. Cost question: ask, would the cost exist without the contract? If no and it is recoverable, capitalise. If yes, expense.
  2. Fulfilment cost: ask, is it a specific contract cost that builds a resource? If it is general overhead, expense.
  3. Balance question: compare revenue earned with cash received. If revenue earned exceeds cash received, ask what the right to payment depends on. If it is conditional on something other than time passing, it is a contract asset. If it is unconditional, because only time must pass, it is a receivable, even if you have not yet invoiced. If cash received, or an amount you have an unconditional right to receive (a receivable), exceeds revenue earned, the excess is a contract liability.

Common mistakes in Contract Costs and Contract Balances

  • Capitalising all sales commissions or bid costs.

    Students assume any cost linked to selling is part of the contract.

    Fix: Capitalise only incremental costs that arise because the contract was won. Bid costs that would be incurred regardless are expensed.

  • Capitalising general overheads or wasted materials as fulfilment costs.

    The costs seem connected to the work.

    Fix: Only costs directly related to the contract that build resources qualify. Overheads, abnormal waste and past-performance costs go to profit or loss.

  • Calling every unpaid amount a receivable.

    Students ignore whether the right to payment is conditional.

    Fix: If payment depends on anything besides time, such as completing another obligation, it is a contract asset.

  • Offsetting contract assets and liabilities from different contracts.

    Wanting to simplify totals.

    Fix: Net only within one contract. Present different contracts' balances separately.

  • Amortising capitalised costs over the wrong period.

    Students use the contract term by default.

    Fix: Amortise over the period in which the related goods or services are transferred. This can be longer than the initial contract term if the cost relates to a specific anticipated contract, such as an expected renewal.

  • Forgetting that deposits received create a liability, not revenue.

    Cash received feels like income.

    Fix: Revenue follows performance. Cash ahead of performance is a contract liability.

Worked examples

Example 1

On 1 January 20X1, Darby wins a three-year service contract. It pays a sales commission of $30,000 to the salesperson, which it would not have paid had the contract not been won. It also pays $12,000 for travel to a tender presentation, which would have been incurred whether or not it won. Services are provided evenly over the three years. Show the treatment in the year ended 31 December 20X1.

Show the solution
  1. The commission is incremental to winning the contract and is expected to be recovered, so capitalise $30,000.
  2. The amortisation period is three years, so the one-year expedient does not apply.
  3. Amortisation for 20X1 = $30,000 × 1/3 = $10,000, charged to profit or loss.
  4. Closing asset = $30,000 − $10,000 = $20,000.
  5. The $12,000 travel cost would have been incurred anyway, so expense it in full.

Answer: Capitalise the $30,000 commission, charge $10,000 amortisation, and carry a $20,000 asset. Expense the $12,000 travel cost. Total profit or loss charge for these costs in 20X1 = $22,000.

Example 2

Kestrel contracts to deliver two products, X and Y, to a customer for $100,000 in total. X is worth $60,000 and Y $40,000 on a stand-alone basis. Payment of the full price is due only after both are delivered. At 31 December 20X1, X has been delivered, Y has not, and no cash has been received. Determine the revenue and the balance sheet item at 31 December 20X1, and the position after Y is delivered on 31 January 20X2 and invoiced.

Show the solution
  1. Allocate the price using stand-alone values: X $60,000 and Y $40,000, which matches the $100,000.
  2. At 31 December 20X1, X is delivered, so revenue is $60,000.
  3. Payment depends on delivering Y as well as time passing, so the right is conditional.
  4. Record Dr Contract asset $60,000, Cr Revenue $60,000.
  5. On 31 January 20X2, Y is delivered: Dr Contract asset $40,000, Cr Revenue $40,000.
  6. The right is now unconditional because only time remains. Reclassify: Dr Receivable $100,000, Cr Contract asset $100,000.

Answer: At 31 December 20X1, revenue is $60,000 and a contract asset of $60,000 is recognised. After Y is delivered and invoiced, revenue for the second delivery is $40,000 and the total $100,000 is shown as a receivable.

Exam tips

  • In Section C, set out costs in two groups, obtain and fulfil, and give the reason for each treatment. Marks go to the reasoning.
  • In objective questions, look for the words incremental, directly related and conditional. They decide the answer.
  • Always state the amortisation period and the pattern used, such as straight line over the service term.
  • If cash is received in advance, check whether performance has occurred before you credit revenue.
  • Show journal entries clearly, including the reclassification from contract asset to receivable.

Practice questions from Revenue

Contract Costs and Contract Balances in other exams

The same ground in other exams, if you are preparing for more than one or want another angle on it.

Contract Costs and Contract Balances: frequently asked questions

What is the difference between a contract asset and a receivable?

A receivable is an unconditional right to payment because only time must pass. A contract asset is a right to consideration for performance already done, but it depends on something else, such as completing another obligation. When the condition is met, you reclassify to a receivable.

Can I capitalise costs to obtain a contract?

Yes, if they are incremental, meaning you would not have incurred them had the contract not been obtained, and you expect to recover them. Costs that arise regardless of winning, such as general tender costs, are expensed. You may expense the cost if the amortisation period is one year or less.

When do I capitalise costs to fulfil a contract?

Only when no other standard applies and the costs relate directly to a contract, generate or enhance resources for future performance, and are expected to be recovered. Check IAS 2, IAS 16 and IAS 38 first.

What is a contract liability?

It is your obligation to transfer goods or services to a customer who has already paid, or whose payment is due and you have an unconditional right to it. You recognise revenue and reduce the liability as you perform.