I keep them for about a year and when I do taxes each spring, I pull out the "old" ones and dispose (shred or burn) of them.
I keep everything I pay. Phone bills, electric bills, quarterly trash bills, etc. You never know when someone's records will have a "glitch" and they will mischarge or over charge you. Or say they didn't receive the payment. It makes it easier FOR ME, having the peace of mind that I don't have to sort back through old bank statements searching... I just pull out that file (electricity bill for example) and go to that month and ON that statement I have written the check number, date and amount paid. Easy peasy. If I need a copy of the payment---I know in moments exactly which check #. I also find that it is eye opening to scan back through periodically and realize how MUCH each one has gone up over time. And I usually keep the original first time issued bill for any service until that service is discontinued (for example, Direct TV). I know what we were paying 8 years ago for service, and what that service provided. Interesting to look back. Depressing actually. :(