Why You Should Avoid Forcing New Windows

Target=”_blank” tells a user’s browser to “open this link in a new window” (or a tab, if you’ve configured your browser to treat windows as tabs). Many people don’t like this behavior, and many usability “experts” have argued against it’s use. The W3C has even deprecated it in XHTML.

The most common arguement for using the target attribute is that it makes it easier to come back to the site if you visit a link. (Really, the argument translates to something like “we don’t want you to leave our website.”) There are a couple flaws with this reasoning though.

  1. “Advanced” users, like myself, don’t like the lack of control. If we want to easily go back to your site, we’ll open the link in a new tab, and switch back to your site when we want to go back. Otherwise, we’ll come back some other time. Forcing a new window open is just irritating.
  2. A more average user could easily be confused. The window would open and cover the pre-existing window, hiding it from site. As the average, non-tab-aware user generally relies on the Back button, they will be confused or annoyed that it doesn’t work, as the new window wouldn’t have the same session history as the original window.

There’s no keeping people on your website, and if we want to come back we will, using our own means.

Now, I’m not saying that are never any cases where a new window should be used. Some games or web apps, for example, would work better in their own, custom-sized window, or be more convenient for the user (so they could have the page visible onscreeen while working in another application, for example). Don’t go opening all your external links in new windows though. Your users won’t thank you for it.

Further Reading

Smashing Magazine has also put together a post on this topic – Should Links Open In New Windows?

  • http://stevenclark.com.au Steven Clark

    The only time I would recommend opening a new window would be for PDF (but maybe you’re right about games, I’d have to think that one over). If a new window is opened its always good to notify the user it’s going ot happen and provide them all the chrome.But, other than PDF, it’s a bad user experience and has been on the 10 worst web design mistake lists over and over for the last 9 years. Who want’s to do sucky work right? But target=_blank is so easy people don’t want to let them go.Roger Johansson has an unobtrusive javascript (and there are others no doubt) that use techniques like putting rel=”external” onto links you want to open in popups, or using a class=”external” or class=”pdf”. At least then you have a bit more control. The fallback being that those without JavaScript don’t get the popup, but no errors and they’d not really be impacted by it.As a user, personally, I really really hate popup windows – government sites seem to be huge offenders. The fear is that youo’ll follow an external link and leave their site. Big news flash – left anyway. Don’t try to keep visitors to a website prisoner. Let go. If you have good relevant useful content then they’ll be back organically.Apologies for the long rant.

  • http://www.webmaster-source.com Matt

    Don’t apoligize for long rants. It’s good content. :D

    “The fear is that youo’ll follow an external link and leave their site.
    Big news flash – left anyway. Don’t try to keep visitors to a website
    prisoner. Let go. If you have good relevant useful content then they’ll
    be back organically.”

    I totally agree with that. It’s the overall message I was trying to convey with my post. I also agree with your PDF theory. I don’t like having them open in the same tab as other content (especially if I want to go back to the other page). I often don’t see them coming and don’t middle-click them to open them in a new tab.

    But if I do middle-click, I want it to work, which they don’t with 80% of JavaScript links. Systems based on the rel=”” attribute generally work good though.

  • http://joeldrapper.com Joel Drapper

    Maybe you are right. I almost always open links with the ctrl key down to open them in a new tab, but when I don’t, I want them to load in the same one.