Speedo problems

hey guys,my speedometer has been jumping around a lot so I pulled the cluster and removed it.The back was pretty dirty so I cleaned it up and used a light coat of oil on the moving parts.When I put it back the gauge still bounces and it's about 20-30 mph off,also when the car is completely stopped the gauge sits at 10 mph.Is there a way to fix this or do I need to try to find another speedo gauge?Thanks