Most of the time I renew for the 2 years. And this way I can keep control on the expenses made for the website. I have not much earned in such context. But it would be worth checking out how it goes for my website. I renew the domains through auto renewal on godaddy. But hosting I renew on 2 year basis.
I would like to point out that domain renewal might not be necessary though. Certain hosting websites offer domain for lifetime, no need to pay more. Well, as long as you are using their hosting service and your site is up I would guess.