Garmin edge 820 distance showing substantially less

I have a garmin edge 820 paired with garmin speed sensor. I have a separate garmin cadence senser  & garmin HRM. 820 firmware version is 12.50. From the last 5-6 months, the distance I ride which it used to show correctly earlier is now showing approx 10% less. I have 2 garmin speed sensors which i reset(by taking the batteries off completely for more than 10-15 min) & paired them but the result was same. I reset my 820 completely (delete data & reset settings) but still the same result. For example if i ride a 50km rides, it shows around 38km. If i do the ride again, distance will be same i.e. 38K so its consistent in wrong readings