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.

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.
  • 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


    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.

    • Basiclife1

      *This* is the real reason to detest Microsoft.

      The toolset is excellent and the software is rock solid but working out how much the license is going to be on a deployed multi-server appliance with multiple VMs running (amongst other things) a webserver was enough to drive me to Linux.

  • 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.

    • 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

  • 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.

  • 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!

  • 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).

  • 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?

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

  • 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.

  • 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.

      • BitBucket has pull requests,

      • 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.

      • 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!

  • 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.

  • 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?

  • 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.

  • Danny

    Oh I just learned that when you downgrade to the Free version since I switched to Bitbucket, they lock all of your private repos and they won’t refund you any money. Yeah I know how silly of me that I didn’t read but majority of companies just refund the days you didn’t use or let you access until your billing cycle ends. Lesson learned

  • i’m wondering whether GitHub is the best choice for private repositories for programmers like myself who are for all intents and purposes a one person show.

    with relatively cheap USB disks like the WD My Passport Ultra 1TB USB 3.0 drive, zipping Visual Studio solutions seemed like a good idea until the drive failed and i lost 2 years’ of production. The super downside of zipping for me really appears when one needs to revisit a project that one has not touched for at least 6 months.

    There are parts of Git i do not like; however, i really like the git log of commits.

    Phil Haack’s and Martin Woodward’s BUILD 2015 talk on using Git in Visual Studio got me interested; Linus Torvalds’ 2007 Google Tech Talk on Git in which his thesis is “Git is the ONLY SCM worth using” convinced me to take a very serious look at Git; Linus Torvalds is very anti-CVS, SVN, calling Subversion “the most pointless project ever started”.

    Now i’m learning Git on GitHub and have one public repository of my own.

    in the past i’ve used Visual Source Safe, TFS, and SVN but have not thought highly about them.

    From reading the notes to this thread, it seems like options that use Git include:

    i worry about free services like GitLab.com because FREE is an altruistic pricing model that only works in an idealistic reality … so what happens when GitLab.com runs out of money? (rhetorical)

    one possible solution is to self archive Git repositories from GitHub to the FREE up to one GB GitHub “Git Large File Storage” (AFAIK “coming soon” from GitHub).

    For big companies with deep pockets, $200 per month is an excellent deal imho; for “little guys & gals”, finding the right place to host one’s intellectual assets is more challenging.

    • jbogard

      Is GitHub the best choice for personal private repos? No. Take a look at bitbucket.org instead.

      As for what happens when gitlab runs out of money? Nothing. Pick another host. Since your git repository is also stored on your local machine, it’s as simple as finding another host, changing your remote URL locally to the new service, and doing “git push”. That’s the beauty of distributed SCM – the concept of a blessed central server is more a logical concept than physical – to you, it’s just a URL you push your repository to.

  • wunch

    Sorry to zombie comment, but it looks like Github just updated their pricing to per-user for organizations: https://github.com/blog/2164-introducing-unlimited-private-repositories

    It doesn’t scale as well as Bitbucket, but I think that’s to be expected from the more popular option.

    • jbogard

      Lol I know! I read that and thought “nuts do I need to write a follow-up”? Definitely a more appealing option at this point.

  • Honza Štěrba

    so, have you switched now? :)

  • Mike Tamillow

    thanks for the info. Good to know the options.