Ever encountered a “404 error” message on a site? Also known as a “page
not found” error, it can really annoy visitors. Some of these folks may never
return to your site. If you don’t handle these people with care, you could drive
important traffic away from your site. Now, you really don’t want to do that,
Links go “missing” for a whole bunch of reasons:
- You moved the page elsewhere. Instead of grouping “mutual funds”
under “Investments”, perhaps you moved it to “Personal Finance”
- Some other site linked to a page on your site. Either they got the link
wrong or the linked page no longer exists (tip: please? try not to re-architect
your site unless absolutely necessary).
- A search engine still maintains an old index of your site and hasn’t updated
it in years.
- Somebody made a minor mistake typing the URL in e.g., product.htm instead
But that’s no reason to allow visitors to leave disappointed! Every site must
have a custom “404 page” that tries to help people find what they
thought they’d find. Experienced web developers (of whom there are lots on the thelist) know that such a page is essential for a large, high-traffic site. Or at least they
ought to. If that’s the case, why do some of the most popular sites on the Internet
not have one? Here are some examples…
… and still more well-known sites have practically useless 404 error pages.
Some examples are:
- http://www.usatoday.com/AnErrorPage.html (ugh! Stops you cold.)
- http://www.aol.com/AnErrorPage.html (as if hitting the “reload” button on
your browser will bring back a page that’s been "renamed, moved, or deleted".)
Very few sites actually trap the URL causing the problem and
allow people to enter it into a form without copying, pasting, pressing the
Back button to check the referrering page, etc. Why is that so hard? Instead of asking questions
like “Write to us, telling us what URL caused the problem, where you came from,
what operating system and browser you’re using”, why not just sniff all this
through a server-side script and use that info? See: http://www.ask.com/AnErrorPage.html
as an annoying example.
Don’t drive people away. Here are some ideas for designing more user-friendly error pages::
- Don’t redirect them automatically to the home page! This is evil!
- Show a friendlier error message. Use a more informal tone. “Oops! We couldn’t
find this page for you. Try these options:” sounds a lot better than “Error.
- Offer a link to the site map, or better still, reproduce the site map on
the error page. This will help those users that might have been just looking
for a particular section, say, the “Services” page.
- Offer a link to the site search. Better still, put a search form right
there on the error page. It’s good to try and minimize the number of clicks
for a visitor.
Offer a link to a guided tour (if you have one) or the “About the site” page.
- Trap the refererring page (Use the “HTTP_REFERER” server variable) and
automatically send an email message to the Webmaster of the site, notifying
him/her of i) The URL with the error and ii) The referring page
- On the custom 404 page, have a contact form that the user can fill in if
he/she was looking for something specific. For a particularly nice touch,
pre-fill the “Missing page:” field with the URL of the page that caused the
error, and the “Referring page:” field with the URL of page they came from.
- Please reply promptly to all mail from users who got a 404 page. Don’t
stop at the autoresponder (you do have one, don’t you?). Write back to them,
tell them how to find what they were looking for, and do it within 24 hours
of the error. Prompt customer service is so rare on the Web that it will really
be appreciated by your visitors.
Using some or all of the above measures will spread that “they really
care about me” feeling amongst your site’s visitors, and we all know that
trust is a scarce commodity on the Web.
Are there any decent 404 pages out there? Yes. Here are a few:
- Fool.com – http://www.fool.com/AnErrorPage.html
(Very nice. I like the informal, reassuring tone of this page)
- PC Magazine – http://www.pcmag.com/AnErrorPage.html
(Includes a site search, site map, etc.)
- Martin Burns’ web site: http://www.easyweb.co.uk/AnErrorPage.html
(employs most of the techniques I’ve mentioned)
- ASPToday has a detailed article
about setting up custom 404 error pages on Windows NT. If you’re on NT,
- ASP 101 has a good
ASP script that traps the referring page and sends a mail to the Webmaster
about the error. You could modify this to log it to a database instead.
- As Martin points out below, Anthony has written an article
about doing the same for Apache on Unix/Linux.
- The 404 research lab is a site
devoted to just 404 errors. Highly recommended. Includes examples of good
404 pages, whacky pages, instructional pages, etc.