Skip to content
Blog

Native, web, or Electron? Picking a desktop stack

Desktop is having a moment again. Five questions that tell you whether your app should be native, a web app, or something wrapped in Electron.

Jorge Valbuena2 min read

Desktop software stopped being unfashionable somewhere around the time every tool became a browser tab with a 400 ms input delay. If you are building for the desktop again, the first real decision is what to build it in — and it should not be settled by taste.

Five questions get you most of the way.

1. How much of the app is platform capability?

Count the things only the OS gives you: menu bar and tray behaviour, global shortcuts, file system watching, background agents, hardware and peripheral access, native notifications, Finder or Explorer integration.

If that list is long, native wins outright. Every item on it becomes a plugin you write and maintain in any wrapped stack, and you end up paying for both worlds.

2. Does it need to feel like the platform?

A Mac app is not an iPad app in a window, and a good Windows app is not a Mac app with different chrome. Keyboard conventions, window management and menu structure all differ, and users notice when you get them wrong even if they cannot name what is off.

If the product’s value is in feeling native, build native. If the value is in the content and the chrome is incidental, that pressure drops a lot.

3. Do you actually need a desktop app at all?

The most useful question, and the one skipped most often. If your app is content, forms and networking, and it does not need to run offline or touch local files, a good web app is cheaper to build, instant to update, and has no install friction.

Shipping a desktop app to avoid writing a good web app is a decision you pay for forever.

4. How many platforms, honestly?

“Mac and Windows” is often stated and rarely true in the ratios people assume. Look at your actual users. One excellent native app for the platform 85% of them use usually beats two mediocre ones.

If you genuinely need both and the app is content-heavy, a shared core with thin native shells is a reasonable middle path.

5. Who maintains it in two years?

Electron apps need someone comfortable with web tooling and enough native knowledge to debug a signing failure or a broken auto-updater. Native apps need a platform specialist. Be honest about who is actually around later.

The short version

Native when the app leans on platform capability, should feel like it belongs, or needs to run for years with minimal attention.

Web when it is content, forms and networking, you ship often, and install friction is costing you users.

Electron or similar when you truly need both desktops, the app is content-heavy, and you have accepted the maintenance bill that comes with it.

And whichever you choose, decide the distribution story on day one — signing, notarization, installers and updates. That is the part that quietly eats a fortnight if you leave it to the end.