I've got an idea for a tiny utility program that seemingly nobody has thought of before. I've no idea what the demand for it would be, but I'm certain that it would be 0 if you had to pay for it. And I like opensource. :)

That said, it'd still be nice to get a few euros for my effort. How can this be done?

My first idea was to put some non-intrusive adverts in the program (somewhere in the side), but I can't find any advertising programs that would allow you to put adverts in Win32 applications. Google AdSense certainly forbids it.

Of course, a "Donate" button is always useful, and I think I will make one, but I doubt that many people will want to donate anything anyway.

Any other ideas?

10 accepted

There's another question around here (can't find it ATM, sorry) in which someone says he had 10k downloads and not a single donation. So I won't hope for that to work.

The only thing I can think of is build a good website with lots of documentation for your program and put some Adsense on it, together with other advertising (Amazon?). Just make sure the users of your source come back often, and you'll start collecting clicks in no-time.


Offer a slimmed down version of the software that's free to use.

Something like Linqpad without intellisense: People get the idea of the possibilities of the program, but to make it really useful people have to pay for it.

Also, keeping the price low should make sure that nobody will try to crack it.

  1. Donate
  2. Paid support
  3. Paid version with additional features or paid plugins

Just give it away without expecting to make money out of it. If you start to add some kind of advertising to it - you won't make any money, you will just lose your user base.

Add it to your portfolio, it will get you better reputation when finding new clients. You may offer consulting, custom modifications, etc. Open source software can generate revenues, but most of the time this happens indirectly.

All sqlite header files contain the following (and generates good money):

May you do good and not evil.

May you find forgiveness for yourself and forgive others.

May you share freely, never taking more than you give.


By having it on your CV, you can always make money on it indirectly. vim is open source, but I'm pretty sure it helped Bram Moolenaar to get a job at Google...


It seems like the basic revenue model for open source software is by providing user support, while the software is distributed for free.

I've seen software components that can provide ads to an application (in order to make "adware"), so they are out there.

However, if the software is being provided as open source, then that doesn't stop anyone from removing the ads and distributing the ad-free version themselves. (Well, under most open source licenses I'm aware of.)

Furthermore, many people despise adware -- probably not the route you want to take if you want your software to be adopted.

Therefore, I believe that the "Donate" button on your website is probably going to be the best bet. After all, if people think that your software is worth donating for, then they will. If not, then, they won't. It's going to come down to the quality of the software and the willingness of the users to donate.

Jeff Atwood certainly believes in donation -- he donated $5000 to ScrewTurn Wiki.


I do not think there is a valid option beyond "Donate". If your utility will not offer some crazy features, people will just get irritated by your ads and stop using it. If it will win tremendous popularity, there will be crack quite soon (like there is a patch for ICQ to cut out banners).

That's why many developers are embracing web these days. Very hard to impossible to earn on desktop software, but many opportunities with a service.

If your utility does not need direct access to the user's PC, you may try to offer it via web interface or maybe make a web service API to access it (for money of course).


Is there a change that people would need a modified/tailored version of this utility? If so, that's the proper way to make from open source


The only option I see here is to follow Daemon Tools and its WhenU SaveNow ads. You can read about it here: http://en.wikipedia.org/wiki/WhenU and here: http://www.whenu.com/save.html . Although some people may consider it spyware, Daemon Tools ask you to install it before use of Daemon Tools. I wouldn't recommend it, but just an option to install it or not. You can read more about its spyware influences here: http://www.spywareguide.com/spydet_2376_whenu_savenow.html


You can try to implement your donated users future request first. This way if some user needs a feature in your program he/she knows it will be implemented faster if he/she donates.

I think it is much nicer than putting ads to your program or making available a stripped down version.