I do 50 or 60% water changes as I have big tanks and use a hose; once I've got all the bits out, I might as well do a bigger change rather than a smaller one. I try for weekly, but it's often more like ten days or so.
Weekly water changes are best. If you leave them too long you get a build up up of, not just nitrate, but other substances we can't/don't test for; a prime example being hormones released by the fish that can stunt their growth. Fish kept in tanks with large, regular water changes grow bigger and faster than ones with infrequent ones.
There's also the fact that plants and, to a lesser extent fish, use up trace minerals in the water, and the only way to replenish these is with water changes.
Now you know the frequency that's best, you can look at the amount. 25 or 30% is fine for most 'averagely' stocked and planted tanks. If you have overstocked tanks, or large messy fish, like goldies or oscars, you want to be doing a higher percentage (60 or even 75 or 80%), and if you have lightly stocked tanks with lots of plants (and by that I mean at least three quarters of the base of the tank covered in plants; any less and there won't be enough plants to make a significant difference) you can stick to the lower amounts.
I think all tanks should get a minimum of 30% weekly; that keeps the water fresh and means that your tank and tap water stay fairly near in values. Then, if you need to do a large, emergency water change for some reason, you shouldn't have to worry about shocking your fish with wildy differing hardness/pH levels.