You need to put all pushes in the same element. In the way you wrote, not necessarily the last one will be pushed - it can be any of them.
Here is a correct way to do this:
reddit_links_collection.update(
{'_id': id},
{
'$set': {
'title': title,
'url': url
},
'$push': {
'scores': (current_time, score),
'ups': (current_time, ups),
'downs': (current_time, downs)
},
upsert=True
)
By the way, the same way is with $add, and other modificators.