Outrings
Search engine optimisation

Why does my site have no title tag?

The commonest causes, and why a missing title costs more than almost any other single fault.

3 min read
Short answer

Usually one of three things: the title is set by JavaScript after load, a template variable is empty, or the tag is outside <head> and being discarded. All three look fine in a browser, which is why they persist.

Why it matters more than it looks

The <title> is the single strongest on-page signal about what a page is, and it is used everywhere: the search result heading, the browser tab, the bookmark name, the default share text, and the label a screen reader announces on load. A missing one degrades all of those at once, and search engines invent a replacement from whatever they can find.

Cause one: set by JavaScript

Single-page applications frequently set the title after mounting, via a router or a head-management library. Crawlers that do not execute JavaScript see whatever static value the template shipped with — often "React App" or empty.

curl -sL https://yoursite.com | grep -i "<title>"

If that returns nothing, or a placeholder, this is your cause. The fix is server-side rendering or prerendering so the correct title is in the HTML that gets sent.

Cause two: an empty template variable

A CMS or framework template outputs <title>{{ page.title }}</title>, and for this page the field was never filled. You get <title></title>, which is technically present and functionally absent.

The fix is a fallback in the template so an unset title falls back to something reasonable rather than to nothing.

Cause three: it is in the wrong place

The title element must be inside <head>. If a script, a stray tag or a plugin has closed the head early, the browser silently relocates the title into the body, where it is ignored as metadata but still renders in the tab — a genuinely confusing failure mode.

Validate the HTML, or look at the parsed DOM in developer tools and check where the title actually sits.

Writing a good one

  • 50–60 characters before Google truncates. Longer is allowed, just cut off.
  • Distinguishing words first. The brand name, if included, goes last.
  • Unique across every page. Duplicate titles are as damaging as missing ones.
  • Descriptive of that page, not of the site.
  • Exactly one per page.
A pattern that works for most sites: Specific page subject — Section — Brand, trimmed to fit. On a homepage, lead with what the organisation does rather than its name, unless the name is already well known.

What our audit reports about this

Every item below is measured directly, not inferred. Run it against your own site and the result names the exact rule or header responsible.

  • Whether a title exists in the server-rendered HTML, its length, and whether it will truncate.
  • Whether more than one title element is present, or the title sits outside the head.
  • Whether the title is a placeholder or framework default.
  • Whether the title correlates with the actual content of the page.

For agents and scripts, the same measurement is at /api/v1/seo?url=yoursite.com — see the API documentation.

Related questions

Does Google use my title tag exactly?

Often, but it rewrites titles roughly a third of the time when it judges another phrasing a better match — frequently pulling from the H1. A clear, accurate title reduces how often that happens.

Can I have two title tags?

The HTML specification allows one. Browsers show the first and ignore the rest; crawlers generally do the same. Two is a bug that will eventually surprise you.

Should the title and H1 be identical?

They can be, and it is fine. Slight variation is often better: the title competes in a results list and can carry qualifying words, while the H1 speaks to someone already on the page.

Read next

All 50 guides · How every check works · API for agents