Here’s a quick mock-up of how this could be set up:
The Game Instance can Add New Highscores, and check existing Highscores:
When the level is over and you need to see whether a new entry is needed:
You do not need to use Timespan, ofc. Use whatever data you’re using now.
I’ll just add that I’d send a struct to the Game Instance and have it check internally whether this entry is worth adding. The player character / controller / currently played level should not really care about this kind of stuff.