This depends upon many things including your budget and environmental factors such as dust or pollution present, types of trees in the area, foot traffic inside your home or business, and so forth.
At the very least, you should have your windows cleaned annually. This not only keeps your home looking beautiful, but allows your window cleaner to catch potential problems such as leaking skylights, broken window seals, hard water spot development, and other issues. A number of our customers schedule their cleaning at six-month intervals, which is the time frame we suggest, but we understand that one's budget is a consideration.