> ## Documentation Index
> Fetch the complete documentation index at: https://docs.campground.fyi/llms.txt
> Use this file to discover all available pages before exploring further.

# Measure member engagement with scoring

> Define weighted engagement scores for profiles and teams, surface them in the contacts table, and use them to filter and sort your community.

Engagement scoring gives you a single number that represents how active or complete a member's profile is, based on the factors that matter most to your organization. You define a score by choosing a set of factors — such as "Active in the last 30 days" or "Tasks completed" — assigning a weight to each one, and Campground calculates a 0–100 score for every member automatically. You can then sort and filter your contacts table by score to identify your most engaged members or find those who need outreach.

<Note>
  Engagement scores are custom to each Campground organization. There is no
  default score — every score, its factors, and their weights are defined for
  your organization specifically, so what counts as "engaged" reflects your
  priorities and not a one-size-fits-all formula.
</Note>

## How scores are calculated

A score is a weighted average of its factors. Each factor produces a value between 0 and 100, and the final score is the sum of each factor's value multiplied by its weight, divided by the total weight.

**Example score: "Engagement Score"**

| Factor           | Type    | Weight | Value           |
| ---------------- | ------- | ------ | --------------- |
| Profile complete | Boolean | 20     | 100 (true)      |
| Login count      | Number  | 30     | 75 (normalized) |
| Tasks completed  | Number  | 50     | 60 (normalized) |

```text theme={null}
Score = (20 × 100 + 30 × 75 + 50 × 60) / (20 + 30 + 50)
      = (2000 + 2250 + 3000) / 100
      = 72.5
```

Weights do not need to sum to 100 — the formula normalizes them automatically. A factor with a higher weight has a larger influence on the final score.

## Factor types

| Type        | How it works                                                                                                                                                                              | Example                                                           |
| ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| **Boolean** | The factor is either true or false. True scores 100, false scores 0.                                                                                                                      | "Active last 30 days", "Email verified", "Profile photo uploaded" |
| **Number**  | The factor produces a numeric value that is normalized against the highest value in your member population. A member with the maximum value scores 100; others are scored proportionally. | "Tasks completed", "Event attendance", "Login count"              |

Missing or empty factor values default to 0 and do not cause errors.

## Scores in the contacts table

When a score is active, it appears as a column in the **Contacts** table. Each row shows the member's normalized score (0–100) alongside their profile details.

* **Sort by score** — click the score column header to rank members from highest to lowest (or lowest to highest).
* **Filter by score** — use the filter panel to show only members above or below a score threshold. For example, filter to members with a score below 40 to identify low-engagement contacts for a re-engagement campaign.

Each member's score also includes a **percentile rank** — for example, a score in the 85th percentile means the member scores higher than 85% of your community.

## Importing score data in bulk

You can set score factor values for multiple members at once by importing a CSV file. This is useful when you have engagement data from an external system — for example, event attendance records or task completion data from another tool.

To import score data, go to **Contacts**, click **Import**, and map your CSV columns to the relevant score factors. Campground updates each member's factor values and recalculates scores after the import completes.

<Note>
  Scores do not update in real time. After importing data or making changes that
  affect score factors, trigger a recalculation from the scoring settings panel
  to refresh all member scores.
</Note>

## Score configuration

Score setup — including creating new scores, adding factors, and setting weights — is managed by your Campground admin. If you need a new score defined or existing factors adjusted, contact your organization's admin or reach out to Campground support.
