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

# Social Scoring

> Engagement quality compared to a KOL baseline.

<img src="https://mintcdn.com/openkol/bkuYaAyiMZotx2On/images/social-score.png?fit=max&auto=format&n=bkuYaAyiMZotx2On&q=85&s=0b83f6fe712b26843a8eee031d48ce24" alt="Social Scoring" width="1500" height="750" data-path="images/social-score.png" />

Social scoring answers one question:

**Did this call attract credible attention — relative to what this KOL normally gets?**

It’s designed to reduce two common traps:

* “Big account = high score” (not necessarily true)
* “Botted / low-effort engagement” inflating metrics

***

## Inputs

Social scoring can use:

* Views, likes, reposts, replies, bookmarks
* Follower count (for normalization)
* Comment text + unique commenter identities (for quality checks)

***

## Baseline normalization (why big accounts don’t auto-win)

Raw engagement numbers are meaningless without context.

OpenKol builds a rolling baseline for each KOL from their recent activity (where available), using ratios like:

* likes per view
* reposts per view
* replies per view
* bookmarks per view

A new call is scored by comparing its ratios to that KOL’s baseline.

**Example idea (conceptual):**

* If a KOL usually gets 1.0% reposts per view, a 3.0% repost rate is meaningful.
* If a KOL already averages 3.0%, then the same number is “normal.”

This is how OpenKol rewards *unusual, credible attention* — not just audience size.

***

## Comment quality (how we reduce junk)

Replies can be the noisiest metric, so OpenKol treats them carefully.

Typical protections include:

* Deduplicating repeated / spammy text patterns
* Weighting by **unique commenters** (many different people > a few loud accounts)
* Reducing impact of very low-effort replies

The goal is not to “judge sentiment.”
It’s to distinguish real engagement from low-value activity.

***

## Score composition (0–100)

The social score is a weighted sum of components (capped at 100):

* **Views:** up to 20
* **Likes:** up to 20
* **Reposts:** up to 15
* **Replies:** up to 10
* **Bookmarks:** up to 15
* **Comment quality:** up to 20

Each component is computed by:

1. converting the raw metric into a ratio (often per view),
2. comparing it to the KOL baseline,
3. clamping to a safe range so outliers don’t break the score, then
4. weighting into points.

***

## How to interpret Social score

* **High Social** doesn’t guarantee the token performed — it means the call drew strong, credible attention.
* **Low Social** doesn’t mean the call was “bad” — it may indicate a quiet/early post that still printed (check Chart score).

Best practice:

* Use Social score to detect *attention quality*
* Use Chart score to confirm *market outcome*

***

## Why this matters

Apers lose money when they confuse “loud” with “good.”

Baseline normalization and comment-quality checks help:

* prevent large accounts from overwhelming the score
* reduce obvious low-value engagement
* surface calls that genuinely broke through compared to a KOL’s normal reach
