Catch Trending Tweets Before They Peak: The 6-Factor Hot Score
The best time to reply to a viral tweet is 15 minutes before anyone realized it was going viral. Here's the exact scoring model our browser extension uses to find those windows.
There's a narrow window on every viral tweet where a good reply compounds. Show up too early and there isn't enough engagement to ride; show up too late and your reply is buried under 800 others. The gap is roughly 30 minutes to 2 hours after the post was made — and if you want to catch it reliably, you need a scoring model, not just a gut feel.
This post walks through the exact formula Twitter365's Hot tab uses to rank posts on your timeline by "about to pop" potential.
Why most trending detection is wrong
The obvious metric is "most likes in the last hour." It's also the most useless one. Big accounts accumulate likes passively from their follower base without any actual virality — you'd just get a ranked list of mega-accounts, which is what the default Twitter algorithm already shows you.
A useful hot score has to normalize for follower size, weight recency heavily, and actively penalize posts that are already saturated with replies (because your reply won't be seen anyway).
The six factors we score
Our score is a weighted sum of six signals:
- Propagation speed = (views / age in hours) / (followers / 10,000). Normalized so a 1k-follower account and a 1M-follower account compete on the same axis.
- Engagement rate = (likes + replies + retweets) / views. 5% maxes the score.
- Discussion depth = replies / (likes + 1). High ratio means people are arguing, not just passively liking — topical heat.
- Quote depth = quotes / (retweets + 1). Quote-retweets indicate secondary spread potential.
- Reply opportunity = 1 - min(replies / 50, 1). Fewer replies so far = bigger chance your voice is seen.
- Time value = 1 / log2(age in minutes + 2). Newer is better, but sub-linear.
The formula
All six factors are squashed to 0–1 and combined:
- burst_coefficient = 1.3 if engagement_rate > 3%, else 1.0 — amplifies genuine breakout signals
- Posts under 10 minutes old are skipped entirely (data is too noisy)
- Posts over 8 hours old are skipped (the window is closed)
hot_score = (propagation * 0.25
+ engagement_rate * 0.20
+ discussion_depth * 0.15
+ reply_opportunity * 0.15
+ time_value * 0.15
+ quote_depth * 0.10) * burst_coefficientHow the tiers shake out
We bucket scores into four color-coded tiers so you can decide at a glance where to spend your attention:
- 70+ Reply now (red) — rare, high-leverage, act immediately
- 50–70 Worth watching (orange) — open the replies, see if you have something real to add
- 30–50 Observing (blue) — keep on radar, not worth the effort yet
- <30 Hidden — below the noise floor
A workflow that actually works
The Hot tab inside the extension fetches the Home timeline, auto-paginates up to three pages, scores everything, and shows you the sorted list with the per-factor breakdown. A typical run finds 3–6 posts worth your time out of 60+ scanned.
Open the red ones, read them carefully, reply with something only you could have written. That's it. You just bought yourself 10x the visibility of replying to the same post two hours later — without any automation doing the actual replying.
What we don't do
- No auto-reply to hot posts — the scoring finds the window, the reply is your job
- No public leaderboards — the list is private to you, avoids herd behavior
- No scraping of trending hashtags — those are already saturated by the time you see them