Skip to content

Strategic Business Reporting (International) · Revenue

Allocating Transaction Price Using Standalone Selling Prices

Updated 11 October 2026 · Fact-checked

Under IFRS 15, you split the transaction price across the distinct performance obligations in proportion to their standalone selling prices. Share = SSP of the item ÷ total SSP × transaction price. Any discount is spread across all items unless evidence shows it relates to specific ones. The residual approach is allowed only in limited cases.

Understand Allocating Transaction Price Using Standalone Selling Prices

A contract often bundles several goods or services sold for one price. IFRS 15 Step 4 says you must allocate that total price to each performance obligation, so that revenue is recognised for each one when or as it is satisfied.

The basis is the standalone selling price (SSP): the price at which the entity would sell that good or service separately to a customer. The best evidence is the observable price charged in separate sales to similar customers. If there is none, you estimate it.

If the sum of the SSPs is more than the contract price, the customer has received a discount. The default is to allocate the discount proportionately to all performance obligations. This is exactly what the relative SSP method does. The result is that each item is recorded at less than its list price.

You can allocate a discount to only one or some obligations if three conditions are all met: the entity regularly sells each distinct good or bundle on a standalone basis, it regularly sells a bundle of some of them at a discount, and the discount on that bundle is substantially the same as the discount in the contract, with observable evidence supporting this.

Where no observable SSP exists, the entity estimates it. Methods include adjusted market assessment, expected cost plus a margin and, in limited cases, the residual approach. The residual approach (total price less observable SSPs of other items) is allowed only if the item is sold to different customers for a widely varying range of prices (highly variable), or if the entity has not yet established a price and the item has not previously been sold standalone (uncertain). The residual result must still be reasonable.

Key rules to remember

Relative SSP allocation
Allocated price = (SSP of obligation ÷ Total of all SSPs) × Transaction price
Use the SSP at contract inception. Do not update it later for changes in SSP.
Discount in the contract
Discount = Total of SSPs − Transaction price
Spread across all obligations in proportion to SSP by default.
Residual approach
Estimated SSP = Transaction price − Sum of observable SSPs of other goods or services
Only if the item has a highly variable price or an uncertain price not yet established. Check the result is reasonable.
Allocation of changes in price
Later change in transaction price is allocated on the same basis as at inception
Amounts relating to an obligation already satisfied are recognised as revenue (or reduction) in the period of change.

How to solve Allocating Transaction Price Using Standalone Selling Prices questions

Use this order for any allocation question. Show each step, as method marks are awarded even if a number is wrong.

  1. 1Identify the distinct performance obligations first. Do not allocate to items that are not distinct, as they combine into one obligation.
  2. 2Determine the transaction price, including variable consideration and any significant financing, before allocating.
  3. 3Find an SSP for each obligation. Use observable prices first. Estimate only if none exists.
  4. 4Add up the SSPs and compare to the transaction price to find any discount.
  5. 5Check whether the discount can be allocated to specific obligations. If not, or if no evidence is given, allocate proportionately.
  6. 6If one SSP is not observable and meets the conditions, use the residual approach. Otherwise estimate by market or cost plus margin.
  7. 7Calculate each allocation with the relative formula and check the total equals the transaction price.
  8. 8Match each amount to the timing: revenue at a point in time or over time, then state the journal or the amount in the financial statements.

Quickest way: Ratio method with a proof total

When to use it: Use when the question gives all SSPs and asks only for the amounts allocated or revenue for a period.

  1. Write the SSPs in a column and total them.
  2. Divide the contract price by the total SSP to get one factor, for example 0.9.
  3. Multiply each SSP by the factor.
  4. Add the results to check they equal the contract price.
  5. Apply timing to each line and write the one-line reason for the basis used.

Common mistakes in Allocating Transaction Price Using Standalone Selling Prices

  • Allocating the discount to one item only, usually the item delivered last.

    The discount seems linked to the bundle, so students pick one item.

    Fix: Spread the discount proportionately unless the question gives evidence meeting the three conditions for specific allocation.

  • Using the contract price shown for each item instead of the SSP.

    The contract lists prices, and they look like a ready-made split.

    Fix: Always compare contract prices with SSPs. Allocate by SSP even if the contract states separate prices.

  • Using the residual approach when every SSP is observable or when the conditions are not met.

    It is quicker, and students remember it as a general shortcut.

    Fix: State the condition (highly variable or uncertain price) before using it and check that the result is reasonable.

  • Allocating before deciding what the performance obligations are.

    Students rush to the arithmetic.

    Fix: Do Step 2 first. Goods that are not distinct are bundled and share one SSP.

  • Forgetting to recognise revenue at the right time after allocating.

    Allocation feels like the end of the question.

    Fix: Always finish by saying when control passes, then give the revenue figure for the reporting period.

  • Recalculating the allocation when SSPs change after inception.

    Students want to use current prices.

    Fix: Use SSPs at contract inception. Do not reallocate for later SSP changes.

Worked examples

Example 1

Zeta sells a machine, installation and a two-year maintenance package to a customer for $90,000. The standalone selling prices are: machine $70,000, installation $10,000 and maintenance $20,000. Control of the machine and installation passes on 1 October, immediately on installation. Maintenance is provided evenly over 24 months from 1 October. The year end is 31 December. Calculate the revenue for the year.

Show the solution
  1. The three items are distinct, so there are three performance obligations.
  2. Total SSP = 70,000 + 10,000 + 20,000 = $100,000. The transaction price is $90,000, so the discount is $10,000.
  3. There is no evidence that the discount relates to specific items, so allocate proportionately. Factor = 90,000 ÷ 100,000 = 0.9.
  4. Machine = 70,000 × 0.9 = $63,000. Installation = 10,000 × 0.9 = $9,000. Maintenance = 20,000 × 0.9 = $18,000. Total = $90,000.
  5. Machine and installation are recognised at a point in time on 1 October: $63,000 + $9,000 = $72,000.
  6. Maintenance is over time. Three months of 24 have passed: 18,000 × 3/24 = $2,250.

Answer: Revenue for the year is $72,000 + $2,250 = $74,250.

Example 2

Delta sells software licence A for $120,000 together with support for one year. The licence is sold to different customers at prices ranging widely from $60,000 to $150,000, so there is no stable price. Support is always sold separately at $30,000 per year. The total contract price is $120,000. Allocate the price to the two obligations and explain the approach.

Show the solution
  1. The licence and support are distinct, so there are two performance obligations.
  2. The support SSP is observable at $30,000 from separate sales.
  3. The licence price is highly variable, so the residual approach is permitted.
  4. Residual SSP of licence = 120,000 − 30,000 = $90,000.
  5. Check reasonableness: $90,000 lies within the range of $60,000 to $150,000 at which the licence is sold, so the result is reasonable.
  6. Allocation: licence $90,000 and support $30,000, total $120,000. There is no discount to spread.

Answer: Allocate $90,000 to the licence (recognised when control passes) and $30,000 to support (recognised over the year). The residual approach is justified because the licence price is highly variable and the support SSP is observable.

Exam tips

  • Write the SSP table first. Examiners give marks for a clear table and the discount calculation.
  • Always state why you chose a method, for example 'the price is highly variable, so the residual approach applies'. The reasoning earns marks as well as the figure.
  • Watch for scenarios mixing allocation with variable consideration, financing or modifications. Adjust the transaction price first, then allocate.
  • In the written part, explain that the discount is spread proportionately by default and name the conditions for allocating it elsewhere.
  • Finish with timing. Give the revenue for the year and any contract asset, contract liability or receivable if asked.

Practice questions from Revenue

Allocating Transaction Price Using Standalone Selling Prices in other exams

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

Allocating Transaction Price Using Standalone Selling Prices: frequently asked questions

What is the standalone selling price under IFRS 15?

It is the price at which an entity would sell a promised good or service separately to a customer. The best evidence is the observable price in separate sales. If none exists, you estimate it.

When can I use the residual approach?

Only when the item's price is highly variable because it is sold to different customers for a wide range of amounts, or when the price is uncertain because it has not been set and the item has not been sold standalone before. You must also check that the result is reasonable.

How do I allocate a discount under IFRS 15?

By default, spread it proportionately across all performance obligations using relative SSPs. You can allocate it to some obligations only if there is observable evidence that meets the three specified conditions.

Do I update SSPs if prices change after the contract starts?

No. You determine SSPs at contract inception and do not reallocate for later changes in SSP. A change in the transaction price is allocated on the same basis as at inception.