Internal Search test

What does it do?

Check whether the website has an internal search facility (i.e. a search box which allows users to search inside the site).

Example results

Example of internal search test results

Why is it important?

For large sites, the absence of a proper and easy-to-find search facility compromises usability. It is less of a concern with small sites.

How is it measured?

Sitebeam checks each page in the website for a search facility.

If a website has less than 100 pages, it doesn’t need any search facility. Once 100 or more pages are reached, this test scores a website increasingly harshly for not having a search facility on most or all pages.

Technical explanation

A complex algorithm is used to determine whether an individual page contains a search facility. In summary:

  • The contents of each <form> tag are considered separately.
  • For each form, only the <input><textarea> and <select> child tags are considered.
  • Numerous rules exclude a form as clearly not a search form. For example, if any of the<input> tags are for a password, they are excluded as the form is likely for login. Similarly too many fields will exclude a form, as will the presence of a <textarea> field.
  • The names of the fields, forms, their properties and their CSS properties are analyzed for giveaway keywords, such as “search”. CSS is evaluated properly from the stylesheet. The presence of any of these increases the likelihood of a form being a search panel.
  • Similarly certain keywords reduce the probability of a form being a search form.
  • Finally a probability is calculated that the form matches a search panel. Pages with greater than a 50% probability of containing a search form are classified as having a search form. This is slightly biased in favour of false positives on purpose, as the alternative (flagging sites as not having search when they do) is considered more detrimental to the integrity of the report.

Potential problems

This test doesn’t recognize an internal search facility

This test can’t detect some highly obscure forms of internal search (for example, if search is embedded entirely via Javascript at runtime). You can manually exclude this test if this is a problem.

How to improve this score

If the website is 100 pages or larger, consider adding an internal search facility.
