Categories are intended to group together pages on similar subjects. They are implemented by a
MediaWiki
feature that adds any page with a text like [[Category:XYZ]]
in its wikimarkup to the automated listing that is the category with name XYZ. Categories help readers to find, and navigate around, a subject area, to see pages sorted by title, and to thus find article relationships.

Categories are normally found at the bottom of an article page. Clicking a category name brings up a category page listing the articles (or other pages) that have been added to that particular category. There may also be a section listing the
subcategories
of that category. The subcategorization feature makes it possible to organize categories into tree-like structures to aid navigation.

The term
category
does refer to both the title of a category page—the category pagename—and the category itself. Keeping this in mind while reading about categorization, plus learning a category page layout is a worthwhile investment in research techniques. (See also the search box parameter "incategory".) The layout of a category page is mostly text, but see about
displaying category trees
below.

Summary

The MediaWiki software maintains tables of
categories, to which any editable page can be added. To add a page to a category, include "[[Category:Category name]]" or "[[Category:Category name|Sortkey]]" in that page's
wikimarkup. The categories to which a page belongs appear in a box at the bottom of the page.

A category is usually associated with a
category page
in the "Category:" namespace. A category page contains text that can be edited, like any other page, but when the page is displayed, the last part of what is displayed is an automatically generated list of all pages in that category, in the form of links. Other category pages which appear in this list are treated separately, as
subcategories.

Putting pages in categories

A page belongs to a category if the page's wikimarkup contains a declaration for that category. A category declaration takes the form
[[Category:Category name]]
or [[Category:Category name|Sortkey]]. The declaration must be processed, i.e. it will not work if it appears between
<nowiki>...</nowiki>
or <includeonly>...</includeonly>
tags, or in a comment. The declaration may however come from a transcluded
page; see Categories and templates
below.

A category name can be any string that would be a legitimate
page title. It cannot begin with a lower-case letter. If the category name given in a category declaration begins with a lower-case letter, then it is interpreted as if it were capitalized.

In Wikipedia, it is customary to place category declarations at the end of the wikimarkup, but before any
stub
templates (which themselves transclude categories) and interlanguage links.

When a page has been added to one or more categories, a categories box appears at the bottom of the page (or possibly elsewhere, if a non-default
skin
is being used). This box contains a list of the categories the page belongs to, in the order in which the category declarations appear in the processed wikimarkup. The category names are linked
to the corresponding category pages. They appear as redlinks
if the corresponding category page does not exist. If a user has enabled the HotCat
gadget, the categories box will also provide links to quickly add, remove, or modify category declarations on the page, without having to edit the whole page.

Hidden categories are not displayed, except as described below under
Hiding categories.

Category pages

A category page is a page in the "Category:" namespace. The page "Category:Name" corresponds to the category called "Name". New category pages can be created like any other pages – by clicking on a red link or entering the name in the search box and clicking at "You may create the page".

A category page can be edited like any other page. However, when it is displayed, the editable part of the page is followed by automatically generated lists of pages belonging to the category, as follows:

First a count and list of subcategories (other category pages belonging to the category) is shown, if any exist. The name of each subcategory is followed by a count of its own subcategories. These further subcategories are expanded in the display if the
►
sign alongside the subcategory is clicked (but this "widget" is only visible if your browser has
JavaScript
enabled). Note: ►
is shown if there are no further subcategories. The subcategory is collapsed again if ▼
is clicked.

Next a count and list of pages in the category (excluding subcategories and images) is shown. If the category has no members, a message to that effect is displayed.

Next a count and list of image and other media files in the category appears, if any exist. These are shown with thumbnails. The first 20 characters of the file name are shown, with an ellipsis if that is not the full name; also the file size is shown.

The items in the lists all link to the pages concerned; in the case of the images this applies both to the image itself and to the text below it (the name of the image).

For the way in which the lists are ordered, see
Sort order
below. The first and second lists are divided into sections, according to the first character of the sort key. These initial characters are displayed above the sections. To suppress these, make all sort keys start with a space.

A category page can only display a limited number of items (currently 200). If more pages belong to the category, there will be a link to the next ones.

The categories box for the category page appears at the bottom, in the same place as for other pages. This contains the categories to which the current category page has been added, i.e. its parent categories
(the categories of which it is a subcategory). Add a category page to other categories in the normal way, using the "[[Category:Category name]]" or "[[Category:Category name|Sortkey]]" syntax.

Linking to category pages

To link to a category page
without
putting the current page in that category, precede the link with a colon: [[:Category:Category name]]. Such a link can be
piped
like a normal wikilink. (The {{cl}} template, and others listed on its documentation page, may sometimes be helpful.)

Sort order

By default, a page is sorted under the first letter of its full name
including the namespace. Also, MediaWiki groups accented characters separately from their unaccented version, so pages starting by À, Á, Ä, will be listed under separate headings, instead of under heading A.

A page whose title begins with a number will be grouped
only
according to the first number. Thus "1 dog", "11 dogs", and "112 dogs" all appear under the "1" heading (not under "1", "10", and "100" headings). This will cause "112 dogs" to appear before
"2 dogs" on the category page.

Each of the three lists (subcategories, pages, media files) is arranged in the order explained above (except that, in the subcategories list, the namespace indicator "Category:" is not considered). If an item ought to be positioned within a list on the basis of an alternative name (sort key) for that item, then this can be specified in the category tag that places the item in the list:

[[Category:Category name|Sortkey]]

For example to add an article called
Albert Einstein
to the category "People" and have the article sorted by "Einstein, Albert", you would type:

[[Category:People|Einstein, Albert]]

Unlike with a
piped link
(which uses the same syntax), the sort key itself is not displayed to readers. It affects only the order in which pages are listed on the category page.

It is useful to document the system being used for sort keys on the category page. For guidelines about the use of sort keys on Wikipedia, see
WP:SORTKEY.

Default sort key

It is possible to set a default sort key which is different from
{{PAGENAME}}
by using the magic word{{DEFAULTSORT}}
thus:

{{DEFAULTSORT:new key}}

In the case of multiple default sort key tags, the last DEFAULTSORT on the final rendering of a page applies for all categories, regardless of the position of the category tags. This also means that a DEFAULTSORT tag included from a template is not effective if another DEFAULTSORT tag occurs later on the page, even if the later DEFAULTSORT tag is also "hidden" (included by another template).

Hiding categories

When the
magic word__HIDDENCAT__
is placed on a category page, that category becomes hidden, meaning that it will not be displayed on the pages belonging to that category. On Wikipedia, the magic word is not normally used explicitly, but is applied through the {{hiddencat}} template. The feature is mostly used to prevent project maintenance categories from showing up to ordinary readers on article pages.

However, hidden categories
are
displayed (although listed as hidden):

on category pages (whether as parent categories or subcategories);

at preview during editing;

if the user has selected "Show hidden categories" in user preferences.

For guidelines on the hiding of categories on Wikipedia, see
WP:HIDDENCAT.

Categories and templates

A template can be used to add pages to a category, usually by placing the category link inside
<includeonly></includeonly>
tags on the template (e.g. <includeonly>[[Category:category name]]</includeonly>). When the template is transcluded into the page, the category link becomes active, and the page is added to the category page. This is useful for categories that have high turnover or many pages included, like cleanup categories.

Changes to the template, however, may not be reflected immediately on the category page. When you edit an article to add a category tag directly, the list of category members is updated immediately when the page is saved. When a category link is contained in a template, however, this does not happen immediately: instead, whenever a template is edited, all the pages that transclude it are put into the
job queue
to be recached during periods of low server load. This means that, in busy periods, it may take hours or even days before individual pages are recached and they start to appear in the category list. Performing a null edit
to a page will allow it to jump the queue and be immediately recached.

To add the template itself to the category page as well, omit the "includeonly" tags. To add the template to a category
without
categorizing pages on which the template is transcluded, place the category declaration between <noinclude>...</noinclude> tags.

Parser functions
can be used to make the transcluded categories, or the sort key used in them, dependent on other variables, notably PAGENAME.

Passing a category by parameter

<includeonly>[[Category:{{{cat|default}}}]]</includeonly> or <includeonly>{{{cat|[[Category:default]]}}}</includeonly>
If the user provides a parameter 'cat=XXX' the page will be categorized at the page [[Category:XXX]], otherwise it will be categorized at the page
[[Category:default]]. Calling the template with "cat=" (equal to nothing) disables putting the page in any category.

Excluding non-article pages

<includeonly>{{#if:{{NAMESPACE}} | | [[Category:XXX]]}}</includeonly>
the variable NAMESPACE is null for mainspace articles. For any space other than mainspace, this ParserFunction will produce an empty string, but for regular articles this will include the article in Category:XXX.

On Wikipedia it is not recommended that templates be used to populate ordinary content categories of articles. See
Categorization using templates
in the categorization guideline.

Categorizing redirect pages

Redirect pages can be categorized. The category tag must be placed after the redirect link. On a category page, redirects are listed in italics.

Moving and redirecting category pages

Categories can be moved
in the same way as an ordinary page; but a certain amount of cleanup may be necessary. A redirect is left at the old category name, and this is not a normal #REDIRECT]]
but a {{category redirect}}. Once all the pages have been moved out of the old category, it may be left as a category redirect, or deleted. For categories entirely populated through templates (see above), modifying the templates enables all affected articles to be moved to another category, but with the refresh problem mentioned. Almost all category name changes are made pursuant to a consensus decision at
Wikipedia:Categories for discussion.

Searching for articles in categories

In addition to browsing through hierarchies of categories, it is possible to use the search tool to find specific articles in specific categories. To search for articles in a specific category, type
incategory:"CategoryName"
in the search box.

An "OR" can be added to join the contents of one category with the contents of another. For example, enter

incategory:"Suspension bridges" OR incategory:"Bridges in New York City"

to return all pages that belong to either (or both) of the categories, as
here.

Note that using search to find categories will not find articles which have been categorized using templates. This feature also doesn't return pages in subcategories.

"Related Changes" with categories

For a category, the "Related Changes" feature, applied to the corresponding category page, lists recent changes to the pages currently listed as belonging to that category. Where those pages are subcategories or image pages, only changes to their
editable parts
are listed.

Notice that "Related Changes" does
not
list recent changes to pages linked from the editable part of the category page (as it would normally, with a non-category page). (If a workaround is required for this, the links in question could be placed in a template and transcluded onto the category page.)

As usual (unlike with
watchlists) recent changes to corresponding
talk pages
are not
shown under "Related Changes". Pages you are watching are bolded on the list (this can be helpful for finding which pages in a given category you have on your watchlist).

"Related Changes" can be used to find pages which have recently been added to a category (unless they were added through modification of a template; then
"What links here"
should be used with the template). However it is not possible to detect deletions from a category in this way (since once pages have been removed from a category, their edits no longer show up in Related Changes). Another way of finding recent additions is to use an API query; see Retrieving category information
below. There is an external tool
to watch additions and removals from categories.

Listing all categories

Special:Categories
provides an alphabetic list of all categories, with the number of members of each; this number does not include the content of the subcategories, but it includes the subcategories themselves, i.e., each counting as one.

The above list contains all categories that have members, regardless of whether they have corresponding category pages. To list all existing category pages (regardless of whether they have members), use
Special:AllPages/Category:.

Displaying category trees and page counts

As described at
mw:Help:Magic words,
{{PAGESINCATEGORY:Example}}
or {{PAGESINCAT:Example}}
returns the number of pages in "Category:Example". Each subcategory counts as one page; pages in subcategories are not counted.

The page
Special:CategoryTree
enables you to see the tree structure of a category (its subcategories, their subcategories and so on; the display of files and other member pages is optional).

The
CategoryTree extension
can be used to display such a tree on any page. (This is sometimes done on the category page itself, if the category is split over multiple screens, to make all subcategories available on every screen.) The basic syntax is

<categorytree>Category name</categorytree>

to display just the subcategory tree, and

<categorytree mode=pages>Category name</categorytree>

to display member pages as well.

Dapete's
category-visualizer vCat
will render charts of the tree structure.

They all also allow further restriction to a namespace; some allow also restriction to a union of namespaces, or the complement of a union of namespaces. They all allow the info to be displayed in any page, not just a separate category page.