How to check for invalid elements in the <head>
One stray <img> or <iframe> can end the head early and hide your canonical and robots tags from Google. How to find it by hand, and fix it.
Titles, descriptions, encoding, viewport and everything else that has to sit in the page head to count.
One stray <img> or <iframe> can end the head early and hide your canonical and robots tags from Google. How to find it by hand, and fix it.
The viewport meta tag decides whether phones show your page properly. How to check it by hand, fix it, and why blocking zoom fails accessibility.
Google cuts titles by width, not character count. How to measure your title tag in pixels, why some 50-character titles fit and others don't, and fix them.
What a meta description does, how long it should be, why Google often shows other text instead, and how to check for missing or duplicate ones by hand.
Garbled characters like ’ mean the browser guessed the wrong encoding. Where to declare UTF-8, why it must come early, and how to check a page by hand.
The HTML base tag changes where every relative link, image and canonical on a page points. How it works, how it breaks, and how to check it by hand.
A broken base address can make the page's relative links and images point to the wrong place.
<base href> so it is a valid absolute URL, or remove the <base> element.Conflicting base addresses make it unclear how links and images on the page should be resolved.
<base href> in the head and remove the duplicates; browsers only honour the first.Conflicting encodings can make letters and symbols display wrongly.
<meta charset> and any Content-Type header agree; use UTF-8.If the encoding appears late in the page, browsers may misread the text before it and show strange characters.
<meta charset="utf-8"> to be the first element in the head, within the first 1024 bytes.Without it, browsers have to guess the encoding, which can garble special characters.
<meta charset="utf-8"> as the first element in the head.Repeated declarations can conflict and make browsers pick the wrong encoding.
<meta charset> elements and keep one at the top of the head.Elements such as images or iframes in the head can end it early, so the tags after them may be ignored.
<head> (often a tag manager or third-party script) into <body>.Duplicate head sections make the page structure invalid and its tags unpredictable to read.
<head> blocks into one; check for a template or plugin injecting a second.Long descriptions are often cut off in search results, so the message can be lost.
Without a description, search engines choose their own snippet, which may not sell the page well.
<meta name="description" content="..."> with a unique, concise summary of the page.Several descriptions can conflict, so search engines may pick the wrong one or ignore them.
<meta name="description"> tags; check for theme and SEO plugin conflicts.A very short description wastes the space search results give you to explain what the page offers.
Title, description and similar tags are only reliably read when they are in the page's head.
<body> into <head>.Long titles are often cut off in search results.
<title> to avoid truncation and lead with the primary keyword.The title is one of the first things people see in search results and browser tabs.
<title> element in the head.Several titles are ambiguous, so search engines and browsers may show the wrong one.
<title> elements; check for an SEO plugin and the theme both adding one.A very short title makes poor use of the space search results give the page.
<title> with descriptive terms, within the recommended length.Without it, phones may show a shrunken desktop version that is hard to use.
<meta name="viewport" content="width=device-width, initial-scale=1"> to the head.Browsers use only one, so the page may not lay out the way the team expects on phones.
<meta name="viewport"> tags; keep width=device-width, initial-scale=1.Blocking zoom stops people with low vision from enlarging text, an accessibility failure.
A repeated title adds nothing to the search result, so Google is likely to write its own summary.
<title>; check the CMS fallback.Wide letters push the title past the space Google shows, so it gets cut short.
<title> under about 560px in 20px Arial; shorten it or move the brand to the end.Past the space Google shows, the end of the summary is cut off.
SEOSnip checks the page in your browser, compares the server HTML with the rendered page, and turns each issue into a ticket with the evidence attached.