One of the biggest factors stopping potential users from adopting your software is the friction involved in said adoption process.
If you distribute a native application, the best case for a smooth adoption process would be as follows:
This is a 5 step adoption process assuming extremely favourable conditions. Step 2 could be 2 steps if you support many native package managers and the user has to find his one first. Step 3 could be preceded by opening the terminal. Step 4 could be extended to prompt for several more interactions, as is standard with yay the AUR helper. Step 5 could be delayed because your user needs to read your documentation first to see how to launch your application.
You quickly end up with a 10 step process that, despite taking only a minute or two, delays the adoption of your software and introduces enough friction for many users to never bother to check out your offering.
Contrast this with 90% of decent web apps: You click a link and are already using the software. This is a one step process taking maybe 5 seconds with bad internet. Even if your web app is corporate garbage, displaying a cookie banner and an email form, it's only 2 more clicks to get rid of those. And this only highlights the friction on a mere time axis.
Web apps come with an additional benefit of trust. The web browser is giving some sense of safety to the users, as it protects them from ill intentioned developers. Lastly, users might be less hesitant to adopt a web app, since it takes no additional storage and, assuming the browser is already open anyway, it might take less computing resources than many poorly written native applications.