> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hadoseo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Meta Tags Checker

> Analyze and validate your page's meta tags for SEO

## Overview

The **Meta Tags Checker** analyzes all meta tags on your page and provides recommendations for improving SEO.

<Card title="Try It Free" icon="external-link" href="https://hadoseo.com/free-meta-tags-checker">
  Test your site at hadoseo.com/free-meta-tags-checker
</Card>

## What It Checks

The tool analyzes:

* **Basic meta tags** - title, description, keywords
* **Open Graph tags** - og:title, og:image, etc.
* **Twitter tags** - twitter:card, twitter:title, etc.
* **Technical tags** - canonical, robots, viewport
* **Structured data** - JSON-LD schema markup

## How to Use

<Steps>
  <Step title="Enter your URL">
    Paste the URL to analyze:

    ```
    https://yourdomain.com/page
    ```
  </Step>

  <Step title="Click Analyze">
    The tool fetches and parses all meta tags.
  </Step>

  <Step title="Review Report">
    See:

    * All detected meta tags
    * Missing required tags
    * Recommendations for improvement
  </Step>
</Steps>

## Essential Meta Tags

### SEO Meta Tags

| Tag                         | Purpose                      | Recommended Length |
| --------------------------- | ---------------------------- | ------------------ |
| `<title>`                   | Page title in search results | 50-60 characters   |
| `<meta name="description">` | Search result snippet        | 150-160 characters |
| `<link rel="canonical">`    | Preferred URL for duplicates | Full absolute URL  |

### Technical Meta Tags

| Tag                      | Purpose               | Value                                 |
| ------------------------ | --------------------- | ------------------------------------- |
| `<meta name="viewport">` | Mobile responsiveness | `width=device-width, initial-scale=1` |
| `<meta name="robots">`   | Crawling instructions | `index, follow` (default)             |
| `<meta charset>`         | Character encoding    | `UTF-8`                               |

### Open Graph Tags

| Tag              | Purpose                               |
| ---------------- | ------------------------------------- |
| `og:title`       | Social share title                    |
| `og:description` | Social share description              |
| `og:image`       | Social share image                    |
| `og:url`         | Canonical URL                         |
| `og:type`        | Content type (website, article, etc.) |
| `og:site_name`   | Your site/brand name                  |

### Twitter Tags

| Tag                   | Purpose                           |
| --------------------- | --------------------------------- |
| `twitter:card`        | Card type (summary\_large\_image) |
| `twitter:title`       | Twitter title                     |
| `twitter:description` | Twitter description               |
| `twitter:image`       | Twitter image                     |

## Complete Example

A well-optimized page should have:

```html theme={null}
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  
  <!-- SEO -->
  <title>Product Name - Brand | Category</title>
  <meta name="description" content="A compelling 150-160 character description that encourages clicks from search results.">
  <link rel="canonical" href="https://yourdomain.com/page">
  <meta name="robots" content="index, follow">
  
  <!-- Open Graph -->
  <meta property="og:title" content="Product Name - Brand">
  <meta property="og:description" content="Social share description">
  <meta property="og:image" content="https://yourdomain.com/og-image.png">
  <meta property="og:url" content="https://yourdomain.com/page">
  <meta property="og:type" content="website">
  <meta property="og:site_name" content="Brand Name">
  
  <!-- Twitter -->
  <meta name="twitter:card" content="summary_large_image">
  <meta name="twitter:title" content="Product Name - Brand">
  <meta name="twitter:description" content="Twitter description">
  <meta name="twitter:image" content="https://yourdomain.com/twitter.png">
  
  <!-- Structured Data -->
  <script type="application/ld+json">
  {
    "@context": "https://schema.org",
    "@type": "WebPage",
    "name": "Product Name",
    "description": "Page description",
    "url": "https://yourdomain.com/page"
  }
  </script>
</head>
```

## Common Issues

<AccordionGroup>
  <Accordion title="Title too long" icon="circle-exclamation">
    **Issue:** Titles over 60 characters get truncated in search results.

    **Fix:** Keep titles concise and front-load important keywords.

    ```html theme={null}
    <!-- Too long -->
    <title>The Ultimate Complete Guide to Everything You Need to Know About SEO</title>

    <!-- Better -->
    <title>Complete SEO Guide | Brand Name</title>
    ```
  </Accordion>

  <Accordion title="Missing canonical tag" icon="circle-exclamation">
    **Issue:** Can cause duplicate content problems.

    **Fix:** Add a canonical tag pointing to the preferred URL:

    ```html theme={null}
    <link rel="canonical" href="https://yourdomain.com/page">
    ```
  </Accordion>

  <Accordion title="Duplicate meta descriptions" icon="circle-exclamation">
    **Issue:** Same description across multiple pages.

    **Fix:** Write unique descriptions for each page that accurately summarize the content.
  </Accordion>

  <Accordion title="Missing structured data" icon="circle-exclamation">
    **Issue:** No JSON-LD schema markup.

    **Fix:** Add relevant schema based on content type:

    * `WebSite` for homepage
    * `Article` for blog posts
    * `Product` for e-commerce
    * `Organization` for about pages
  </Accordion>
</AccordionGroup>

## Structured Data Types

Common schema.org types:

| Type             | Use For                |
| ---------------- | ---------------------- |
| `WebSite`        | Homepage with search   |
| `Organization`   | Company info           |
| `Article`        | Blog posts, news       |
| `Product`        | E-commerce products    |
| `FAQPage`        | FAQ sections           |
| `BreadcrumbList` | Navigation breadcrumbs |

### Example: Article Schema

```html theme={null}
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "Article Title",
  "description": "Article summary",
  "image": "https://yourdomain.com/article-image.jpg",
  "author": {
    "@type": "Person",
    "name": "Author Name"
  },
  "datePublished": "2024-01-15",
  "dateModified": "2024-01-20"
}
</script>
```

<CardGroup cols={2}>
  <Card title="Bot Crawler Test" icon="spider" href="/tools/seo-bot-crawler-test">
    Test search engine visibility
  </Card>

  <Card title="OG Preview Checker" icon="share-nodes" href="/tools/og-preview-checker">
    Test social media previews
  </Card>
</CardGroup>
