Where's the love?
The way GitHub structured their pricing plan looks like a way to punish long-term customers.
They don't charge based on how much value they are providing: they just charge based on how much you must be willing to pay after your data starts gathering there. And they are not alone -- most other do the same wrong customer segmentation tricks.
Many small projects
It's good form to have separate repositories for separate projects, so with each new project hosted on GitHub you would create a new private repository.
Well -- pretty soon you will run out of private repositories so you'll need to upgrade to a new plan.
If you look at their pricing plans they are for 5, 10 and 20 private repositories, and then you get into the over $100/month business plans.
Am I silver business or micro ?
If I look at my own server, I have 34 mercurial repositories dating 2 years back alone. Of course, some are big, some are small, some represent my own ideas while other are repositories for client projects.
But do you know how many am I actually using nowadays? The answer is 4.
So according to this I would need to be on a silver business plan with $100/month. But what is the value they are providing? It's the equivalent of $7/month of the micro plan, plus the value of having your old projects archived and available. Now, I wouldn't say the value of archiving old projects is $93/month.
Metered please
My solution is metered code hosting.
Amazon's EC2 might have spoiled me but I like to know that I'm paying for what I am actually using.
So, how do I see a sane pricing plan ? Well, there are 3 axes to look at: it's the disk I'm using, the bandwidth I'm using and then the actual hosting extras I'm accessing like online source code visualizer, wiki, merge tool, code review or whatever. If you think about it, the "extras" I am talking about might be seen like the CPU-time of running their software.
Now, all the trick is setting a right storage/bandwidth/CPU price.
Storage can't be more than 130% of the S3 price, meaning about 20 cents/GB ($0.20)
Bandwidth can't be more than 130% of the EC2 data transfer, meaning again about 20 cents/GB ($0.20)
Setting a price on the CPU time is interesting as this basically tells you how they value their product. It's impossible to guess but they would have to set the number pretty high to make normal usage exceed their current pricing plan.
... or the simpler change
The other notion they could introduce is that of active repository.
If I am pushing changesets to a repository, editing the wiki it's pretty safe to say I should pay for that repository.
But if I haven't touched the repository in any way for the whole month it would sure be nice to charge me only for the storage (or nothing at all if we see storage as "unlimited").