If you’re fastidious about keeping your windows tidy, Stay is for you. Stay ensures that your windows are always where you want them to be, even as you connect and disconnect displays.
Move your windows to where you want them, then have Stay store them. Once stored, windows can be returned to their stored state at any time by having Stay restore them.
Stay can store a set of windows for every combination of displays that you use with your computer.
For example, if you have a laptop that is sometimes connected to an external monitor, you can store two sets of windows in Stay; one with the external monitor connected and one without. This done, you’ll be able to ensure that your windows are always where you want them to be by having Stay restore windows whenever you connect or disconnect the external monitor.
Stay can even be configured to automatically restore windows as displays are connected and disconnected.