Speedometer accuracy... can it really be this bad?

Assuming nothing wrong with speedo. There is a ratio between speedo reading and GPS .

In your second example speedo showed 60, GPS showed 50 ( close enough for example) and you have a 28 tooth gear.

If you put in a 34 tooth gear your speedo should read 49.5 at a GPS reading of 50. A 33 tooth should read 50.9 at a GPS of 50.

What was your old speedo grear count?

By using this method the tire size and rear gear ratio are irrelivent

Speedo reading / GPS reading x current number of teeth = new number of teeth

Rounding up or down gives you slightly over or slightly under GPS speed

Current speedo gear count / new speedo gear count x speedo reading = speedo reading after replacement.

Speedometer Reading 50 MPH
GPS Reading 60 MPH
Current Number of Teeth 28 Teeth
New Number of Teeth Rounded Up 24 Teeth
New Number of Teeth Rounded Down 23 Teeth
New Speed with 24 Teeth 58.33 MPH
New Speed with 23 Teeth 60.87 MPH

I figured I'd have to do something like that I was just surprised the table is so far off and annoyed I need to buy another gear. Previous speedo gear was a 39-tooth (!), splitting the difference I would need around a 33-tooth.