All save data should contain at the very least the build version of the game and the date/time the save was made. You should then always compare them and present the user with the opportunity to update the STeam save if the local save has a later date, otherwise overwrite the local save with the steam save data. Having this information also makes it a lot easier to debug issues later.
Hey, so I know this post is kinda old, but from looking around online, this is the only information I could find pertaining using such a system. Recently, my players have started to have issues. When moving to a new device, such as a Steam Deck or another PC, for some reason the game does not initially detect a Cloud Save on Steam, it's like it just doesn't load fast enough (I didn't have these issues a month ago, so I'm not sure what's going on with Steam there), so because the game doesn't think there's a Cloud Save, it loads a local save instead. But, there is no local save, because this is a new device. The player thus starts over.
The next time the game saves, it manages to save to the Cloud, overwriting the Cloud Save that has all of the players data, and just like that, their data is essentially wiped.
This is the system I'm currently using. It's simple and just does what I explained:
https://pastebin.com/wVv5FzWU
My problems are that I don't know how I would do the approach you're suggesting. This sort of stuff just isn't really available from what I've seen and on the subject of Cloud Saves, there's not a whole lot of posts being made (I can only assume because most people who start working on a game don't make it that far). So, I'm trying to do my research but there's just nothing for me to go on.
Like, for example. You suggest perhaps having the save include a timestamp. How would I include that into the save file?
Then, when it comes time to load Cloud Saves, how would it know to find these files when they're all going to be named differently due to the time stamps?
I don't know how to compare the Cloud Saves, either. Like, I think it'd be perfect if when it came time for the game to save, the game could detect that, oh, your latest Cloud Save actually has way more data, would you prefer to load that instead of saving? That sorta thing.
But, I just can't find any info on this subject. I'm at a total wall. I'd really appreciate any help that you could offer.