HTML Meta Tags Validator
DataValidate HTML meta tags for SEO — title, description, og:title, og:description, canonical, and robots. Paste HTML for an instant meta tag audit.
Reviewed by the thecalcu.com team · Last updated July 18, 2026
What is a Meta Tags?
The HTML Meta Tags Validator checks the <head> section of any web page for the meta tags that matter most to search engines and social platforms. Paste a <head> block or a full HTML document, and the validator runs nine structured checks in your browser, returning a Valid or Invalid badge alongside a per-check breakdown with exact pass, warning, or failure status for each tag.
Meta tags are invisible to page visitors but carry outsized weight in how a page performs in organic search and on social media. A missing <title> tag means Google has to invent one; a <meta name="description"> that exceeds 160 characters gets truncated in search results; absent Open Graph tags mean WhatsApp and LinkedIn show a plain URL with no preview image when someone shares your link. These are not edge-case concerns, they affect every page, every share, and every search impression.
The validator covers the nine checks that account for the majority of meta tag mistakes found in real-world audits:
| Check | What passes |
|---|---|
<title> presence |
Tag exists |
<title> length |
10–60 characters |
<meta name="description"> presence |
Tag with non-empty content |
<meta name="description"> length |
50–160 characters |
<meta name="viewport"> |
Any viewport tag present |
<meta charset> |
Any charset declaration present |
og:title |
Open Graph title present |
og:description |
Open Graph description present |
og:image |
Open Graph image URL present |
<link rel="canonical"> |
Canonical href present |
<meta name="robots"> |
Present (informational only) |
Because validation runs entirely client-side, no HTML content is transmitted to any server. You can paste staging pages, internal drafts, or confidential content without concern.
Why Use an HTML Meta Tags Validator?
Manual audits of meta tags require opening source code, scanning through dozens of lines of markup, and remembering which length limits apply to which tags, a process that is error-prone and slow when repeated across tens or hundreds of pages.
The most common mistakes are easy to miss:
- A title that is 63 characters long looks fine in the editor but will be truncated in Google's SERPs
- An
og:imagetag pointing to a relative path (/images/hero.jpg) instead of an absolute URL (https://example.com/images/hero.jpg) silently breaks all social previews - A
<link rel="canonical">that is absent on paginated or filtered URLs lets search engines index duplicate content and split ranking signals
This validator surfaces those issues in seconds. It is particularly useful before a page goes live, during a CMS migration, or when auditing a site you have just taken ownership of. For a complementary check on your HTML structure itself, use the HTML Validator alongside this tool.
Who Should Use This Validator?
SEO specialists and consultants use it to audit client sites quickly before presenting findings. Running the validator on key landing pages surfaces the most common technical SEO gaps, missing canonical tags, thin descriptions, absent OG images, without requiring crawl access or third-party subscriptions.
Frontend developers and web agencies use it as a pre-deploy checklist item. Pasting the built <head> output into the validator before a site launch confirms that all required tags are present and within limits, catching regressions introduced during CMS theming or template changes.
Content editors and marketing teams use it when publishing new pages or blog posts through a CMS. Even with a well-configured CMS, a forgotten custom description field or a broken image URL in an OG tag can go unnoticed until a share on social media reveals a blank preview.
Independent bloggers and site owners who manage their own WordPress, Ghost, or Webflow sites use it to verify that SEO plugin settings are rendering correctly in the actual HTML output, plugin configuration does not always match what ends up in the document source.
QA engineers building pre-release checklists include meta tag validation alongside performance and accessibility audits. Pair this validator with the Robots.txt Validator to cover the full set of crawl and indexing controls in a single session. If you are generating OG tags programmatically, use the Open Graph & Twitter Card Generator to produce the markup, then validate it here.
What Insights Does the Meta Tags Validator Give You?
The validator returns two levels of output: a top-level Valid / Invalid badge and a per-check detail list. Understanding what each check actually reports helps you act on the results.
Title presence and length, The check first confirms the <title> element exists, then measures its text content length. A title that exists but is fewer than 10 characters triggers a warning rather than a hard failure; a missing title triggers a failure. The length window (10–60) reflects where truncation occurs in standard Google SERP display at 1280 × 800 viewport.
Description presence and length, The check reads the content attribute of <meta name="description">. An empty content="" counts as missing. The 50–160 character window is a practical guideline based on observed snippet display across major search engines; Google may still rewrite the snippet using on-page text, but a well-crafted description within this range appears unchanged more often.
Viewport, A binary check: the tag is either present or absent. Any <meta name="viewport"> content value passes, the validator confirms presence, not the specific content value.
Charset, Confirms a charset declaration exists in any form (<meta charset="UTF-8"> or the older <meta http-equiv="Content-Type" content="text/html; charset=utf-8">). The validator does not prescribe a specific charset, it flags pages with no declaration at all.
Open Graph trio (og:title, og:description, og:image), Each is checked independently. An absent og:image is flagged separately from an absent og:title, so you can see exactly which social preview elements are missing rather than a single combined "OG tags missing" message.
Canonical, Confirms <link rel="canonical" href="..."> exists with a non-empty href. The validator checks presence only, it does not follow the URL or verify it resolves to the correct page.
Robots, Reported as informational (ℹ): the tag is noted if present, and the absence of a robots tag is not treated as a failure (the default crawl behaviour when the tag is absent is to allow indexing and following).
The scope of this tool is format and presence validation. It does not check whether your canonical URL resolves, whether your og:image returns a valid image, or whether your description is compelling copy. Use URL Validator to check individual URL values extracted from the markup.
How to use this Meta Tags calculator
Get the page source. In your browser, navigate to the page you want to check and press
Ctrl+U(Windows/Linux) orCmd+Option+U(Mac) to view the page source. Alternatively, right-click anywhere on the page and select View Page Source. If your tags are injected by JavaScript after page load, open browser DevTools (F12), click the Elements tab, and copy the content of the<head>element from the rendered DOM instead.Copy the head section. You can paste the entire HTML document or just the content between
<head>and</head>. The validator will locate the relevant tags either way. Copying only the head section keeps the paste area manageable for large pages.Paste into the input box. Click into the field labelled "Paste HTML (head section or full page)" and paste your copied markup with
Ctrl+V/Cmd+V. The default placeholder shows a minimal valid example so you can see the expected input format.Click Validate. The validator parses the pasted HTML in your browser and runs all nine checks. No data is sent to any server, processing happens locally and returns results immediately.
Read the top-level badge. The Result badge at the top shows Valid (green) if every check passes, or Invalid (red) if one or more checks fail. A page with only warnings (tags present but outside recommended lengths) may show as Invalid depending on your configuration, read the detail lines to distinguish hard failures from advisory warnings.
Work through the per-check detail lines. Each check appears with a status icon:
- ✓, present and within recommended limits
- ⚠️, present but outside the recommended length range
- ✗, missing entirely
- ℹ, informational (robots tag: noted but not scored)
Focus first on ✗ failures, then address ⚠️ warnings in order of SEO impact (title length and description length typically matter most).
Edit, re-paste, and re-validate. Fix the flagged issues in your CMS or source file, copy the updated source, and paste it back into the input box to confirm all checks now pass before deploying.
Show formula & methodology ↓Show less ↑
Formula & Methodology
The HTML Meta Tags Validator parses pasted markup using browser-native DOM parsing (DOMParserwithtext/htmlmime type). This means the parsed tree matches exactly what a browser would produce from the same markup, no custom HTML parser is involved. Once the DOM is built, each check queries specific elements and attributes. ### Check rules in detail Title checkElement query: document.querySelector('title') Text length: title.textContent.trim().length Pass: exists AND length >= 10 AND length <= 60 Warning: exists AND (length < 10 OR length > 60) Fail: element not foundMeta description checkElement query: document.querySelector('meta[name="description"]') Content length: element.getAttribute('content').trim().length Pass: exists AND length >= 50 AND length <= 160 Warning: exists AND (length < 50 OR length > 160) Fail: element not found OR content is emptyViewport checkElement query: document.querySelector('meta[name="viewport"]') Pass: element found (content value not checked) Fail: element not foundCharset checkElement queries: document.querySelector('meta[charset]') document.querySelector('meta[http-equiv="Content-Type"]') Pass: either element found Fail: neither foundOpen Graph checks (og:title, og:description, og:image)Element query: document.querySelector('meta[property="og:title"]') (etc.) Pass: element found AND content attribute is non-empty Fail: element not found OR content is emptyCanonical checkElement query: document.querySelector('link[rel="canonical"]') Pass: element found AND href attribute is non-empty Fail: element not found OR href is emptyRobots checkElement query: document.querySelector('meta[name="robots"]') Result: informational only, presence noted, absence not penalised### Valid example headhtml <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>SIP Calculator, Monthly Investment Returns</title> <meta name="description" content="Calculate your SIP returns with our free online SIP calculator. Enter your monthly amount, rate, and tenure to see projected corpus."> <meta property="og:title" content="SIP Calculator, Monthly Investment Returns"> <meta property="og:description" content="Free SIP calculator for Indian investors. See total corpus, wealth gained, and year-by-year growth."> <meta property="og:image" content="https://thecalcu.com/og/sip-calculator-india.jpg"> <link rel="canonical" href="https://thecalcu.com/sip-calculator-india/"> </head>Result: all nine checks pass. The title is 43 characters, the description is 110 characters, OG trio is complete, canonical is present, and charset and viewport are declared. ### Invalid example headhtml <head> <title>Home</title> <meta name="description" content="Welcome to our website. We offer various services and products for your needs. Please browse our site to learn more about what we do and how we can help you achieve your goals today."> <meta property="og:title" content="Home"> </head>Result: multiple failures. -<title>, ⚠️ "Home" is 4 characters, below the 10-character minimum -<meta name="description">, ⚠️ 181 characters, above the 160-character maximum -<meta name="viewport">, ✗ missing -<meta charset>, ✗ missing -og:description, ✗ missing -og:image, ✗ missing -<link rel="canonical">, ✗ missing
Frequently Asked Questions