The RG Score is a composite risk score between 0 and 100 assigned to each user for each of four time windows. It gives operators a single, easy-to-read number that summarizes multiple behavioral signals, making it straightforward to sort and prioritize users in the queue.
This page explains what the score measures, how it is calculated, and what the different score ranges mean in practice.
For each time window (7d, 30d, 180d, 365d), the RG Score is the sum of five components:
$$\text{RG Score} = E + R + P + C + S$$
| Component | Maximum points | What it measures |
|---|---|---|
| E — Evidence | 40 | How many messages were flagged and how confidently |
| R — Ratio | 20 | What proportion of the user's messages were flagged |
| P — Persistence | 20 | How many separate days had at least one flagged message |
| C — Change | 15 | Whether flagged activity has increased compared to the previous window |
| S — Same-day cluster bonus | 5 | Whether a large number of flagged messages appeared on a single day |
The maximum possible score is 100.
A user who sends a very high volume of messages will naturally accumulate more flagged messages than a low-volume user, even if their ratio of flagged to total messages is similar. The five-component model corrects for this by treating volume, ratio, persistence, trend, and acute daily spikes as separate signals. An individual user's score reflects the full picture of their behavior rather than just raw flagged count.
Flagged message — A message with a model probability score of 0.60 or above. The probability score represents the model's confidence that the message belongs to the at-risk class.
Average flagged probability — The mean probability score across all flagged messages in the window. Used only within the Evidence component as a small confidence bonus.
Flagged ratio — Flagged messages divided by total messages in the window.
Distinct flagged days — The number of separate calendar days in the window that contain at least one flagged message.
Change — The difference in flagged message count between the current window and the previous equivalent window (e.g., current 7d versus the 7d before that). If no prior window data exists for a user, Change points are set to 0.
Same-day cluster — The maximum number of flagged messages sent on any single day within the window.
The 7-day score is the primary operational score. It drives triage queue sorting and alert triggering. Use it for daily prioritization and urgent outreach decisions.
Flagged count points (0–30)
| Flagged messages (7d) | Points |
|---|---|
| 0 | 0 |
| 1 | 5 |
| 2 | 10 |
| 3 | 15 |
| 4–5 | 20 |
| 6–7 | 25 |
| 8 or more | 30 |
Confidence bonus (0–10)
| Average flagged probability | Bonus |
|---|---|
| Below 0.65 | 0 |
| 0.65 to below 0.75 | 4 |
| 0.75 to below 0.85 | 7 |
| 0.85 or above | 10 |
Minimum of 3 flagged messages required; otherwise Ratio points are 0.
| Flagged ratio (7d) | Points |
|---|---|
| Below 5% | 0 |
| 5% to below 10% | 6 |
| 10% to below 20% | 13 |
| 20% or above | 20 |
| Distinct flagged days | Points |
|---|---|
| 0 | 0 |
| 1 day, daily max below 3 | 0 |
| 1 day, daily max 3 or above | 3 |
| 2 days | 6 |
| 3 days | 12 |
| 4 days | 16 |
| 5 or more days | 20 |
| Increase in flagged count vs previous 7d | Points |
|---|---|
| No increase or decrease | 0 |
| Increase of 1–2 | 5 |
| Increase of 3–4 | 10 |
| Increase of 5 or more | 15 |
| Max flagged on a single day | Points |
|---|---|
| 0–2 | 0 |
| 3–4 | 3 |
| 5 or more | 5 |
The 30-day score is the secondary operational score. Use it to identify users with sustained patterns over a longer period and to prioritize follow-up outreach when the 7-day score is borderline.
Flagged count points (0–30)
| Flagged messages (30d) | Points |
|---|---|
| 0 | 0 |
| 1–2 | 4 |
| 3–5 | 10 |
| 6–8 | 17 |
| 9–11 | 22 |
| 12–15 | 27 |
| 16 or more | 30 |
Confidence bonus is the same table as 7d.
Minimum of 5 flagged messages required; otherwise Ratio points are 0.
| Flagged ratio (30d) | Points |
|---|---|
| Below 3% | 0 |
| 3% to below 8% | 6 |
| 8% to below 15% | 13 |
| 15% or above | 20 |
| Distinct flagged days (30d) | Points |
|---|---|
| 1 day | 0 |
| 2–3 days | 6 |
| 4–6 days | 12 |
| 7–10 days | 16 |
| 11 or more days | 20 |
| Increase in flagged count vs previous 30d | Points |
|---|---|
| No increase or decrease | 0 |
| Increase of 1–3 | 5 |
| Increase of 4–7 | 10 |
| Increase of 8 or more | 15 |
Same table as 7d.
The 180-day score provides historical context. Use it during a user review to understand whether a current spike is part of a longer pattern or an isolated event. It is not used for alerting.
Flagged count points (0–30)
| Flagged messages (180d) | Points |
|---|---|
| 0 | 0 |
| 1–3 | 4 |
| 4–7 | 8 |
| 8–14 | 14 |
| 15–24 | 19 |
| 25–39 | 25 |
| 40 or more | 30 |
Minimum of 10 flagged messages required for Ratio points; otherwise Ratio points are 0.
| Flagged ratio (180d) | Points |
|---|---|
| Below 2% | 0 |
| 2% to below 5% | 6 |
| 5% to below 10% | 13 |
| 10% or above | 20 |
| Distinct flagged days (180d) | Points |
|---|---|
| 1–2 days | 0 |
| 3–5 days | 6 |
| 6–12 days | 12 |
| 13–24 days | 16 |
| 25 or more days | 20 |
| Increase vs previous 180d | Points |
|---|---|
| No increase or decrease | 0 |
| Increase of 1–5 | 5 |
| Increase of 6–14 | 10 |
| Increase of 15 or more | 15 |
| Max flagged on a single day | Points |
|---|---|
| 0–3 | 0 |
| 4–5 | 3 |
| 6 or more | 5 |
The 365-day score provides long-term tracking and historical risk context. Use it for compliance reporting and to understand a user's history across a full year. It is not used for alerting.
Flagged count points (0–30)
| Flagged messages (365d) | Points |
|---|---|
| 0 | 0 |
| 1–5 | 4 |
| 6–12 | 8 |
| 13–24 | 14 |
| 25–49 | 19 |
| 50–79 | 25 |
| 80 or more | 30 |
Minimum of 15 flagged messages required for Ratio points; otherwise Ratio points are 0.
| Flagged ratio (365d) | Points |
|---|---|
| Below 1% | 0 |
| 1% to below 3% | 6 |
| 3% to below 7% | 13 |
| 7% or above | 20 |
| Distinct flagged days (365d) | Points |
|---|---|
| 1–3 days | 0 |
| 4–8 days | 6 |
| 9–20 days | 12 |
| 21–40 days | 16 |
| 41 or more days | 20 |
| Increase vs previous 365d | Points |
|---|---|
| No increase or decrease | 0 |
| Increase of 1–8 | 5 |
| Increase of 9–24 | 10 |
| Increase of 25 or more | 15 |
Same table as 180d.
The numerical score maps to a descriptive label. Labels differ between the operational windows (7d and 30d) and the historical windows (180d and 365d).
| Score | Label |
|---|---|
| 0 | No observed concern |
| 1–24 | Low priority |
| 25–49 | Review recommended |
| 50–74 | Outreach candidate |
| 75–100 | High priority |
| Score | Label |
|---|---|
| 0 | No observed history |
| 1–24 | Occasional incident |
| 25–49 | Moderate history |
| 50–74 | Elevated incident rate |
| 75–100 | Significant history |
The 180-day and 365-day labels are provided as background context for moderator reviews, not as urgent action triggers. Decisions to act on a user should primarily be based on the 7-day and 30-day scores.
| Window | Update frequency |
|---|---|
| Flagged message history | Near real-time |
| 7-day RG Score | Every 15 minutes |
| 30-day RG Score | Every 60 minutes |
| 180-day RG Score | Once daily |
| 365-day RG Score | Once daily |
All windows use a rolling trailing calendar-day window in the operator's local timezone. For example, the 7-day window covers today plus the previous 6 calendar days.
It is expected and by design that a user can trigger an alert while still having a low or moderate RG Score. Alerts are intentionally more sensitive than the score — they react to a single strong signal within the 7-day window — whereas the score reflects a balanced combination of all five components across the full window. Treat an alert as "look at this user now" and the score as an overall pattern of behavior.