What is a taxonomy?
A taxonomy is a classification scheme for content. WordPress ships with two that site owners use: categories, which can be nested, and tags, which are flat. The items inside a taxonomy, such as the category "News", are called terms, and every term gets an archive page listing the content assigned to it.
Those archive pages are where taxonomies meet SEO. They can be strong landing pages or hundreds of thin near-duplicates, depending on how they are used.
Vocabulary
| Word | Meaning | Example |
|---|---|---|
| Taxonomy | The grouping system | Category, Tag, Product brand |
| Term | One group within it | "Vegetarian" |
| Term archive | The page listing a term's content | /category/vegetarian/ |
| Hierarchical | Terms can have parents and children | Categories |
| Flat | No parent and child structure | Tags |
People often say "taxonomy" when they mean a term. The distinction matters when reading settings: noindexing the tag taxonomy affects every tag archive, while noindexing a term affects one.
Custom taxonomies
Themes and plugins add their own with register_taxonomy(). WooCommerce registers product categories and product tags, and a recipe site might add "Cuisine":
register_taxonomy( 'cuisine', 'recipe', array(
'label' => 'Cuisines',
'public' => true,
'hierarchical' => true,
'rewrite' => array( 'slug' => 'cuisine' ),
'show_in_rest' => true,
) );
Terms then live at addresses like example.com/cuisine/italian/. A taxonomy can be attached to one post type or several.
How taxonomies help
- Topic landing pages. A well-kept category archive, with an introduction and a curated list of posts, can rank for the broad term its posts are too specific for.
- Internal links. Every post links to its terms, and each archive links to its posts. That gives crawlers and readers a path to older content. It is the built-in skeleton of a topic cluster.
- Breadcrumbs and URLs. The category supplies the middle of the trail, and with
%category%in the permalink structure, part of the address.
How they hurt
- Too many terms. A tag used on one post creates an archive whose content is that one post's excerpt. Multiply by several hundred tags and a large part of the site is thin. This is a main source of index bloat.
- Overlapping terms. A category "Recipes" and a tag "recipes", or tags "SEO" and "search engine optimization", produce archives with near-identical lists.
- Archives that mirror each other. On a small site, the category archive, the blog index and the author archive can all show the same ten posts.
- Bare archives. A title and a list of excerpts gives search engines little that the posts do not already provide.
Guidelines that hold up
- Few categories, each a real section. A post normally belongs to one. If it sits in several, choose a primary category.
- Tags only when they group at least a handful of posts and say something categories do not. Many sites do well with none.
- Write a description for the terms you want to rank, and make sure your theme displays it on the archive.
- Noindex what has no search value, rather than blocking it in robots.txt, so links on those pages are still followed; see noindex tag and category archives.
- Merge or delete stray terms and redirect their old archive URLs.
Controls in WordPress
Terms are managed under Posts → Categories and Posts → Tags, each with a name, slug, parent and description. The URL prefix comes from the category base and tag base under Settings → Permalinks. WordPress core's sitemap lists every public taxonomy's terms that have published posts.
Hydrogen SEO has index and noindex settings for each taxonomy, includes or leaves out each taxonomy in the sitemap, and can use a custom taxonomy in the breadcrumb trail; see robots meta settings and breadcrumbs. For shops, our guide to optimizing WooCommerce category pages applies the same ideas to product categories.
Common questions
What is the difference between a category and a tag?
Categories are hierarchical and meant for the broad sections of a site. Tags are flat and meant for specific details that cut across categories. Both are taxonomies and both create archive pages.
Should tag pages be indexed?
Only if they are useful landing pages: enough posts, a clear topic and no overlap with a category. Thin or duplicate tag archives are better set to noindex.
What is a term in WordPress?
A term is a single item in a taxonomy. "News" is a term in the category taxonomy, and "budget" could be a term in the tag taxonomy.