Here is what I know: Below 50k mileage, 5w30 is best. Above 50k till 100k, 10w40 is recommended. It's necessary because of engine's wear n tear. Beyond 100k, you need to see if your car is doing OK at 10w40 (mileage, engine noise, heat up, etc). If all is good, stick to 10w40. If something is not OK, switch to 20w50 and look for improvement.
For now, 20w50 is not gonna destroy your car. Just see if it gives u acceptable results. If mileage comes down, go back to 10w40.
Normally, 20w50 is for higher engine powers, like bigger cc cars. 660cc should be OK between 5w30 and 10w40, unless there is some special need.