Since you can't compete on price, then compete on all of the other selling points that the software has:
- features
- quality
- effectiveness
- integration with other software
- service
- support
- direct selling
Basically, you do what every other company does when they're in price competition: keep pace, or change the game.
When it comes to GPL, the unit of release is the unit of licensing.
If your web site, and its javascript are a single thing that works together, then the whole has an effective license. If any part is GPL, the effective license of the whole is GPL. (This is not true for LGPL, MIT, etc.)
If you are hosting the web site, and your customers are buying access to the service, then you have not distributed or conveyed the server side code, thus the GPL is irrelevant. (The AGPL changes this, and asserts that Software as a service must have its source released.)
Javascript that is part of your application in not automatically licensed in any way. Strictly speaking, downloading the javascript to run it in the browser is copyright infringement. Of course, that is silly. There's probably an implied license to run the code, but that is all.
If you use a Javascript library, then you have to obey the license of that library. If that license is GPL, my understand is that that means your whole application is GPL. This is probably why jQuery has a dual license -- your choice, MIT or GPL. Without the option to use the MIT license, it could only be used by GPL apps.
Best Answer
Initial Cost has a role to play. Open Source is generally cheaper on both the hosting and the tooling. The only way that closed source competes is by trying to provide better tools, sometimes even free tools. If your input costs are low open source can be an excellent option.
Microsoft will give away the web developer version of Visual Studio to bait developers in, and then give them a beautifully functional environment that makes development easy. They hype everything up and keep new features rolling in.
Consider portability VS level of integration. Open Source can be very sustainable, because you can change out parts you don't like or parts that fall out of favour. With Closed source you are stuck.
Generally speaking Closed Source solutions are more tool focused and more integrated. Open source does not enforce use of any specific tools and represents a mix-in manner of solving problems.
The level integration in closed source can be high. For instance Microsoft provides
With open source you can have any combination of operating systems, DBMS, framework and language. They are not tightly integrated, but they are portable.
Consider customizability . Closed source systems are not very customizable. They try to provide pluggable frameworks etc but mostly there are points where you get stuck. Sometimes they have a premium product that you then have to invest in.
Consider giant applications that need custom caching, database solutions, or even a customized OS to run. If you reach that point that your application is so massive that no prebuilt solution can deal, and you want to customise, open source will pay off.