Roblox does not publish a public API for per-game concurrent player counts, so anything you see is a sample. I have been collecting that sample on and off for a few months and it is more useful than it sounds - trends survive the noise even when absolute numbers do not.

What a sample can tell you

Ranking stability is the most reliable signal. A game that holds a top-50 slot across dozens of samples is genuinely popular; one that spikes once and vanishes is usually a code drop or an event.

Codes decay fast

Working codes have a half-life measured in weeks. A list that is not touched for two months is mostly dead codes. Keeping the expiry date next to each code matters more than having a long list.

Where I keep it

I publish the sampled numbers and the maintained code lists at PopularGames - it is a small side project, updated as codes are released or expire.

Caveats

Sampling every two hours means you miss short spikes entirely. Treat the numbers as a trend indicator, not a leaderboard.