In most cases you can get your window to sparkle with a simple solution of dish soap and hose water.

The soap serves two functions in window cleaning. The most obvious is that it helps loosen dirt and grime and cut grease on the glass. The second and less obvious is that it works as a lubricant for the squeegee. Without this, cleaning windows with a squeegee is near impossible because it will jump and pop it way across the glass rather than sliding.
The balance that must be struck is having plenty of soap to lubricate your squeegee but not so much that soap residue or streaks are left on the window.
Some windows are naturally slipperier than others allowing you to use less soap while other windows require as much as double or triple the usual amount just to get your squeegee to slide.

Other than regular dish soap, there are plenty of detergents specifically formulated for window cleaning in the form of liquids, powders and tablets that do essentially the same job dish soap does. Most are good at removing dirt and some provide a better “slide” to the squeegee but the price per cleaning is much higher. It just comes down to personal preference as to whether to use these specialized cleaners or just a good eco friendly dishsoap.