Skip to content

Commit 4c5cd98

Browse files
committed
docs: add health-score
Signed-off-by: Joana Maia <jmaia@contractor.linuxfoundation.org>
1 parent 36ff322 commit 4c5cd98

File tree

1 file changed

+158
-0
lines changed
  • frontend/docs/metrics/health-score

1 file changed

+158
-0
lines changed
Lines changed: 158 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,158 @@
1+
# Health Score Explained
2+
3+
The Health Score in LFX Insights is **a single, unified metric (0–100) that reflects the overall health of an open source project**. It's designed to give developers a quick, high-confidence signal about whether a project is actively maintained, widely used, secure, and well-governed.
4+
5+
::: warning ⚠️ Please note
6+
While the Health Score provides a useful, data-driven snapshot of a project's overall state, no single score can capture all the nuance of an open source project. Different projects serve different goals—some are mature and stable, others are experimental or niche by design. This scoring model is meant to highlight potential signals and risks, not to make final judgments. Always consider context and use your own judgment alongside the score.
7+
:::
8+
9+
## Insights Health Score Formula
10+
11+
The Insights Health Score is calculated as the sum of four equally weighted categories:
12+
13+
**Health Score (0-100 pts) = Contributors (0–25 pts) + Popularity (0–25 pts) + Development (0–25 pts) + Security & Best Practices (0–25 pts)**
14+
15+
The aggregated score is evaluated as follows:
16+
17+
- **> 90 pts**: Excellent
18+
- **76 - 90 pts**: Healthy
19+
- **51 - 75 pts**: Stable
20+
- **25 - 50 pts**: Unsteady
21+
- **< 25 pts**: Critical
22+
23+
## Scoring Criteria
24+
25+
Each of the following metrics is scored on a 0–5 point scale, and grouped into four categories: Contributors, Popularity, Development, and Security & Best Practices. Each category can reach up to 25 points.
26+
27+
### 1. Contributors (0–25 pts)
28+
29+
#### 1.1 Contributor Dependency
30+
- **0 pts:** 1 contributor accounts for 51%+ of contributions
31+
- **1 pt:** 2 contributors account for 51%+ of contributions
32+
- **2 pts:** 3–4 contributors account for 51%+ of contributions
33+
- **3 pts:** 5–6 contributors account for 51%+ of contributions
34+
- **4 pts:** 7–9 contributors account for 51%+ of contributions
35+
- **5 pts:** 10 or more contributors account for 51%+ of contributions
36+
37+
#### 1.2 Organization Dependency
38+
- **0 pts:** 1 organization accounts for 51%+ of contributions
39+
- **1 pt:** 2 organizations account for 51%+ of contributions
40+
- **2 pts:** 3 organizations account for 51%+ of contributions
41+
- **3 pts:** 4–5 organizations account for 51%+ of contributions
42+
- **4 pts:** 6–7 organizations account for 51%+ of contributions
43+
- **5 pts:** 8 or more organizations account for 51%+ of contributions
44+
45+
#### 1.3 Quarterly Active Contributors
46+
- **0 pts:** 0–1 active contributors in the last quarter
47+
- **1 pt:** 2–3 active contributors in the last quarter
48+
- **2 pts:** 4–6 active contributors in the last quarter
49+
- **3 pts:** 7–10 active contributors in the last quarter
50+
- **4 pts:** 11–20 active contributors in the last quarter
51+
- **5 pts:** 21 or more active contributors in the last quarter
52+
53+
#### 1.4 Quarterly Contributor Retention Rate
54+
- **0 pts:** Less than 2% of contributors are contributing quarter over quarter
55+
- **1 pt:** 3–5% of contributors are contributing quarter over quarter
56+
- **2 pts:** 6–9% of contributors are contributing quarter over quarter
57+
- **3 pts:** 10–14% of contributors are contributing quarter over quarter
58+
- **4 pts:** 15–19% of contributors are contributing quarter over quarter
59+
- **5 pts:** 20% or more of contributors are contributing quarter over quarter
60+
61+
### 2. Popularity (0–25 pts)
62+
63+
::: warning ⚠️ If Insights has only GitHub data available for a project, its popularity score will be based solely on GitHub stars and forks. In this case, each of these two metrics will contribute up to 12.5 points, for a combined total of 25 points.
64+
:::
65+
66+
#### 2.1 GitHub Stars
67+
- **0 pts:** 0–9 GitHub stars
68+
- **1 pt:** 10–49 GitHub stars
69+
- **2 pts:** 50–199 GitHub stars
70+
- **3 pts:** 200–499 GitHub stars
71+
- **4 pts:** 500–999 GitHub stars
72+
- **5 pts:** 1,000+ GitHub stars
73+
74+
#### 2.2 GitHub Forks
75+
- **0 pts:** 0–4 forks
76+
- **1 pt:** 5–9 forks
77+
- **2 pts:** 10–19 forks
78+
- **3 pts:** 20–39 forks
79+
- **4 pts:** 40–79 forks
80+
- **5 pts:** 80+ forks
81+
82+
#### 2.3 Social Mentions per Month
83+
- **0 pts:** 0–4 social mentions
84+
- **1 pt:** 5–9 social mentions
85+
- **2 pts:** 10–24 social mentions
86+
- **3 pts:** 25–49 social mentions
87+
- **4 pts:** 50–99 social mentions
88+
- **5 pts:** 100+ social mentions
89+
90+
#### 2.4 GitHub Mentions
91+
- **0 pts:** 0–9 GitHub mentions
92+
- **1 pt:** 10–29 GitHub mentions
93+
- **2 pts:** 30–99 GitHub mentions
94+
- **3 pts:** 100–249 GitHub mentions
95+
- **4 pts:** 250–499 GitHub mentions
96+
- **5 pts:** 500+ GitHub mentions
97+
98+
#### 2.5 Google Search Queries per Month
99+
- **0 pts:** <10 queries
100+
- **1 pt:** 10–49 queries
101+
- **2 pts:** 50–199 queries
102+
- **3 pts:** 200–499 queries
103+
- **4 pts:** 500–999 queries
104+
- **5 pts:** 1,000+ queries
105+
106+
107+
### 3. Development (0-25 pts)
108+
109+
#### 3.1 New Pull Requests per Month
110+
- **0 pts:** 0–1 new pull requests
111+
- **1 pt:** 2–3 new pull requests
112+
- **2 pts:** 4–7 new pull requests
113+
- **3 pts:** 8–15 new pull requests
114+
- **4 pts:** 16–30 new pull requests
115+
- **5 pts:** 31+ new pull requests
116+
117+
#### 3.2 Issue Resolution Time
118+
- **0 pts:** Average resolution time > 60 days
119+
- **1 pt:** 51–60 days
120+
- **2 pts:** 36–50 days
121+
- **3 pts:** 22–35 days
122+
- **4 pts:** 8–21 days
123+
- **5 pts:** < 8 days
124+
125+
#### 3.3 Merge Lead Time
126+
- **0 pts:** > 30 days
127+
- **1 pt:** 21–30 days
128+
- **2 pts:** 15–20 days
129+
- **3 pts:** 7–14 days
130+
- **4 pts:** 3–6 days
131+
- **5 pts:** < 3 days
132+
133+
#### 3.4 Active Days (Last 30 Days)
134+
- **0 pts:** Active on 0–5 days
135+
- **1 pt:** Active on 6–10 days
136+
- **2 pts:** Active on 11–15 days
137+
- **3 pts:** Active on 16–20 days
138+
- **4 pts:** Active on 21–26 days
139+
- **5 pts:** Active on 27–30 days
140+
141+
#### 3.5 Contributions Outside Work Hours
142+
- **0 pts:** 75%+ outside work hours
143+
- **1 pt:** 50–74% outside work hours
144+
- **2 pts:** 40–49% outside work hours
145+
- **3 pts:** 30–39% outside work hours
146+
- **4 pts:** 20–29% outside work hours
147+
- **5 pts:** <20% outside work hours
148+
149+
### 4. Security & Best Practices (0-25 pts)
150+
151+
We run a set of control assessments for all available repositories of a project, powered by the [Open Source Project Security Baseline](https://baseline.openssf.org) by OpenSSF.
152+
153+
The Security & Best Practices dimension is evaluated with an equally weighted score from all applicable control assessments. We only consider control assessments that worked without privileged access to the project's codebase and ignore those that are not applicable (e.g., controls that cannot be evaluated due to repository limitations or project structure).
154+
155+
The formula used is:
156+
**Security & Best Practices Score = Passed Control Assessments / (Passed + Failed Control Assessments)**
157+
158+
This percentage is then converted to a 0-25 point scale for the final Health Score.

0 commit comments

Comments
 (0)