I recently thought I had issues with my speedo sensor. Turned out it was really one of connections for my Healtech gear position indicator that was causing problems. The speedo signal passes through the Healtech gear position indicator before going to the speedometer. Unfortunately I bought a new sensor after testing my speed sensor and thinking it was bad.
My speedo sensor showed a variance of .1 volts to 4.8 volts as the rear wheel was turned SLOWLY. Maybe every 1/4th of a turn the voltage toggled from .1V to 4.8V. Thinking it needed a full swing from 0 volts to 5 volts I bought a new one. Not not necessary.
Check your connections if you have anything in-line with your speedometer. It might be the issue.
If you're interested in a known good speedo sensor with 23K miles on it, let me know. I'm not afraid of sending it your way.
Ken