You paid RM150,000 for a system your business now runs on. Your accountant tells you it cannot go into the profit and loss account like the rest of your bills. That answer is correct, and it is also incomplete — because the money is not lost, it just comes back on a different schedule.
Malaysia has a dedicated set of rules for exactly this spend, and the custom software tax deduction Malaysian owners actually get is a capital allowance rather than an expense claim. They are narrow, they exclude more than most owners expect, and they hinge on how the developer wrote the invoice rather than on what the software does. ZenWeb builds custom systems for Malaysian SMEs and sees the same claim fail for the same three reasons every year. This page walks through what qualifies, how fast it writes off, and the paperwork that decides whether the claim holds. The video below covers how a capital allowance computation is actually laid out.
1. Deduction or Capital Allowance? Custom Software Is Not an Expense
Quick Answer: Software your business commissions and owns is capital expenditure, not a running cost. You cannot deduct the build price in full the way you deduct a monthly subscription. You claim capital allowance on the qualifying development cost instead, and it is spread across three years rather than taken all at once.
The distinction that matters is not "software or not software" — it is whether you are renting capability or building an asset. Three common situations get three different answers:
- Monthly SaaS subscriptions. A CRM seat, an email platform, an off-the-shelf booking system. Recurring, no asset created, deducted as a normal business expense in the year you pay it — the same treatment covered in our guide to CRM cost for Malaysian SMEs.
- Off-the-shelf software licences. A perpetual accounting or design licence you buy outright, or a subscription to marketing automation tooling. Capital in nature where bought outright, but claimed under the ordinary capital allowance rules for computer software, not the customised software rules.
- A commissioned custom build. A system designed for your business, where you pay a developer to produce it. This is what the customised software rules were written for, and it is the only one of the three with its own gazetted allowance rates.

Owners usually discover the difference at the wrong moment — after the invoice is settled and the wording is fixed. A custom software tax deduction in Malaysia is decided by paperwork written months before anyone thinks about tax, so it is worth reading the treatment alongside the web development pricing guides before you sign. The same RM150,000 can land in a much better position with one extra line on the quotation. If you are still choosing between platforms, our comparison of WordPress, Shopify and a custom build covers where each option lands.
Key takeaway: Renting software is an expense; commissioning software is an asset. Only the commissioned build goes through the customised software capital allowance rules, and only if the invoice makes that visible.
Planning a build this financial year?
We scope custom systems with the cost split written into the quotation from day one, so your tax agent is not reverse-engineering it later.
See how we build custom applications →2. What a Custom Software Invoice Actually Contains
Quick Answer: A Malaysian custom software project usually breaks into five kinds of cost: discovery and scoping, development work, payment for rights of ownership, incidental configuration, and first-year hosting and support. Three of the five sit inside the capital allowance rules. The other two are treated separately, and most invoices never show the split.
The figures below come from ZenWeb builds for Malaysian SME clients. The shares move by project, but the shape holds: the bulk of the money is development work, and the two smallest lines are the ones that decide how clean the claim is.
| Invoice line | Share of project cost | How it is treated |
|---|---|---|
| Discovery, scoping and feasibility | 8% | Outside the development cost definition |
| Development and build consultation | 61% | Qualifying development cost |
| Rights of software ownership | 9% | Qualifying where the right granted is exclusive |
| Incidental work — configuration, migration, change requests | 12% | Qualifying where capitalised and tied to the build |
| First-year hosting, third-party licences and support | 10% | Recurring expense, deducted in the year incurred |
Source: ZenWeb client sample, custom software builds for Malaysian SMEs, 2024–2026. Licence.

Roughly 82% of a typical build sits in the qualifying band. The problem is that a single-line invoice reading "software development — RM150,000" gives your tax agent nothing to work with, and the recurring items in that last row get quietly capitalised along with everything else. Those recurring items are the same ones we break down in the hidden costs of custom software and in our breakdown of ongoing maintenance fees.
Key takeaway: Ask for the cost split on the quotation, not the invoice. Once the project is delivered, nobody can reliably reconstruct which hours were scoping and which were building.
3. The Planning-Stage Trap: Consultation Fees That Do Not Qualify
Quick Answer: Development cost covers consultation fees for building or modernising the software itself. It excludes consultation relating to the initial procedure or planning stage — feasibility studies and preliminary studies. That exclusion is set out in LHDN Practice Note 2/2020, and it is the most common reason a Malaysian claim gets trimmed.
The wording matters because "consultation" appears on both sides of the line. Paying a developer to work out whether a system is worth building is planning. Paying the same developer to design and write it is development. LHDN sets this out in Practice Note 2/2020, which also confirms that development cost covers both new software and improvements to existing software.
In practice, these are the lines that read as planning:
- Feasibility and business case work. Deciding whether to build at all, comparing build against buy, sizing the investment.
- Preliminary vendor selection. Requirement gathering done before a developer is appointed, or paid workshops run by several shortlisted vendors.
- Process mapping with no build attached. Documenting how the business works today, when the engagement stops there.

And these read as development: writing the specification the developers will build to, systems and database design, the build itself, modernising an existing system, and testing. If a single engagement covers both, the invoice needs to show where one ends and the other begins. The same discipline pays off if you later hand the system to somebody else — see what a legacy system takeover costs.
Key takeaway: "Consultation" is not automatically qualifying. Work done to decide whether to build sits outside the rules; work done to build sits inside them.
4. How Fast the Write-Off Runs Under the 2024 Rules
Quick Answer: P.U.(A) 327/2024 sets the initial allowance at two-fifths of qualifying development cost and the annual allowance at one-fifth. That is 40% plus 20% in the first year and 20% in each of the next two — a full write-off in three years, against four years under the 2019 rules it replaced.
The change took effect from year of assessment 2024, and the earlier Rules [P.U.(A) 274/2019], which carried a 20% initial allowance and a 20% annual allowance, were revoked at the same time. For a business timing a build, the practical effect is that more of the relief arrives in year one.
| Claim year | Under P.U.(A) 274/2019 | Under P.U.(A) 327/2024 |
|---|---|---|
| Year 1 (IA + AA) | RM60,000 | RM90,000 |
| Year 2 | RM30,000 | RM30,000 |
| Year 3 | RM30,000 | RM30,000 |
| Year 4 | RM30,000 | Nil — already fully claimed |
| Share claimed in year 1 | 40% | 60% |
| Years to full write-off | 4 | 3 |

Source: modelled scenario on RM150,000 qualifying cost, using the rates in each set of Rules. Illustrative, not a tax computation. Licence.
Sixty per cent of a custom build now writes off in its first claim year — the fastest relief Malaysian software spend has ever carried.
Key takeaway: The rates improved in 2024, but they apply to qualifying cost only. A bigger percentage of a smaller qualifying base is not a win — get the base right first.
5. When the Claim Starts: The "Capable of Being Used" Rule
Quick Answer: Development cost is deemed to be incurred in the basis period for the year of assessment in which the software becomes capable of being used in the business. Paying the developer in an earlier year does not start the clock. Go-live does.
This is the rule that catches builds spanning a financial year end, which in Malaysia is most of them. The money leaves your account across several months; the claim lands in one year of assessment. Two consequences follow.
First, a build starting in one financial year and going live in the next produces no allowance at all in the earlier year. Owners who budgeted for relief in the year they paid are often caught out. Second, "capable of being used" is not the same as "fully rolled out". The test is whether the software could be used in the business, not whether every department has been trained.
That makes a written acceptance record more valuable than most owners expect, which is why we treat sign-off as a deliverable in every custom web application quotation. It matters most on staged work. An MVP build or an API integration project can go live in pieces, and each piece needs its own dated record.

Key takeaway: The year you pay and the year you claim are different questions. Plan the go-live date with the same care you plan the budget.
6. A Build That Crosses Two Financial Years
Quick Answer: On a build running August 2025 to March 2026 with a 31 December year end, none of the 2025 payments generate an allowance in YA 2025. The qualifying cost is deemed incurred when the system goes live in March 2026, so the whole claim starts in YA 2026 — and the discovery invoice never enters it.
| Month | Milestone | Amount paid | Enters qualifying base? |
|---|---|---|---|
| Aug 2025 | Discovery and feasibility | RM12,000 | No — planning stage |
| Oct 2025 | Build phase one | RM45,000 | Yes |
| Dec 2025 | Build phase two | RM38,000 | Yes |
| Feb 2026 | Integration and data migration | RM30,000 | Yes — incidental to the build |
| Mar 2026 | Go-live and acceptance sign-off | RM25,000 | Yes — claim year fixed here |
| Total | RM150,000 paid | RM138,000 qualifying | All claimed from YA 2026 |

Source: modelled build schedule, 31 December financial year end. Illustrative, not a tax computation. Licence.
The year-one allowance on that RM138,000 base is RM82,800 — 60% under the 2024 rates. The RM12,000 discovery invoice is not lost either; it is simply handled outside these rules, and your tax agent decides its treatment on its own merits.
Key takeaway: Payment dates spread across two years; the claim lands in one. A go-live a fortnight before year end can move the whole relief forward by twelve months.
Want the go-live date to land in the right year?
Tell us your financial year end and we will build the delivery plan around it, then price the phases to match.
Compare support and SLA plans →7. Seven Conditions That Switch These Rules Off
Quick Answer: The 2024 Rules carry a non-application clause. Say the same development cost has already earned relief somewhere else: a deduction, a reinvestment allowance, an incentive or an exemption. The customised software rules then do not apply on top of it. You claim once, not twice.
The rules also require you to be a resident in Malaysia carrying on a business here. Beyond that, the same expenditure is blocked if it has:
- Been granted an incentive under the Promotion of Investments Act 1986. Pioneer status and similar incentives cover the spend already.
- Been claimed as a deduction under section 33. You cannot expense the build and then claim capital allowance on it.
- Been claimed under section 34A. The research and development double-deduction route is a separate path.
- Been claimed as reinvestment allowance under Schedule 7A.
- Been claimed as investment allowance for the service sector under Schedule 7B.
- Been claimed as accelerated capital allowance under other rules. This one matters in 2026, because separate accelerated allowances exist for e-invoicing-related spend — see LHDN's e-Invoice resource centre and our e-invoice guide for small businesses.
- Been covered by a statutory income exemption under paragraph 127(3)(b) or subsection 127(3A).

The overlap worth watching is grant money. If part of your build was funded through a digitalisation grant, the funded portion is not your expenditure — a point we cover in the SME digital grant guide and its 2026 marketing counterpart. Indirect tax runs on its own track as well — SST on service invoices is separate from anything discussed here. Check the interactions before you file, not after.
Key takeaway: One ringgit of development cost gets one form of relief. If an incentive, grant or another allowance already touched it, the customised software rules step aside.
8. The Paperwork That Decides Whether the Claim Survives
Quick Answer: Five documents carry a customised software claim: a phase-split invoice, a written scope, a go-live or acceptance record, an ownership clause, and change request records tied back to invoices. In ZenWeb's experience the phase-split invoice is missing most often, and it is the one the whole claim rests on.
The figures below show how often each document was unavailable when a client's tax agent asked for it. That request usually lands months after the project closed, long after anyone thought to ask the developer.
| Document | Missing when asked | What it proves |
|---|---|---|
| Phase-split invoice | 64% | Which ringgit were planning and which were development |
| Go-live or acceptance record | 58% | When the software became capable of being used |
| Signed scope or specification | 41% | That the work was a build, not advisory time |
| Ownership or IP assignment clause | 37% | That the right paid for is exclusive to you |
| Change requests tied to invoices | 29% | That incidental costs belong to the build |
Source: ZenWeb client sample, custom software engagements for Malaysian SMEs, 2024–2026. Licence.

None of these costs anything to produce while the project is running. All of them are hard to produce two years later, once the developer has moved on. Ask for them at kick-off and store them with the invoices.
Key takeaway: The claim is decided by documents created during the project, not by arguments made after it. Collect them while the developer is still answering emails.
9. If Your Developer Is Overseas: Withholding Tax
Quick Answer: Practice Note 2/2020 flags that payments to non-residents for development cost may attract withholding tax. Section 109 applies where the payment is a royalty; section 109B applies where it is advice, assistance or services. Offshore development is common in Malaysia, and this is the obligation most often missed.
The point is not that offshore development is a bad idea. It is that the obligation sits with you as the payer, not the developer, and it arises when you pay or credit the amount. Getting it wrong can put the deductibility of the payment itself at risk.
Two habits help. Establish before signing whether the contract is a transfer of rights, a service, or both, because that drives which section applies. Then build the withholding into your cash flow rather than discovering it after the first milestone — the same discipline that keeps return on investment calculations and acquisition cost figures honest. Your tax agent should confirm the rate and any treaty position before the first payment leaves.

Key takeaway: Paying an overseas developer creates a withholding obligation on you. Settle the classification and the rate before the contract is signed.
10. Conclusion: The Invoice Decides the Claim
Quick Answer: Custom software written for a Malaysian business writes off over three years at 40% initial plus 20% annual allowance, on qualifying development cost only. What decides the size of that claim is not the tax rules — it is whether the quotation separated planning from development before anyone started work.
Everything in this guide comes back to one habit. Ask your developer for a cost split at quotation stage, a written scope, and a dated go-live record. Those three documents turn a defensible custom software tax deduction in Malaysia into an easy one, and they cost nothing while the project is live.
The wider budgeting picture sits across the web development pricing hub: what a build should cost, what it costs to keep running, and where the money quietly goes. If your spend is on the marketing side rather than the software side, the treatment differs again. The rules on advertising deductibility and our guide to website cost deductibility cover those cases. Confirm your own position with a licensed tax agent. This page explains how the custom software tax deduction rules work in Malaysia, but it is not tax advice for your business.

11. Frequently Asked Questions
1. Is custom software tax deductible in Malaysia?
Not as an ordinary deduction. Development cost for customised computer software is claimed as capital allowance instead, at a 40% initial allowance plus a 20% annual allowance under P.U.(A) 327/2024. The full cost is relieved, just spread across three years rather than taken in one.
2. What counts as development cost for customised computer software?
Consultation fees for building or improving the software, payment for rights of software ownership, and incidental fees relating to the development. Consultation relating to the initial procedure or planning stage — feasibility and preliminary studies — is excluded under Practice Note 2/2020.
3. Which year do I claim the capital allowance in?
The year of assessment in which the software becomes capable of being used in your business. Payments made in earlier years are deemed incurred in that later year, so a build spanning two financial years produces its first allowance only after go-live.
4. Can I claim capital allowance on a software subscription?
No. A monthly or annual subscription buys access, not an asset, so it is treated as a normal business expense in the year incurred. The customised software rules apply to commissioned builds where you pay for development and rights, not to rented software.
5. What if a grant paid for part of the build?
Grant-funded portions are not your expenditure, and the 2024 Rules also switch off where the same cost carries another incentive, deduction or allowance. Work out the split between grant-funded and self-funded cost before filing, and have the grant approval letter on file.
6. Do I withhold tax when paying an overseas software developer?
Often yes. Practice Note 2/2020 notes that payments to non-residents for development cost may attract withholding under section 109 for royalty or section 109B for services. The obligation sits with you as the payer, so confirm the classification and rate with your tax agent before the first payment.

Building custom software this year?
Book a free 30-minute session. Bring your financial year end and what you want the system to do, and we will hand back a phased scope, a cost split your tax agent can work from, and a realistic go-live date.
Get my build plan →

