There’s a great conversation here at WPMU.org about how to make money using Wordpress MU – James starts by noting that advertising doesn’t cover the hosting costs for a massively successful site, and goes into the various other ways in which they derive revenue, including selling extra features to paid users and selling custom plugins (that are not released under the GPL). In response, Jason acknowledges that WPMU is inherently costly to run and agrees that there must be a revenue tsream, and then goes on to argue that WPMU is really a service, not a product. Therefore to make money with WPMU, he reasons, you must provide a value-added service relative to the big free hosts like wordpress.com – such as custom themes. James replies with a lengthy argument defending the decision not to release plugins under the GPL.
I don’t have much to add aside from noting that since themes have long been released without GPL, there’s no reason that plugins should be any different, especially with themes like Thesis which are “frameworks” that really blur the line between a theme and a plugin. The same can be argued for Prologue, which I use as the front end to my WPMU install at Talk Islam. The “core functions” of WP are never used in themes or plugins, so I don’t think that argument applies (think about it – why would you want to duplicate core WP functionality? why would you even need to?)
Of course, part of the problem for monetization is that you are a victim of your own succcess. James’ monthly costs for the Edublogs network are assuredly far greater than mine for Talk Islam – I can only aspire to a fraction of his success (especially since I am not running Talk Islam as a business. not yet anyway). As such Talk Islam has only a handful of user blogs – most of the activity is on the front page (where the Prologue theme gives it a dynamic, Twitter-esque feel). My goal for Talk Islam is to incorporate the Buddypress functions and ultimately create a framework for a “community platform” that would be in a sense the successor to the Daily Kos style blog community, replicating many of the features but discarding things that are broken in my opinion (such as the way the recommended diaries list is dominated by a clique of the same voices and the same topics, with very rare original and fresh perspectives). It should be noted that Shai Sachs, a very talented Drupal hacker, is working on a drupal-based blog infrastructure project for the progressive political blogsphere, but I personally believe that wordpress MU is a better platform. With Talk Islam as a prototype, we can envision a package that already includes the buddypress integration and standard theme for frontpage and user blogs that an aspiring admin could simply download and have ready to go out of the box.
The real question for monetization is the scale. How many WPMU installs are on the scale of Edublogs? Very few, I wager – but there are probably thousands like mine where the entire install can be run off a standard Dreamhost account. At that scale, Adsense ads can indeed cover hosting costs and even a modest profit on the side – not enough to pay rent, but maybe enough for cable television. Or a Starbucks addiction.
I think therefore a model for monetization presents itself. Instead of trying to monetize a single WPMU install, you monetize a packaged installation that you distribute. That installation can have Adsense code sharing so that half the revenue from ads goes to the package developer (or all if the installer doesn’t have an adsense account, there would be a box for them to paste their adsense publisher ID if they have one). For any given WPMU install the revenue will be quite modest, probably on the order of a few dollars a month. But suppose that the package was installed a hundred times? a thousand? Especially since it isn’t you who are paying the hosting fees, its the person installing the package.
Of course this means we have only punted the monetization issue downstream. But for a small WPMU site operator, recouping hosting costs is a lot easier than for a big operation like Edublogs. Users can be asked for donations, charged fees for extra features, etc just as James and Jason described in their posts. These revenue sources will be much more lucrative at the smaller scale.
As a business model, none of the above really helps James out, unfortunately :) But then again, what if individual schools ran their own WPMU microsites using Edublogs software? (actually, they do.) In a sense the strategy above can be leveraged regardless of your size. All things considered, I’d rather be in James’ position of being too big :)
Cross-posted at metaBLOG, my blog about blogging about blogging… In addition to blogging there and at Talk Islam, I also blog at City of Brass for Beliefnet, and talk anime and science fiction at Haibane.info.





Aziz – your theme or plugin will use WordPress functions and won’t work without WordPress so they should be GPLed. Just because themes haven’t always been GPLed doesn’t mean those theme designers are right.
A theme will have the “while (have_posts()) : the_post();” loop to print posts. That’s WordPress code it’s using and won’t work in a proprietary CMS without changing those commands. It’s a feature of the GPL that the theme must be released as GPLed code.
I agree that running an MU site is a service though, but making money from it is as challenging as from any other site.
@Donncha: the php theme files may be GPLed but the style.css file has no WordPress code in it and it can licensed differently. Don’t forget that the main design is in the css file.
Donncha, I agree that a theme has to have a function call to wordpress core functions, but that means it is basically using the wordpress API. Thats not the same thing as using actual wordpress code. I think there is a genuine separation there. If not, then the entire paid theme marketplace would have to be GPLed. Not to mention any program or software that uses an API of an open source project.
@Elad – to be fair, there are themes such as Alex King’s Carrington project and Chris Pearson’s Thesis that are “frameworks” not just collections of CSS. Another example would be K2. Some of these are free and others are not.
Aziz – doesn’t the GPL have a clause for operating system kernels because of this? Linux is exempt from this viral nature of the GPL, but WordPress isn’t. If WordPress was LGPL licensed any sort of proprietary software could use it’s API.
This reminds me of Sleepycat software who used a GPL compatible license to sell their Berkeley DB. You could download it and use the db system for free but if you wanted to distribute it you had to distribute your application source code under the same license. Great for GPLed software.
If that didn’t suit, you could pay Sleepycat for a proprietary license as they owned the copyright to the db system, and then ship your product as a binary! No single entity owns the source code of WordPress so such a thing cannot happen. Plugins and themes have to be GPLed if distributed.
See http://www.winterspeak.com/columns/102901.html
As for the stylesheets and images used in themes, you’re right. It seems the consensus is that they don’t have to be GPLed, and the community is the worse off for it.
I wonder what would themes designers and users say if they thought WordPress contributors were checking in second-rate code into the project and keeping the good stuff for their own clients and businesses. Up in arms I’m sure.
Aziz: An independent piece of code that attaches to WP via an API (metaWeblog, for example) doesn’t need the GPL. A theme or plugin, in contrast, is a subroutine of WP, with direct access to WP’s internal variables, and should be GPL’d.
Now, it wouldn’t be impossible to create add-ins for WP while still avoiding the GPL. For example, WP’s Atom API support could be broadened to expose most of WP’s internal functions and variables via REST… the results won’t be as performant as using a native plugin or theme, but it would work, and be totally legit. And with enough caching, who knows… performance might now even be a huge issue.
Donncha, I don’t think that the WP themes and plugins ecosystem has suffered – it seems pretty healthy to me, far more so than the Dfrupal ecosystem (which is WP’s closest competitor in terms of developer interest). The scenario you describe where designers were “hoarding” code seems unlikely for te simple reason that it would already be happening if it were likely. Plus, any deveooper who “hoards” code would rapidly find themselves forking WP over time as they drifted further from the stable trunk. The high frequency release cycle of WP tends to keep everyone invested in the open nature of the core code. But I’m not a WP developer so I cant say for certain; as one of teh core contributors yourself you obviously have a far better idea of whats going on than I do. Do you see the rate of code contribution from developers tapering off as the theme and plugin market expands?
Note that I am not unsypathetic to the GPL argument (the sole plugin I wrote for WPMU is GPL, too). I just think that theres a valid difference of opinion here and that ultimately it rests on the developer’s conscience. Apatr from the infestation of themes with sponsored links a while back (which were excluded by fiat, a decision i approved of), I think the community overall has been pretty conscientous in giving back. How would WP have grown and been so successful otherwise?
Roger – I think that whether a plugin is simply using an implicit API of WP, or is a subroutine of WP, is a matter of interpretation. I respect the other view but I cant agree with it.
Aziz – I’m certain it hasn’t happened. Developers do the best they can but I’m comparing it to the web designers who want to keep their super-duper-fabulous theme proprietary and release an ugly one under the GPL.
Aziz: Does (a) WordPress call the theme/plugin, or does (b) the theme/plugin call WP? Can the theme/plugin directly access WP’s internal data structures? If the answers are (a) and “yes”, there isn’t a lotta room for interpretation, IMO.
I’m not big on the GPL, myself… it brings too many complications for my taste. But I just don’t see how it doesn’t apply to themes and plugins.