SEO Titles & Meta Descriptions

Set titles and descriptions for posts, pages, CPTs, taxonomies and archives.

7 min read
On this page
  1. Templates vs. per-post overrides
  2. Set your global templates
  3. General: separator, capitalization and empty archives
  4. Archives and special pages
  5. Index, no index or disabled
  6. Override a single post or page
  7. Character-count guidance
  8. How the tags are output
  9. FAQ
  10. Do global templates overwrite titles I wrote by hand?
  11. What happens if I leave the description template empty?
  12. Do I need a hydrogenseo.com account for titles and descriptions?
  13. Why did changing the separator not change one of my templates?
  14. Why does Google show a different title than the one I set?
  15. Related reading

Hydrogen SEO controls your SEO titles and meta descriptions in two layers: global templates that cover every post type, taxonomy, and archive automatically, and per-post overrides you set in the SEO Settings sheet when a page deserves hand-written copy. Both are output as server-rendered markup in your page's <head>, so search engines always see the final tags with zero front-end JavaScript involved.

This guide covers both layers, the character counts worth aiming for, and how the plugin actually prints the tags.

Templates vs. per-post overrides

Hydrogen SEO resolves the title and description for any URL in a predictable order:

  1. A per-post override written in the SEO Settings sheet always wins.
  2. The global template for that content type fills in everywhere else.

Templates use variables such as %title% and %site_name% that are replaced with real values at render time. That means a well-built set of templates gives every post, category, and archive on your site a sensible title and description on day one, and you only write manual copy for the pages that earn it: your homepage, cornerstone content, and key landing pages.

Set your global templates

  1. In wp-admin, go to Hydrogen SEO → Titles & Meta.
  2. Choose a content type. You can set separate templates for each post type (Posts, Pages, and any custom post types), each taxonomy (Categories, Tags, and custom taxonomies), the Archives (date, author and search results) and the Special Pages (the 404 page).
  3. In the Title field, enter a template. The shipped default for posts is %title% %separator% %site_name%, and for taxonomies %term_title% %separator% %site_name%.
  4. In the Meta description field, enter a description template, for example %excerpt% for posts or %term_description% for taxonomies.
  5. Save your changes.
Titles & Meta page: sidebar item (1), Posts Title Format (2), Description Format (3) and live preview (4). Settings › Titles & Meta › Posts: replacing the dash with a vertical bar and inserting Site Name with the @ picker.

While typing in any template field, press @ to open the smart-tags variable editor, browse the available variables for that context, and insert one without memorizing its name. %separator% and %search_query% are in the picker too. The full list of variables, with what each outputs and where it applies, lives in the template variables reference.

General: separator, capitalization and empty archives

The General section at the top of Titles & Meta holds three settings that apply to every template:

  • Title Separator. The character %separator% prints in every template: -, |, •, /, \, ~, :, » or «. The shipped default templates all use %separator% (for example %title% %separator% %site_name% for posts and %site_name% %separator% %tagline% for the homepage), so changing the separator here changes it across the site in one step. On existing sites, stored templates that were still the old shipped defaults are upgraded to %separator% once; templates you had edited are left as they were.
  • Capitalization. As written, Title Case, UPPERCASE or lowercase, applied to titles built from templates. A title typed into a post's or term's own SEO Settings sheet is always left as written. Title Case capitalizes the first letter of each word and keeps the rest of the word as it is, so "SEO" and "WordPress" survive intact.
  • Noindex Empty Archives (on by default). Category, tag and other taxonomy archives with no posts get noindex, and empty terms are left out of the XML sitemap. A term that has its own robots settings in its SEO Settings sheet uses those instead.
Titles & Meta › General: Title Separator (1), Capitalization (2) and Noindex Empty Archives (3).

Archives and special pages

These templates are applied on the front end of the matching pages:

TemplateDefaultNotes
Date Archive Format%published% %separator% %site_name%%published% (and %date%) is the archive period: "2026", "September 2026", or the full date in your site's date format for a day archive
Author Archive Format%author_name% %separator% %site_name%%author_name% (and %author%) is the author's display name
Search Results FormatSearch Results for "%search_query%" %separator% %site_name%%search_query% is what the visitor searched for
404 Page TitlePage Not Found %separator% %site_name%Used on any URL that returns a 404
404 Page Description"The page you are looking for could not be found."Printed as the 404 page's meta description
Archives card: Date (1), Author (2) and Search Results (3) formats, with the live preview (4). The date format was edited to “Coffee notes: %date% %separator% %site_name%”.

An empty title template falls back to its default, so a cleared field never produces a blank title. An empty 404 description prints no meta description at all.

Index, no index or disabled

From version 0.0.29, the Author archives and Date archives cards each start with a three-way choice above the title format: Index (listed in search results), No index (noindex, follow: visitors can open it, search engines leave it out) or Disabled (every address of that archive, its later pages and feeds included, redirects with a 301 to the homepage). Author archives default to No index and date archives to Index, which is how they behaved before. While an archive is disabled, its title format is marked as not in use. When to pick which is covered in author and date archives.

Override a single post or page

  1. Open the post in the editor and open the SEO Settings sheet.
  2. Type directly into the SEO title field. Anything you enter here replaces the template for this post only. You can still mix in variables; @ works here too.
  3. Type your Meta description. Aim for a sentence or two that answers the searcher's question and gives a reason to click.
  4. Watch the Google SERP preview update live as you type, so you can spot truncation before you publish.
  5. If you would rather start from suggestions, ask the Hydrogen AI tab in the sheet to draft a title and description. See AI meta titles and descriptions; this is the one part that needs a connected account.
  6. Update or publish the post. Nothing changes on the live site until you save.

The same sheet is available for taxonomy terms, so you can override the template for an individual category or tag as well. Open the term's edit screen (for example, click a category's name under Posts → Categories) and click Hydrogen SEO → Edit SEO settings, or press ⌘E / Ctrl+E. The title, description, robots, canonical, social and schema settings you save there belong to that term and override its taxonomy template. The button is not on the Add New Category form; create the term first, then edit it. The Classic editor has the same button in a side box; see the SEO Settings sheet.

Character-count guidance

ElementAim forWhy
SEO title50–60 charactersGoogle truncates titles by pixel width (roughly 600px on desktop), and 50–60 characters usually fits
Meta description120–160 charactersDesktop shows around 155–160 characters; mobile often cuts earlier

Treat these as guardrails, not laws. Google measures pixels, not characters, so a title full of wide letters truncates sooner than the count suggests; the SERP preview shows the honest picture. And remember that Google sometimes rewrites titles and descriptions regardless of what you set. Well-written tags that match the page's content are the best way to keep the ones you wrote.

How the tags are output

Hydrogen SEO renders the <title> tag and <meta name="description"> server-side, directly in the HTML your server sends. There is no client-side script rewriting tags after load, so crawlers, social scrapers, and browsers all see the same markup. This also makes the output theme- and builder-agnostic: it works identically with the block editor, Elementor, Divi, or a classic theme.

Page source after: both untouched posts' titles use a vertical bar.

Developers can adjust the final values with the hydrogen_seo_title and hydrogen_seo_description filters; see the filters reference.

One caution: if another SEO plugin is active and also printing titles and meta, you will get duplicate tags. Pick one primary SEO plugin; see fixing duplicate meta output.

FAQ

Do global templates overwrite titles I wrote by hand?

No. A per-post SEO title or description set in the SEO Settings sheet always takes priority over the template. Changing a template only affects posts that have no override.

What happens if I leave the description template empty?

Hydrogen SEO falls back sensibly, but an intentional template (such as %excerpt%) gives you far better snippets than leaving it to chance. For important pages, write the description yourself.

Do I need a hydrogenseo.com account for titles and descriptions?

No. Templates, overrides, variables, and the SERP preview all work with no account. Only AI help through Hydrogen AI requires a free connected account; see connect your account.

Why did changing the separator not change one of my templates?

%separator% only changes templates that use it. A template you typed with a literal character, such as %title% | %site_name%, keeps that character. Replace it with %separator% (type @ to insert it) to follow the setting.

Why does Google show a different title than the one I set?

Google reserves the right to rewrite titles and descriptions when it believes another phrasing serves the query better. Accurate, specific, appropriately sized tags are rewritten far less often.

Was this page helpful?
Still stuck? Contact support