Topics Tools Blog 5-Step Guide →

Contract Costs

Sales commissions, channel fees, and fulfillment costs sit outside the five-step model — but they still have their own recognition rules.

Educational content only. This page is not professional accounting advice. Consult a qualified accountant before making accounting policy decisions for your company.

Most of the energy in revenue recognition goes into the five-step model: identifying the contract, breaking out performance obligations, setting the transaction price, allocating it, and recognizing revenue. Contract costs are a parallel track — a set of rules for the expense side of contracts.

Both ASC 606 (Topic 340-40) and IFRS 15 (paragraphs 91–104) specify when costs to obtain and costs to fulfill a contract should be capitalized as assets and amortized, rather than expensed immediately.

Costs to Obtain a Contract

These are incremental costs — costs you would not have incurred if the contract had not been obtained. The classic example is a sales commission paid to a rep when a deal closes. The standard requires you to capitalize these costs if you expect to recover them (i.e., the revenue from the contract exceeds the costs).

Once capitalized, you amortize the asset "on a systematic basis, consistent with the pattern of transfer of the goods or services to which the asset relates." In practice, that usually means straight-line over the expected contract period — including anticipated renewals if those are part of a longer economic relationship.

Practical expedient: If the amortization period would be one year or less, you can expense the cost immediately as incurred. This is the most commonly used relief in SaaS — many monthly-billed contracts or short-term deals qualify.

Costs to Fulfill a Contract

Fulfillment costs are trickier. You capitalize them only if all three conditions are met:

If another GAAP standard already covers the cost (e.g., inventory, fixed assets, R&D), apply that standard instead. The contract costs guidance is a catch-all for costs not covered elsewhere.

Common fulfillment costs in SaaS: customer onboarding labor, data migration, custom setup work. General and administrative costs, wasted materials, and costs related to past satisfied performance obligations do not qualify.

Working Example: Sales Commission on a 3-Year Deal

A SaaS company closes a 3-year subscription at $60,000 ARR. The sales rep earns a $15,000 commission when the contract signs. The company expects to renew the relationship — its average customer tenure is 5 years.

Step 1 — Is this an incremental cost? Yes. The company only pays this commission because the contract was obtained.

Step 2 — Will it be recovered? Yes. Total expected revenue ($60K × 5 expected years = $300K) exceeds the $15K commission.

Step 3 — What is the amortization period? Because the company expects renewal at similar economics, it amortizes over the expected benefit period (5 years), not just the initial contract term (3 years). Annual amortization: $15,000 / 5 = $3,000/year.

If instead the company uses the practical expedient (amortization period ≤ 12 months), a monthly commission on a monthly-billed contract would be expensed immediately — no asset created.

Journal entries:

IFRS 15 vs. ASC 606

Largely aligned. Both standards require capitalization of incremental costs to obtain and fulfillment costs meeting the three criteria. The practical expedient for periods ≤12 months exists in both.

Practical expedient threshold
IFRS 15

IFRS 15.94: expense if amortization period is one year or less

ASC 606

ASC 606-10-340-4: same one-year practical expedient

Amortization period
IFRS 15

IFRS 15.99: amortize over the period of benefit, including renewals if applicable

ASC 606

ASC 606-10-340-3: same — amortize over the expected benefit period

Impairment testing
IFRS 15

IFRS 15.101–103: impairment test required; write down if carrying amount exceeds remaining consideration less direct costs

ASC 606

ASC 606-10-340-6 through 340-9: same framework for impairment testing

Common Pitfalls
  1. Using the contract term instead of the benefit period. If you expect renewals at similar economics, the amortization period should reflect the full relationship — not just the initial term. Using only the stated contract length understates the asset and front-loads expense.
  2. Capitalizing non-incremental costs. Only costs that would not exist absent the contract qualify. Base salaries, general overhead, and costs that would have been incurred regardless do not meet the incremental test.
  3. Misapplying the practical expedient. The expedient applies to the expected amortization period, not just the contract term. A 9-month contract that you expect to renew indefinitely may have a benefit period well over a year — the expedient would not apply.
  4. Ignoring fulfillment costs entirely. Onboarding labor and data-migration costs are frequently expensed immediately by habit. If they generate resources used to satisfy performance obligations and meet the three-part test, they should be capitalized.
Key Takeaway

Contract costs sit alongside the five-step model as a required accounting exercise, not an optional one. The core question is whether an incremental cost will be recovered and over what period — and for many SaaS companies with short contract terms, the practical expedient simplifies the answer. Where the expedient does not apply, the amortization period should reflect the full expected customer relationship, not just the initial contract.


Free Resource

5-Step Revenue Recognition Guide

Work through IFRS 15 and ASC 606 step by step with real SaaS examples.

Start the guide
Browse All Topics

More Application Guidance

Explore more deep dives on specific IFRS 15 and ASC 606 concepts.

All topics
Free Tool

27-Point Audit Checklist

Ensure your revenue recognition is audit-ready before your next close.

See the checklist
Free Tool

Revenue Memo Template

A 7-section auditor-ready memo documenting your revenue recognition policy.

Get the template