Custom Windows desktop software in Malaysia starts around RM18,000 for a single core module, runs to roughly RM48,000 for a multi-module system, and passes RM120,000 for a cross-department platform. The build price is only part of the picture. Four recurring costs rarely appear in quotes, and one of them changed on 1 March 2026.
Why desktop pricing differs from web pricing
Buyers often line a desktop quote up against a web quote and assume someone is overcharging. Both are software, but the work behind them barely overlaps.
| Concern | Web app | Windows desktop |
|---|---|---|
| Installation | Open a URL | Signed installer on every machine |
| Updates | Deploy once, everyone has it | You build your own update channel |
| Offline | Usually needs a connection | Must work fully without one |
| Data | On your server | On the user's PC — needs encryption and backup |
| Distribution | Send a link | Microsoft Store or your own installer |
| OS trust | HTTPS is enough | Requires a code signing certificate |
Every row in that table is additional engineering. It is why a desktop system that looks simpler than a website can legitimately cost more.
The four costs quotes tend to omit
1. Code signing — and three rules that changed
Without a code signing certificate, Windows shows a "Windows protected your PC" warning every time someone installs your software. For an internal tool that is friction. For software you sell, it is a conversion problem.
Three things changed between 2023 and 2026, and a lot of vendor and reseller material still has the old version:
- **Hardware tokens are now mandatory, not an EV-only requirement.** Since June 2023 the CA/Browser Forum has required all code signing private keys to sit on FIPS 140-2 Level 2 certified hardware. A PFX file on a developer's laptop is no longer permitted. OV certificates now need a physical USB token or a cloud HSM, exactly like EV.
- **EV no longer grants instant SmartScreen reputation.** EV certificates used to bypass SmartScreen outright. [Microsoft's documentation](https://learn.microsoft.com/en-us/windows/apps/package-and-deploy/smartscreen-reputation) now states that behaviour is gone — OV and EV signed files alike have to build reputation. Many resellers still advertise "instant SmartScreen trust". That claim is out of date.
- **Maximum validity dropped to roughly 460 days on 1 March 2026.** Certificates could previously run 39 months. They now run about 15, which turns renewal into a near-annual task and changes how you should plan multi-year purchases.
If your goal is reducing SmartScreen friction, buy OV and keep the difference. The EV premium no longer buys what it used to. EV is still required for kernel-mode driver signing and sometimes demanded by enterprise procurement — outside those two cases it is hard to justify.
Rough budget: OV runs about USD 220–390 a year, EV about USD 280–500, depending on the CA and whether a token is bundled. At roughly RM4.40 to the dollar that is about RM1,000–RM1,700 a year for OV. Confirm current pricing with the CA — these numbers move.
One technical detail that saves real pain: timestamp every signature using RFC 3161. Without a timestamp your signature becomes invalid the moment the certificate expires — and with 15-month validity, that now comes around quickly.
2. Microsoft Store account — now free, with a catch
A Microsoft Store developer account used to cost USD 19 for individuals and USD 99 for companies, paid once. Microsoft has removed the fee — but only through one entry point.
You have to start at **storedeveloper.microsoft.com**. That is the only path that shows the zero-fee flow. Enter through Partner Center, Xbox or Visual Studio and you land in the legacy flow that still charges. Check Microsoft's own guidance before you register.
Choose the account type carefully upfront. Converting an Individual account to a Company account is not supported in Partner Center — you would have to open a new Company account and lose your publishing history. If you are a company, register as one even if you are currently a team of one.
3. An update channel
You update a web app once and every user has the new version. Desktop does not work that way. With no update channel, every bug fix means sending an installer over WhatsApp to each user and hoping they run it. A few months in you are supporting four versions at once and cannot reproduce half the reports.
Building the channel means hosting for version files, version-check logic in the application, and a rollback plan for when a release goes wrong. It is not enormous work, but it is real work — and it is the first thing missing from a suspiciously cheap quote.
4. A licence key system
Purely internal software does not need one. If you intend to sell the product or cap the number of installations, you need key generation, activation, device transfer handling, and an answer for the user who replaces their laptop. Each of those is a product decision before it is code.
What actually drives the price
| Factor | Impact | Why |
|---|---|---|
| Number of modules | Largest | Each has its own screens, rules and test surface |
| Offline plus sync | Large | Conflict resolution is genuinely hard engineering |
| Roles and permissions | Moderate | Every screen must be tested against every role |
| Hardware integration | Large | Receipt printers, barcode scanners, scales, OBD readers |
| Legacy data migration | Highly variable | Depends entirely on the state of the existing data |
| PDPA compliance, audit logs | Moderate | Who did what, when, and how long it is retained |
Three tiers and what sits in each
| Starter | Business | Enterprise | |
|---|---|---|---|
| Price | RM18,000 | RM48,000 | From RM120,000 |
| Scope | 1 core module | Multi-module system | Cross-department |
| UI | WinUI 3 / WPF Fluent | Plus reporting dashboard | Plus advanced analytics |
| User roles | Basic | Full roles and permissions | Role-based plus audit logs |
| Updates | Manual | Auto-update channel | Managed channel plus SLA |
| Licensing | — | Licence key system | Enterprise licensing |
| Timeline | 8–10 weeks | 12–16 weeks | 6–12 months |
| Support | 30 days | 3 months | 6 months plus SLA |
Starter fits when you are replacing one spreadsheet that has become a liability — invoicing, stock, or job records. Business fits when the system runs your daily operation. Enterprise applies when several departments depend on it and it has to talk to other systems.
The tax treatment changes the arithmetic
Development cost for customised software qualifies for capital allowance — 40% in year one, 20% a year after that. An RM48,000 system relieves roughly RM8,160 of tax in the 17% band. We break down the rules, the eligibility conditions and how the invoice should be itemised in a separate article: capital allowance for custom software.
Six questions worth asking any vendor
- 1Is the code signing certificate included or do I buy it? Who holds the hardware token?
- 2Who owns the source code when it is finished — and does the answer change by tier?
- 3How do updates reach users after launch?
- 4Where does data live on the user's machine, is it encrypted, and who backs it up?
- 5If I stop working with you, what can I still run?
- 6Will the invoice itemise consultation fees and ownership rights for my capital allowance claim?
A vendor who can answer all six in writing before a deposit has shipped desktop software before. One who deflects usually has not put a Windows application in front of real users.
Our Windows Software Development page sets out what each tier includes, and the quote calculator gives a range for your scope without asking for personal details.
Have a process still running on a spreadsheet and want to know what replacing it costs?
Discuss your scopeBuild With Us
Want to build a website for your business?
First consultation is free — no commitment. Contact us directly via WhatsApp and get a tailored recommendation within 24 hours.
Contact Us Now





