Why GitHub’s pricing model stinks (for us)

I love GitHub. I use it for websites, I use it for OSS, I use it for a dump of blog post code. I love the website, I love the tools, I love the apps. I love that it’s in the cloud and I can get to it from anywhere with an internet connection.

However, the pricing model stinks for us at Headspring.

GitHub prices plans based on where it considers the value to be: private repositories. Paid plans have unlimited collaborators and unlimited public repositories. The plan you pick defines how many private repositories you have. Additionally, business plans let you define unlimited teams (but still are priced based on number of private repositories:

Plan Private Repositories Price
Micro 5 $7/mo
Small 10 $12/mo
Medium 20 $22/mo
Bronze (Business) 10 $25/mo
Silver 20 $50/mo
Gold 50 $100/mo
Platinum 125 $200/mo

All very reasonable prices, but unfortunately, just don’t make sense for us at Headspring. As much as I like pull requests and GitHub issues, pricing based on what is for us a very unpredictable measure (# of private repositories) completely prevents us from considering GitHub. Since we’re a consulting company, on many projects, it’s difficult to track and predict how many private repositories we have going at any given time.

Repositories aren’t our asset, our people are. We can easily predict how many employees we have, so we’d much, much rather just pay by the user. It’s the pricing model of many of our other cloud services (but not all).

Bitbucket, on the other hand, gives us 100% predictable pricing, based on users:

Users Price
5 Free
10 $10/mo
25 $25/mo
50 $50/mo
100 $100/mo
Unlimited $200/mo

We get unlimited private repositories for this plan, and a very predictable monthly cost. We did a quick price comparison, but it’s really hard to compare apples to oranges here when we really can’t know how many users we have.

I see this in quite a few SaaS providers, having a rigid pricing model on only one axis. Often it’s the pricing model, and not the overall price, that dictates what services we can use. Having a flexible pricing model would allow GitHub (and other companies with similar models) to reach a broader set of companies that simply predict costs on a different measure.

I understand that a lot of teams have more predictability on repositories (and not people), and GitHub makes more sense for them. However, I don’t ever really want the decision on whether or not to create a GitHub repository (or BaseCamp project for that matter) to come down to “are we at our limit?”. I see people sitting around, and they’re easy to count.

So while we can’t use GitHub right now, I’d love to in the future if their pricing model ever matched how we can truly predict costs.

Related Articles:

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

About Jimmy Bogard

I'm a technical architect with Headspring in Austin, TX. I focus on DDD, distributed systems, and any other acronym-centric design/architecture/methodology. I created AutoMapper and am a co-author of the ASP.NET MVC in Action books.
This entry was posted in git. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • http://twitter.com/c_tolkien Chad

    Could not agree more with this. As a small team with a large volume of private repositories, the Github pricing model is… not at all comparable to Bitbucket

  • Ayende Rahien

    Jimmy,

    There is a big problem with having multiple concurrent pricing models. It drives users crazy, to put it simply.

    What usually happen is that you have a public pricing model, which is the default, and you can then ask support for a custom model.

    I suggest giving it a try.

    Another aspect that you might want to remember is that the pricing model is often based on what you are actually _costing_ them. Pricing models that don’t take that into account create _problems_ down the road, like bankruptcy.

  • http://twitter.com/thefringeninja João P. Bragança

    What about making the company you are consulting for pay instead? $7 a month for even a mid sized company isn’t even noticeable. Plus it helps them feel like they own the code and can look at it anytime they want.

    • http://twitter.com/JoshReedSchramm Josh Schramm

      This is exactly what we’ve started to do at my company. We have yet to have a single client push back on it, they really like the fact that they clearly own the code and don’t see $10 / mo as a huge investment

  • http://www.facebook.com/not.that.dave.foley Dave Foley

    I strongly disagree (and I also work for a client services company that has more than 50 private github projects).

    In the grand scheme of things, $200/month is a drop in the bucket for just about any company I can imagine that has more than 50 active private projects.

  • http://murrayon.net/ Mike Murray

    You didn’t mention GitHub for Enterprise, which is another viable option. No limit on repos or users and hosted privately within your company’s internal network, and with every great feature the public facing one has. It had been worth every penny and a joy to work with. Ask Jeremy how he’s liking it, since he’s one of my new coworkers. :)

    • jbogard

      Nah, cause GitHub for Enterprise really doesn’t work for us, the pricing model is *much* higher than Bitbucket. And we don’t have a private internal network, our company is 99.999% cloud based.

      We did look at it though!

  • http://twitter.com/daniellangnet Daniel Lang

    The real problem with the Github pricing model comes down to the lack of an archive feature. All those repositories that you haven’t touched for two+ years count against the limits, this is ridiculous. Sure, you could zip and upload them to S3, but then again, what if some day you want to take a quick look at the code or need to reactive the repository.

    I emailed Github over 2 years ago and they told me that an archiving feature is on their list. It’s still not there. We finally moved to CodebaseHQ and found that they have a few other really nice features like advanced ticketing and their pricing model is very fair (still based on # of repos, but let’s you archive old ones).

  • http://twitter.com/ejblackburn Edward Blackburn

    Can’t your create a new account for each client? It is after all their code and they’ll need to support it once Headspring have left the building?

  • http://twitter.com/vcr2 Victor Rodrigues

    github for projects in development + codeplane for archiving delivered project git repositories seems to be a good way out of this: https://codeplane.com/

  • http://twitter.com/rsanheim Rob Sanheim

    Honest question: for any ‘serious’ clients, why not push them to start an Org level plan and give your Teams access to their repos for the duration of the contract?

    At my previous job, which was a consultancy, this is what we did. This also helped avoid the awkward situation of having a contract be finished but our Org still owned the Repo…and then the client has to learn enough Git to take it over, host it, etc.

  • LaughingJohn

    We had the same issue, we’re a tiny company (2 developers) of a software product that happens to have lots of repositories (it’s .Net and we have one repository per solution).

    In the end we went with unfuddle, which initially I thought was a bit basic on the project management front, but actually I’ve grown to like the simplicity (although the web UI could do with a bit of modernisation).

    Their pricing is based on number of people, projects and disk space. This worked perfectly for us (one project) and we were able to use the free account for a number of months. In fact we could probably downgrade again as they have increased the disk space but I like to pay them something.

  • http://rytis.net Rytis Lukoševičius

    At the beginning we’ve used github and then realized that our project count is growing rapidly of all the simple wordpress projects and so on that we manage and had to switch to bitbucket, cause head count is much more manageable :) So totally agree with the author and also it’s an interesting idea that @google-730a9f9186e14b8da5a4e453aca2adfe:disqus said about asking support for different model. That never materialized in our thoughts :)

  • Steve Friend

    Jimmy, why do you care? Sounds like you have a solution that works for you. Does BitBucket not offer something that github does?

    • jbogard

      All the other stuff – pull requests, GitHub issues, pages, wiki etc etc. That stuff I really love.

      • http://twitter.com/alexdickson Alex Dickson

        BitBucket has pull requests,

      • http://twitter.com/tobin Andrew Tobin

        Bb also has issues, pages, wiki and probably etc – it also can be a git repo on Bb (they support Git and Bb), but in the end Github is just a nicer experience.

      • http://www.blossom.io Thomas Schranz

        We are using pull requests & code reviews on Bitbucket and really love the experience.

      • AK

        Maybe that is why they charge that unpredictable price :-)

        Joke aside.. I have been using BitBucket for last 6-7 months(personal projects, small level) and I see they offer all of these.

  • James Bond

    Crying publicly about such business model without discussing it prior with the owner (GitHub) is simply dumb. I’m sure, if you discuss it prior with the owners, you will get a pricing suitable for your needs. If you cannot predict how much you will need, it’s not their fault.They have also an enterprise solution with work very well. GitHub don’t make public posts about your company that it stinks because you can’t predict your needs.

    So please don’t be a jerk and don’t post such offending content

    • jbogard

      You’re right, I shouldn’t post about pricing models about services I love that don’t work for us. How offensive of me! What a jerk!

  • http://twitter.com/gifpaste Gif Pasta

    Should this be filed under no-duh?

    GitHub is about open source and community. Private is the way they make money to support all the free stuff.

    We started with Bitbucket, mostly because of pricing, but also because of JIRA integration and the other Atlassian tools. Github issues are nice, but not really for “enterprise level”

    As bitbucket is also private and we manage issues in JIRA, to us the difference between github and bitbucket was only on price because at the end of the day all anyone really sees is “origin”

  • Henning Koch

    Limiting plans by number of users is just as annoying when you are a small team with many clients. Looking at you, Pivotal Tracker.

  • http://gc-taylor.com/ Greg Taylor

    wow, I’m shocked to see all of the flaming in response to this. He brings up a very valid point. Not all companies are in situations where they can directly offload the cost to the customer (situations where the customer doesn’t own the code/product).

    I have really enjoyed BitBucket’s pricing model, though we still use GitHub as our primary store. All of the smaller projects that we’d like to put on our GitHub org (but can’t due to the numbers game) end up on BitBucket. I too wish they billed by the user instead of the repo.

  • iwod

    The model Github uses generally encourages Open Source Code. By being open they dont charge you anything.

    Having said that i think Github should bump the private repo allowance by at least double the number. Even Doubling i would still consider it to be low number.

  • chris

    We had a similar concern – but i emailed them and they let me onto one of the ‘legacy’ plans – i get 50 repos for $50/month (i’m not sure what our limit is on collaborators, suffice to say we haven’t hit it) – might be worth seeing if they still offer this?

  • http://el-tramo.be Remko Tronçon

    I totally agree, the Bitbucket pricing model makes much more sense, and I’m pretty disappointed in Github for not providing this. There’s no real rational reason why i’m sticking with Github, I could just put everything on Bitbucket too, but I guess I’ve grown used to Github (Bitbucket missed the train when only supporting Hg), it’s still the most popular choice for collaborating on public repos, and I like having everything in one place.

  • Daniel Heitz

    We also had the problem of having many small and short term projects. That is why we just built our own archive feature -> http://backhub.co – our backups also include issues, milestones, wiki etc. and we have implemented a simple restore button in case you need to work on an archived project again.

    For us it is predictable how many projects are active at the same time (this also correlates with how many people are working in our company -> more people/teams = more parallel projects).

    Combined with the backup/archive feature we are happy with GitHub’s pricing model.

    Sign up for our private beta at http://backhub.co and let us know what you think. We are happy about any feedback.