Song / Release Index
What is hot right now. Recency-weighted so a comeback can spike and naturally settle over roughly two to three weeks.
The topkpop Index
One 0–100 score, computed from normalized public signals. No LLM and no editorial opinion: just a published weighting, recency decay, and a reproducible ranking pipeline.
The v1 Index currently runs on YouTube, Apple Music, Circle Chart, Billboard Global 200, music-show wins, and touring activity. Spotify remains planned; missing signals are automatically dropped and the remaining weights re-normalized.
What is hot right now. Recency-weighted so a comeback can spike and naturally settle over roughly two to three weeks.
Sustained standing with less volatility, combining the artist's best representative song with audience, video, wins, and touring signals.
| Signal | Weight | Source | Status |
|---|---|---|---|
| YouTube MV view velocity | 25% | YouTube Data API | Live |
| Apple chart position | 20% | Apple Music RSS | Live |
| Spotify popularity | 20% | Spotify Web API | Planned |
| Korean chart position | 20% | Circle Chart Digital Chart | Live |
| Billboard Global 200 position | 10% | Billboard Global 200 | Live |
| Music-show momentum | 5% | Wikipedia (music-show winners) | Live |
| Signal | Weight | Source | Status |
|---|---|---|---|
| Best representative song's Index | 30% | Computed | Live |
| YouTube velocity | 25% | YouTube Data API | Live |
| Apple chart position | 15% | Apple Music RSS | Live |
| Spotify popularity | 15% | Spotify Web API | Planned |
| Music-show momentum | 10% | Wikipedia (music-show winners) | Live |
| Touring activity | 5% | Ticketmaster Discovery API | Live |
Take the latest successful snapshot for each signal from D1.
Convert each raw signal to 0–100 across the tracked cohort using percentile rank. Missing or stale signals are dropped and remaining weights are re-normalized; coverage is recorded.
Apply an exponential half-life of roughly seven days to velocity and event components such as YouTube velocity and music-show momentum.
Combine normalized components with the published weights to produce a 0–100 score per song and artist.
Compare with the prior daily snapshot and the snapshot from seven days ago to calculate up, down, new, or steady movement.
Write a ranked, timestamped snapshot to D1. Live rankings read the latest; the weekly topkpop 100 reads the Monday 00:00 KST freeze.
Weights live in a single configuration file so they can be tuned without changing the engine. “Global-fan balanced” is the locked v1 default. Before launch, a sanity backtest against a known week must confirm that the output matches recognizable fan expectations and does not contain obvious data artifacts.