A page ranks for the wrong query, shows a truncated or rewritten title in search results, drops out of the index after a release, or appears twice under different URLs. Very often the cause sits in the first few lines of the HTML: a missing or duplicated title, a leftover noindex from staging, a canonical link pointing to the wrong URL, or hreflang tags with invalid codes.
The Meta Tag Analyzer reads a page's metadata, either fetched live from a URL or from HTML you paste, and checks the title, meta description, canonical URL, robots directives (including the X-Robots-Tag header), viewport, character set, language, H1 headings and hreflang alternates. It shows an approximate search-result preview, a list of findings, and every meta and link tag in the document.
What are meta tags?
In simple terms
Meta tags are pieces of information in a page's <head> that visitors do not see on the page itself but that browsers, search engines and social networks read. The title becomes the headline in search results and the browser tab; the description is often used as the snippet; other tags tell search engines whether to index the page and which URL is the main one.
Technical background
The relevant elements are defined in the HTML Living Standard and in search engine documentation:
| Element | Example | Purpose |
|---|---|---|
<title> | <title>Pricing – Example Company</title> | Document title; search result headline |
| Meta description | <meta name="description" content="…"> | Summary; often used as snippet |
| Canonical link | <link rel="canonical" href="https://www.example.com/pricing/"> | Preferred URL among duplicates (RFC 6596) |
| Robots meta | <meta name="robots" content="noindex, nofollow"> | Indexing and link-following directives |
| Crawler-specific robots | <meta name="googlebot" content="noindex"> | Directives for one crawler |
X-Robots-Tag header | X-Robots-Tag: noindex | Same directives as an HTTP header, also for non-HTML files |
| Viewport | <meta name="viewport" content="width=device-width, initial-scale=1"> | Mobile rendering |
| Charset | <meta charset="utf-8"> | Character encoding |
lang attribute | <html lang="en"> | Document language |
| hreflang | <link rel="alternate" hreflang="de" href="…"> | Language or regional alternates |
| Meta refresh | <meta http-equiv="refresh" content="0; url=…"> | Client-side reload or redirect |
Robots directives such as noindex, nofollow and none (both) only take effect if the crawler can fetch the page. A URL blocked in robots.txt is never fetched, so its meta tags are never seen. hreflang values combine an ISO 639 language code with an optional script and an ISO 3166-1 region (en, en-GB, zh-Hant-TW), or x-default for the fallback version.
Why use a meta tag analyzer?
- Find indexing blockers. A forgotten
noindexin a template, or in anX-Robots-Tagheader added by a proxy, can remove a whole section from search results. - Check canonicals. Relative, empty, conflicting or misdirected canonical links cause duplicate-content confusion.
- Fix titles and descriptions. Missing, duplicated, too short or too long values make search snippets worse.
- Validate hreflang. Invalid codes and relative URLs make search engines ignore language alternates.
- Catch technical basics. Missing viewport, disabled zoom, non-UTF-8 charsets, missing
langand meta refresh redirects.
Who should use it?
- SEO specialists auditing pages and templates.
- Web developers and front-end engineers checking what a CMS or framework actually outputs.
- Content editors verifying titles and descriptions before and after publishing.
- QA teams testing staging builds before release, using paste mode.
How the meta tag analyzer works
The analyzer has two sources, both handled by the same form shared with the Open Graph Checker.
Fetch page URL uses the NetTools.tech server:
- The URL must be a public
httporhttpsURL on port 80, 443, 8080 or 8443, without credentials;https://is assumed when the scheme is missing. - The server requests it with the identified user agent
NetToolsBot/1.0, no cookies and a 10-second limit per request, following up to 10 redirects. Each redirect target passes the same SSRF checks as the Redirect Checker. - At most the first 2 MB of HTML are read. The body is returned when the response is HTML (
text/htmlorapplication/xhtml+xml, or no content type but content starting with<), together with the status code, the final URL and theX-Robots-Tagheader. - Your browser parses the HTML. The page's address for comparisons is the final URL after redirects.
Paste HTML runs entirely in your browser. The pasted source (up to 2,000,000 characters) must contain at least an <html>, <head>, <meta>, <title> or <link> tag. An optional Page address is used to compare with the canonical URL and for the preview.
In both modes the HTML is parsed with the browser's DOMParser, which builds an inert document: scripts never run, and no images, stylesheets or frames are loaded. The analyzer then reads all <title> elements (outside SVG), every <meta> tag with name, property, http-equiv, itemprop or charset, every <link rel>, the lang attribute and up to 20 <h1> headings, and runs its checks. Lengths are counted in characters (Unicode code points).
How to use the NetTools.tech Meta Tag Analyzer
- Open the Meta Tag Analyzer.
- Choose a source:
- Fetch page URL: enter the address in Page URL, for example
https://www.example.com/pricing/. - Paste HTML: paste the page source (View source in the browser) into Page HTML, and optionally the URL in Page address. Load example fills in a sample page.
- Fetch page URL: enter the address in Page URL, for example
- Press Analyze meta tags.
- Read the summary tiles and the Search result preview.
- Work through Checks, which are sorted by severity.
- Use the Meta tags, Link tags and H1 headings sections to see the raw values.
Understanding the results
| Result | Meaning | What to look for |
|---|---|---|
| Errors / Warnings / Passed | Counts of check results | Errors and warnings first |
| Meta tags | Number of meta elements found | Very few usually means tags are added by JavaScript |
| Indexable | No if robots meta or X-Robots-Tag contains noindex or none | Unexpected "No" on a page that should rank |
| Search result preview | URL path, title (cut at 60 characters) and description (cut at 160) | Approximate only; search engines cut by pixels and may rewrite |
| Title | Missing (error), shorter than 30 or longer than 60 characters (warning), more than one <title> (warning) | Unique, descriptive titles per page |
| Meta description | Missing, empty or over 160 characters (warning), under 70 (info), duplicates (warning) | A clear summary of the page |
| Canonical URL | Missing (info), several different (error), empty (error), relative (warning), points elsewhere (info), self-referencing (OK) | A single absolute canonical |
| Robots | noindex/none (warning), nofollow (info), crawler-specific tags for Googlebot, Bingbot, Yandex and others, X-Robots-Tag header | Leftovers from staging |
| Viewport | Missing (warning), zoom disabled via user-scalable=no or maximum-scale=1 (warning) | Accessibility and mobile rendering |
| Character set / Language | Missing or non-UTF-8 charset, missing lang (info) | utf-8 and the right language code |
| H1 heading | None or several (info) | One clear main heading |
| hreflang | Invalid codes (error), relative URLs (warning), missing x-default (info) | Valid codes and absolute URLs |
| Meta refresh | Page reloads or redirects in the browser (warning) | Use an HTTP 301 instead |
| Meta keywords / Social tags | Keywords ignored (info); count of Open Graph and Twitter Card tags | Details in the Open Graph Checker |
Example: a staging template that went live
Paste this source into Page HTML and enter https://www.example.com/pricing/ as Page address:
<html>
<head>
<title>Home</title>
<meta name="robots" content="noindex, nofollow">
<link rel="canonical" href="/pricing">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
</head>
<body><h1>Pricing</h1><h1>Plans</h1></body>
</html>The report shows 0 errors, 5 warnings, 2 meta tags and Indexable: No:
- Warning – Title: 4 characters; aim for roughly 30–60.
- Warning – Meta description: none, so search engines pick a snippet from the page.
- Warning – Canonical URL: relative; an absolute URL avoids mistakes.
- Warning – Robots:
noindexasks search engines not to show the page. - Warning – Viewport: zooming is disabled.
- Info: no charset declared, no
langattribute, two H1 headings, no Open Graph tags.
The fix: remove the robots tag (or set index, follow), write a specific title and description, use https://www.example.com/pricing/ as canonical, drop maximum-scale=1, and add <meta charset="utf-8"> and lang="en".
Common use cases
- Release checks: confirm production templates do not carry
noindexor staging canonicals. - Duplicate content: verify that parameter, print and paginated variants point to the right canonical.
- International sites: validate hreflang codes and absolute URLs on each language version.
- Snippet tuning: see how long titles and descriptions are and how they might be cut.
- Pre-publication review: paste HTML from a staging system that is not publicly reachable.
Troubleshooting
"The server did not return an HTML page"
The URL answered with another content type (a PDF, JSON or an image) or no usable body. For non-HTML files, robots directives can only come from the X-Robots-Tag header, which the HTTP Status checker shows.
The page is blocked or returns 403
Bot protection may refuse automated requests. Copy the page source from your browser and use Paste HTML.
Tags you see in the browser inspector are missing
The inspector shows the DOM after JavaScript ran; the analyzer sees the server's HTML. If your framework injects meta tags client-side, consider server-side rendering for them, since not every crawler executes JavaScript.
The report describes the wrong page
The URL redirected. The results header shows the final URL and status; check the chain with the Redirect Checker. Error pages are analyzed too if they are HTML, so look at the status in the header.
Indexable says Yes but the page is not in search results
The tile only reflects robots meta tags and the header. Check robots.txt with the Robots.txt Checker, the canonical link, the status code and whether the page is in your sitemap.
Common mistakes
- Blocking a page in robots.txt and adding noindex. The crawler never sees the noindex.
- Copying one title and description to every page. Duplicates make pages indistinguishable in results.
- Relative or protocol-less canonicals that resolve differently than intended.
- Several canonical tags, often one from the theme and one from an SEO plugin.
- Using meta refresh for moved pages instead of an HTTP 301.
- Language codes like
en-UKorjp. The correct codes areen-GBandja.
Limitations
- JavaScript is not executed, so client-side tags are invisible; some sites also send different HTML to automated requests.
- Only the first 2 MB of HTML are analyzed in either mode.
- The search-result preview is an approximation by character count; real results depend on pixel width, device and the search engine's rewriting.
- The checks follow common recommendations and documented search engine behavior; they cannot predict rankings or guarantee indexing.
X-Robots-Tagvalues are split by commas; crawler-prefixed header values (such asgooglebot: noindex) are listed but not interpreted per crawler.- Fetch mode reaches only public hosts on ports 80, 443, 8080 and 8443, from one server location, without cookies or login.
- Social sharing tags are only counted here; the Open Graph Checker analyzes them in detail.
Security & privacy
In paste mode the HTML is parsed in your browser and never uploaded; scripts in it do not run and nothing it references is loaded. In fetch mode the URL is sent to the NetTools.tech server, which downloads the HTML and returns it to your browser for analysis; neither the URL nor the page is stored. The target site sees a request from our server's IP address with the NetToolsBot user agent. When pasting source from internal systems, remove anything confidential such as embedded tokens or personal data first, even though it stays local.
Related tools
- Open Graph Checker – link previews for social networks and chat apps (guide).
- Robots.txt Checker – crawl rules that decide whether meta tags are seen (guide).
- Sitemap Checker – the URLs you submit for crawling (guide).
- Page Size Checker – weight and resources of the same page (guide).
- Redirect Checker – where the URL leads before the HTML is read (guide).
Summary
Title, description, canonical and robots tags decide how search engines index and display a page, and small template mistakes in them have large effects. The NetTools.tech Meta Tag Analyzer reads these tags from the server-delivered HTML of a live page or from pasted source, without executing anything, and reports missing, conflicting and malformed values with clear severities. Treat its preview and length checks as guidance and verify indexing issues together with robots.txt, canonicals and status codes.
Frequently asked questions
How long should a title tag and meta description be?
Search engines truncate by pixel width, so there is no exact character limit. As a guide, titles of roughly 30–60 characters and descriptions of 70–160 characters usually display in full; the analyzer uses these ranges for its length checks.
Does the meta keywords tag help rankings?
No. Major search engines ignore it. The analyzer lists it as information because it does no harm, but it is not worth maintaining.
Why does the analyzer show different tags than my browser's inspector?
It reads the HTML as the server delivers it, without running JavaScript. Tags that a script adds or changes later are not seen, and some sites serve different HTML to automated requests.
What does the Indexable tile mean?
It shows No when a robots meta tag or the X-Robots-Tag header contains noindex or none, and Yes otherwise. It does not consider robots.txt, the HTTP status or the canonical link, so a Yes is not a guarantee that the page will be indexed.
Should the canonical URL point to the page itself?
For the main version of a page, yes: an absolute, self-referencing canonical is the usual setup. A canonical pointing elsewhere declares the page a duplicate of that URL, which is right for parameter or print variants and a problem otherwise.
Can I analyze a page that is not public yet?
Yes. Use Paste HTML with the page source from your staging system. It is parsed in your browser, so the HTML never leaves your device; enter the planned address in Page address to compare it with the canonical.
Why is noindex in my meta tag not working?
Search engines only see the tag if they may crawl the page. If robots.txt blocks the URL, the noindex is never read and the URL can still appear in results from links. Allow crawling and keep the noindex.