All posts
technicalvolume

How Volume works

Overtone TeamMarch 25, 20261 min read

Volume is how Overtone decides what's worth your attention. Every story cluster gets a score. Higher score, higher rank. Here's the math.

The formula

Every story cluster in your Volume view is scored like this:

base_score = distinct_feeds_linking × type_weight
semantic_bonus = similar_entries_without_shared_URL × 0.3
member_signal = community_upvotes × 0.2
recency_decay = exp(-hours_since_newest / 24)
volume = (base_score + semantic_bonus + member_signal) × recency_decay

Breaking it down

Base score

How many distinct feeds link to or cover the same story? Signal feeds contribute a weight of 1.0, Noise feeds contribute 0.5. A story covered by 3 Signal feeds and 10 Noise feeds gets a base score of 3 + 5 = 8.

Semantic bonus

Using vector embeddings, we find articles that are semantically similar (cosine similarity > 0.85) even when they don't share URLs. Each additional semantically linked entry adds 0.3 to the score. This catches stories that URL matching misses entirely.

Recency decay

Volume is about what's happening now. We apply exponential decay based on how old the newest entry in a cluster is. A story from an hour ago scores almost full marks. One from yesterday is significantly dampened.

Clustering

Stories are grouped into clusters two ways:

  1. Exact URL match: normalized URLs compared directly
  2. Semantic similarity: article embeddings compared in our vector database, entries with cosine similarity above 0.85 merged into the same cluster

The result is a ranked list of topics your sources are covering, ordered by actual coverage density rather than publication time.

O
Overtone Team
Creator of Overtone
Building tools for information-overloaded readers.

Want Volume to find the signal in your feeds?

Try Overtone free