How Long Will I Bonds Earn Interest?

I Bonds earn interest for up to 30 years.