Open source metrics are what help you figure out what to measure, how to measure it and how to analyze and share it. Metrics help you make informed decisions that will assist your open source thrive.
Importance of measuring.
When data is used correctly and wisely, it can help an open source maintainer to make better decisions. With well-interpreted information, you can be able to understand how project users react to new features and discover where new project users come from. Also, with more information, you can choose whether to support a case or functionality, quantify the popularity of your project, gain insight into how your project is being used and be able to raise funds through grants and sponsorships.
Even though project popularity is important, it isn’t everything. Open source maintainers get into open source for various reasons and if your goal is just to display your work then metrics aren’t that crucial to you. Sharing your code and having fun while at it will do the job.
Make your project discoverable to others.
People need to know about the existence of your project if you want them to use it or contribute back to it. For instance, if your project is hosted on GitHub, it is possible to see how many people have landed on the project and where they came from, by checking your project’s traffic page under “Insights”.
On the project’s page, you can also see the total views of the page (which shows you how many times the project has been viewed), referring sites (which help you to know where your visitors came from online), total unique visitors and the popular content of your project (specifically shows you where visitors go on the project and this is classified by unique visitors and page views).
GitHub stars can also tell you how popular your project is and how many people are noticing your work, however, it doesn’t necessarily reflect on the usage of your project. Additionally, consider working on your project discoverability in other platforms like PageRank, Google, referrals from other websites and open source projects and referrals from your project’s website.
Usage of your project.
After people discover your project on the internet, are they using it? It is crucial to know what people are doing once they’ve discovered your open-source project. If package managers like RubyGems.org and npm are used to distribute your project, it is relatively easy to track your project’s downloads. Note that each package manager uses a distinct definition of “downloads” and downloads don’t necessarily mean usage or installs but they are still important in helping you with comparison.
Platforms like Libraries.io are great for tracking usage statistics across commonly used package managers. Again, if your project is on GitHub, on the “traffic” page, the clone graph can show you how many times your project has been cloned, total clones and unique cloners on a specific day.
If you discover that your project’s usage is low in comparison to the number of people who have discovered it, then there are two potential issues to look into. One of the issues could be that project isn’t converting the audience or the audience attracted isn’t the right one. For high conversion, your project must land on the correct platforms with people who actually need or will benefit from it. Once you discover that your project is being used, figure out what the users are using it for.
User retention and contribution.
Now that people have discovered and are using your project, ask yourself if they are contributing back to it. It is useless to have a popular project (which has many users) that is not supported (inadequate maintainer time to meet demand). You need to have people pitching in. User retention is equally crucial as current contributors will eventually leave therefore, you need to have a steady inflow of new contributors.
Various community metrics need regular tracking and some of them include metrics like the total count of contributors and the number of commits from each contributor. This metric lets you know how many contributors your project has and who’s more or less active in the project. If your project is on GitHub, you can view this information on “Contributors” under “Insights.”
Another metric to keep an eye on is first-time, repeat and casual contributors. This information lets you know if you’re getting new contributors and if these contributors are becoming regulars. Casual contributors are considered those with a low number of commits and without new contributors, your project’s community can become stationary.
Also, consider tracking the type of contributions your project is getting, for instance, typos, bugs, commits or commenting on an issue.
The number of open issues your project gets is also a crucial metric to track. If your project is receiving an increase in the number of open issues that means users care enough about the project and they are interested in it thus they’d like to see an improvement. However, if these numbers are too high, it is advisable to get help with code reviews and issue triaging.
Maintainer competency.
Are you responding to the contributions your community raise? Always ensure your project’s maintainers are competent enough to handle the bulk of contributions received from users. Unresponsive maintainers are a hindrance to successful open source projects because if a user submits a contribution and doesn’t get any feedback, they get discouraged and eventually leave. According to research from Mozilla, responsive maintainers encourage repeat contributions, which is what you want for your project.
Track how much time it takes for you to respond to contributions and note that responding doesn’t always mean that you have to do something. Sometimes a response like “Thanks for your submission, we will review it soon” is enough to make the user feel heard.
Using metrics to understand people.
Lastly, the metrics discussed above can help you learn more about your audience thus building an active and thriving open source project.