Master scoring with linear boost

Product

Nov 20, 2025

Master scoring with linear boost

We’ve just introduced Linear Boost to the embed console. It lets you rank items with a simple, transparent recipe: pick the signals you trust, assign each a weight, and the model blends them into a single score.

Let’s unpack how it works and how to use it.

How it works (in one minute)

Linear Boost combines up to 13 signals across three buckets: interests, social proof/quality, and content type.

1. Interest signals

These estimate how well an item matches a user’s tastes.

  • v2 interest scores use semantic clustering to understand similarity beyond exact keywords.

  • interest_scores_recent_* focus on the last ~36 hours (short‑term behavior).

  • interest_scores_all_* reflect longer‑term patterns.

  • Legacy v1 signals are still available for backwards compatibility.

These scores are already normalized to the 0–1 range, where 0 means “no match” and 1 means “strong match.”

2. Social / quality signals

These capture how “good” or relevant an item is, beyond pure interest:

  • Author affinity focuses on how much a user tends to engage with this author

  • Topical overlap is based on how similar this item’s topic is to things the user likes

  • Trending/popular will capture how quickly the item is gaining attention

These signals are also normalized to 0–1 before weighting.

3. Content‑type flags

These are binary (0/1) toggles that represent the format of the content. For example:

  • cast_image

  • cast_video

  • cast_length (e.g., long-form vs short)

  • mini_app, zora_item, etc.

You can use these to gently nudge certain formats up or down in ranking.

Why “linear” boost?

Because interest and social features are already on a 0–1 scale, increasing a weight has a predictable, linear effect:

  • Double the weight → roughly double that feature’s influence on the final score.

  • Content‑type flags behave like bonuses: if the flag is 1, the weight is added; if it’s 0, it has no effect.

No hidden interactions, no mystery coefficients just a weighted sum.

The maths behind Linear boost

At scoring time, we:

  1. Compute a weighted sum of all selected features.

  2. Normalize (“squash”) that sum back into the 0–1 range.

Core score

raw_score=i∑​(feature(i​)×weight(i)​)

  • All features are expected to be between 0 and 1, except binary flags (0 or 1).

  • Missing features default to 0, so incomplete data won’t blow up your ranking.

To make scores comparable across items, we then divide by the maximum possible raw score given your weights, and clamp to [0, 1]. That final_score is what’s used to rank items.

Configuring it in the ❜embed Console

  1. Go to the embed consoleFeed Builder.

  2. At Step 2: Ranking, choose linear_boost_v0.0.1.

  3. Add features one by one and set a weight from 1–100 for each.

  4. Features you don’t care about can be:

    • Left at weight 0, or

    • Omitted entirely.

This is your custom scoring function: the more you care about a feature, the higher its weight.

A concrete example

Suppose a candidate item has:

  • interest_scores_all_v2 = 0.7

  • interest_scores_recent_v2 = 0.5

  • affinity_score = 0.4

  • topic_scores = 0.6

  • trending_score = 0.3

  • cast_image = 1 (it has an image)

  • cast_length = 0 (short post, no bonus for “long” content)

And you choose these weights:

  • interest_scores_all_v260

  • interest_scores_recent_v240

  • affinity_score35

  • topic_scores20

  • trending_score15

  • cast_image5

  • cast_length0

Now we compute:

raw_score​=0.7×60+0.5×40+0.4×35+0.6×20+0.3×15+1×5=42+20+14+12+4.5+5=97.5​

The maximum possible raw score (if all 0–1 features were 1) with these weights is:

max_possible_raw_score=60+40+35+20+15+5=175

So:

final_score=97.5/175≈0.56

After clamping, 0.56 is the number used to rank this item relative to others.

Why it matters

Linear Boost puts more control directly in the hands of feed creators, so you can shape your users’ experience more precisely.

  • You can build your own scoring function that reflects the features you care about most.

  • You can experiment quickly:

    • Want more fresh content? Increase weights on *_recent_* and trending_score.

    • Want loyal relationships to matter more? Increase affinity_score.

    • Want to lean into images or video? Boost the corresponding content‑type flags.

For advanced builders, this also opens the door to user-level customization:

  • Give power users sliders or toggles (“more longform”, “more new creators”, “more memes”) and map these directly to the Linear Boost weights.

As we add more candidate sources across onchain content, this lets you construct niche, high‑signal feeds tuned to your community.

What’s next

This Linear Boost scoring update is the foundation for more advanced features that give even more control and utility to feed builders. Coming next:

More post‑related features you can use to boost content, such as:

  • Media‑related features (e.g. video duration, orientation like short vertical vs. wide, longer videos).

  • Market‑related features for coins (e.g. volume, market cap, price changes) so hot items get noticed earlier.

  • AI labels like sentiment, categories, and topics so you can boost specific vibes (e.g. “more bullish posts”, “less spammy content”).

ML-based next‑best‑action features

Signals focused on reaction‑type prediction:

  • Likelihood a user will like a post

  • Likelihood they’ll share it

  • Likelihood they’ll comment
    You’ll be able to boost these differently depending on what matters most to your feed.

“Auto‑ML mode”
In this mode, the weights you choose for Linear Boost act as an objective function for a reinforcement learning algorithm. The system will then:

  • Optimize for total reward defined by your weights, and

  • Continuously adjust underlying models to better match the behavior you care about.

Tell us what you think

We’d love feedback on how you’re using Linear Boost, what’s missing, and what you’d like to see next. Try in the console now.

👉 Reach out anytime at [email protected].

© 2024 ZKAI Labs. All rights reserved.

© 2024 ZKAI Labs. All rights reserved.

© 2024 ZKAI Labs. All rights reserved.