It was my first day on the job, and I was discussing ideas and strategy with the CEO. His first question to me was “how do we increase our Github stars?”

TL;dr: Stars are a general indicator of Open Source health, but should not be used as a North Star metric.

Github Stars

My repo with sample Android apps has 81 stars!

Every repository on Github can be starred by other users. Some use it as a way to ‘bookmark’ interesting repositories, but it has come to be a metric of how much the repository is used/respected.

Tools like Star-History let you track the star history over time.

I created this repository when I worked at api.video, and it continues to grow because it is a great use case for their product.

Does the number of stars mean something?

“This means something.” Photo: US Geological survey

Yes. Sort of. If a repository is receiving stars, it is an indication that developers found it useful. If there are stars being given to the repo, that’s great! If the star velocity (the slope of stars/time) is also increasing – that is amazing! It means that the community of developers interested in your project is growing, and that’s a great thing to see.

But, it is just an indicator. Continued growth and accelerated growth are a good indicator that your community is growing, and your project is gaining traction. It is also *very easy* metric to capture – which can become a trap.

Star Games

If stars are a measure of your community, and it is an easy metric to gather, it can quickly take on a life of its own. Rather than focusing on growing the community, the focus becomes on increasing the # of stars

Once the goal is corrupted into “increasing a number on the website” people start playing games.

  • Buying Stars: There are websites where you enter your credit card, and within hours/days, your Github repository’s star count increases. (I’m not going to post any links, but if you look, you’ll find them.)
  • Shilling for Stars: I love getting swag/t-shirts at conferences. Some companies ask you to fill out a form/ scan a barcode. Some request that you star their Github repo to get the swag.

In both of these cases – your company is spending money (possibly a lot of money) to grow the star metric. In reality, your community hasn’t *really* grown. The ‘stars for swag’ inflate the size of the community, but there is no noticeable velocity change in issues/comments/PRs etc.

A second item to consider – how will you keep your star velocity at the same rate? You have to keep dumping your $$ into the process – for no substantial gain to your community, your codebase, or your product.

What *are* Stars Good for?

When there is a jump in your metrics, you can go back to those dates to discover “what happened.”

I’ve seen large “star bounces” after funding announcements, blog posts, conference talks. In all of these cases, the bounce occurred as a result of the team creating value for developers.

These are the good stars. People who read about your project and go check it out are much more likely to try it out and become a valued member of your community.

Conclusion

Github stars are really easy to measure. Star-history.com builds pretty charts on how the # stars changes over time. But the *right* way to grow your star count involves a team effort and a lot of work!

The goal should be growing your project/growing your community- and the star is an indication that this process is working. If your goal is to increase visibility of your project, the stars will come as developers discover and use your code. But it will take a sustained team effort – building the product/tools and content to get people excited to try out your project.

For me & the CEO? I was able to express these thoughts (perhaps in a much more scattered way), and work to a goal where stars are *important* but not the North Star metric.

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.