Why accounting for in-house software matters
More and more Swiss SMEs develop software in-house: management platforms, customer apps, ERP integrations, or custom modules to automate accounting and operational processes. Unlike purchasing a SaaS license — typically recorded as a current expense or fixed asset depending on the contract — in-house development raises a recurring question at year-end: should these costs be capitalized as intangible assets or charged directly to the income statement?
The answer does not depend on company size or whether the code is written by employees or external consultants. It depends on project phases, the likelihood of generating future economic benefits, and the applicable regulatory framework: the Swiss Code of Obligations (CO) for bookkeeping and, for most SMEs, Swiss GAAP FER — in particular FER 10 (intangible assets, including internally generated software).
An incorrect choice distorts equity, EBITDA, dividend distribution capacity, and — when seeking financing or undergoing due diligence — the credibility of the financial statements. This guide outlines the practical criteria for making a rigorous decision, documenting correctly, and managing depreciation in the Swiss accounting context.
Swiss regulatory framework: CO and Swiss GAAP FER
In Switzerland, there is no general obligation to capitalize internally developed software. The choice follows the prudence principle and the relevance of the capitalization criteria set out in the applicable accounting standards:
Swiss Code of Obligations (CO)
Arts. 959a–959c CO define the minimum structure of the balance sheet, income statement, and notes. Arts. 960–960a CO establish valuation principles: intangible assets must be recorded at production or acquisition cost and systematically depreciated, except where justified exceptions apply.
For SMEs that prepare financial statements under recognized commercial accounting principles, the CO does not prescribe individual capitalization items but requires consistency, traceability, and no overstatement of equity.
Swiss GAAP FER (typical SMEs)
FER 10 permits capitalization of internally generated intangible assets — including software — when specific conditions are met and costs can be reliably attributed. FER 10 clearly distinguishes between research activities (generally expensed) and development activities (potentially capitalizable if cumulative criteria are satisfied).
Companies applying IFRS or US GAAP follow similar but not identical criteria; this guide focuses on the FER context, widely used in trustee firms serving Swiss SMEs.
Capitalize or expense: criteria compared
The operational decision comes down to verifying whether the project meets the capitalization threshold under FER 10. Here is a practical summary for the day-to-day work of a controller or trustee:
| Criterion | Expense (P&L) | Capitalization (Balance sheet) |
|---|---|---|
| Project phase | Research, exploratory analysis, proof of concept without a defined intended use | Development with approved specifications and planned release for internal use or sale |
| Economic benefit | Uncertain or not demonstrable (experiment, feasibility not yet proven) | Probable: cost savings, new revenue, or measurable efficiency over time |
| Technical feasibility | Not yet demonstrated | Demonstrated (working prototype, defined architecture, tests passed) |
| Resources and intent | Experimental project, without budget or formal mandate to complete | Management commits resources through go-live; documented release plan |
| Cost measurability | Costs not separable from ordinary activities (e.g. untracked time) | Direct and indirect costs attributable to the project (time tracking, supplier invoices) |
| Subsequent maintenance | Minor bug fixes, routine updates, current hosting | Only if it adds substantial functionality and new benefits (otherwise expensed) |
| Immediate impact on results | Reduces profit for the period | Higher profit during development; depreciation in subsequent periods |
Project phases: where to draw the line
The most common mistake is capitalizing costs of "research disguised as development" or, conversely, expensing entire projects that should have activated a fixed asset. FER 10 requires a phase-based approach:
1. Research — always expensed
Activities aimed at acquiring new technical knowledge without a defined applicable product: preliminary market study, evaluation of alternative technologies, brainstorming without specifications. In an SME testing an app idea without a release commitment, team costs remain in the income statement.
2. Development — potentially capitalizable
From formal project approval (project charter, budget, milestones) through production go-live. This includes developer salaries, staging cloud costs, tool licenses dedicated to the project, and external consulting for specific modules. The capitalization point must be documented by date: everything before that remains expensed.
3. Production and maintenance — predominantly expensed
Operational hosting, L1/L2 support, security patches, and bug fixes are charged to the income statement. Only upgrades that introduce significant new functionality — and again meet FER 10 criteria — can increase the carrying amount of the existing asset or create a separate new asset.
Which costs to include in production cost
When capitalization is permitted, the carrying amount includes directly attributable costs and a reasonable share of indirect costs:
- Internal personnel: gross salaries, social contributions (AHV/OASI, pension fund, accident insurance) and ancillary charges for time allocated to the project during the development phase — not untracked general management time.
- Consultants and outsourcing: invoices from software houses or freelancers for analysis, coding, testing, and documentation, if related to the capitalizable phase.
- Licenses and tools: IDE, repository, CI/CD, test environments — if purchased exclusively for the project and not already depreciated elsewhere.
- Allocated indirect costs: share of rent, IT infrastructure, or project management, calculated using a consistent method (e.g. percentage of hours or documented cost driver).
Not capitalized: general administrative costs that cannot be attributed, staff training on standard tools, preliminary research costs, or interest expense unless an explicitly permitted method under the chosen standards is applied.
Practical examples for Swiss SMEs
Custom CRM for a trustee firm
An 8-person firm develops a CRM in-house to manage mandates and tax deadlines. After a three-month POC (expensed), the general meeting approves the budget; two dedicated developers spend 60% of their time for 10 months until go-live.
Outcome: capitalization from the date of formal approval. Estimated cost CHF 185,000 (salaries + charges + staging hosting). Depreciation over 5 years.
Excel scripts and lightweight automations
A commercial SME has an administrative employee develop VBA macros and simple connectors to import invoices. Total time: 40 hours, no formalized project, marginal benefit.
Outcome: expensed. Materiality, structured traceability, and a separately identifiable asset from normal operational activities are lacking.
SaaS platform for B2B customers
An IT services GmbH develops a subscription module for customers. The software will be sold under multi-year contracts; a business plan with projected revenue exists.
Outcome: correct capitalization. Check for any value adjustments if the market or technology changes before launch (prudence principle under FER 10 and, where applicable, impairment under FER 20).
Migration and refactoring after go-live
Two years after release, the same SME refactors the code for performance without new end-user functionality. Cost: CHF 45,000.
Outcome: period expense. Does not increase future benefits in an identifiable way; does not meet the criteria to increase the carrying amount of the existing fixed asset.
Impact on financial statements and management metrics
The accounting choice changes the earnings profile over time and certain ratios observed by banks and investors:
| Item | If expensed | If capitalized |
|---|---|---|
| Balance sheet — assets | Unchanged | Increases by capitalized cost net of depreciation |
| Equity | Lower in the development period | Higher until the asset is fully depreciated or impaired |
| Income statement — development period | Personnel and service costs reduce EBIT | Limited impact (only non-capitalizable costs); EBIT appears higher |
| Subsequent periods | No depreciation | Annual depreciation charge to the income statement |
| Dividend distribution | Reduced distributable base in the investment year | More favorable distributable base, subject to legal reserve constraints under the CO and any impairments |
Caution: capitalizing to "improve" EBIT without meeting FER 10 criteria exposes the company to audit adjustments, refusal of a limited audit certificate, or, in serious cases, liability to creditors for an inflated balance sheet under the CO.
Depreciation and useful life
Capitalized intangible assets must be systematically depreciated over the estimated useful life (FER 10). If useful life cannot be determined with sufficient reliability, FER 10 generally provides for five-year depreciation (maximum twenty years in justified cases). For in-house software, Swiss SMEs typically apply straight-line schedules of 3 to 7 years, depending on the technology cycle and expected period of use:
- Internal operational software (custom ERP, production management system): often 5–7 years if integrated into core processes.
- Applications with rapid obsolescence (mobile apps, API integrations): 3–4 years.
- Software intended for sale: align useful life with the expected monetization period in the business plan.
At each year-end, check for impairment indicators under FER 10 and FER 20: abandoned project, deprecated technology, loss of customers on the platform. Where value is not recoverable, recognize an immediate impairment in the income statement, regardless of the remaining depreciation schedule.
Tax implications in Switzerland
For federal, cantonal, and municipal profit tax, the general rule follows commercial accounting (Massgeblichkeitsprinzip / authoritative principle): capitalized costs are not deductible in the period incurred but become deductible gradually through depreciation. Immediate expensing, when accounting-correct, reduces the taxable base in the same period.
Switzerland has no federal R&D tax credit comparable to that of other countries. Since 2020, many cantons — applying the tax reform (STAF/LAID, Art. 25a DBG/StHG) — optionally provide a supplementary off-balance-sheet deduction for qualified research and development expenses; existence, amount, and conditions must be verified with the competent cantonal authority. Such incentives do not replace capitalization criteria under FER 10 and generally relate to scientific research or science-based innovation, not ordinary in-house software development. Withholding tax on payments to external developers does not affect accounting qualification, but costs must be correctly documented and allocated to the project.
In a company sale, capitalized software still on the balance sheet enters the transferred assets; accumulated depreciation and net book value affect negotiated goodwill. Consistency between contracts, cost flows, and accounting policy facilitates due diligence.
Documentation and operational accounting
A written internal policy — approved by management and consistent with the chart of accounts — reduces the risk of inconsistencies across periods. Minimum elements to archive:
- Project charter with capitalizable phase start date, objectives, and responsible person
- Monthly timesheets for employees and consultants, approved by the project owner
- Asset under construction account (CFC / work in progress) until go-live, then transfer to "Internal software" or equivalent line item
- Depreciation schedule with useful life and method, attached to the annual closing
- Impairment memo if the project is discontinued or deprecated
In Accountex, recording costs with cost centers or project tags from the outset allows extraction of reports for year-end closing without reconstructing hours and invoices scattered across multiple accounts after the fact.
Year-end closing checklist
Identify all in-house software projects with significant costs (> CHF 5,000–10,000 or internally defined threshold).
For each, verify whether a documented date exists for passing the research phase.
Compare FER 10 criteria and decide capitalization or expense — when in doubt, prefer expensing (prudence).
Transfer capitalizable costs from expense accounts to assets under construction, then to capitalized software at go-live.
Calculate annual depreciation and check impairment indicators on existing assets.
Align management report and notes to the financial statements: method, useful life, and any significant adjustments.
Conclusion
In-house software development is neither automatically a balance sheet investment nor a simple IT personnel cost. For a Swiss SME applying Swiss GAAP FER, the practical rule is: research and experimentation always expensed; development capitalizable only from the point at which feasibility, intent, and measurability are documented; ordinary maintenance always expensed.
The decision has lasting effects on equity, profit, depreciation, and taxable base. Defining clear criteria before project launch — and tracking hours and costs with discipline — avoids costly adjustments and ensures a defensible balance sheet before auditors, banks, and counterparties in extraordinary transactions.