Meta tag generator (SEO and Open Graph)

A page's meta tags tell search engines and social apps what it is: the title and description searchers see, the canonical URL, and the Open Graph tags social apps read to build link previews, with matching Twitter card tags. Fill in the page details and the generator writes the tags, escaped and checked against our length budgets.

The full title, including the brand if your template adds one. It is measured exactly as typed.

The page's own full address, starting with https://. It is also written as og:url.

Written as og:site_name. Optional.

The full address of the image link previews show.

A description of what is in the image, not a caption.

px

0 leaves og:image:width out.

px

0 leaves og:image:height out.

language_TERRITORY, such as en_IN or en_US. Leave it empty to omit the tag; Open Graph then assumes en_US.

A normal page carries none. Choose noindex only for a page that must stay out of search results.

Tags generated

18 tags

title 502 px · description 143 characters

https://www.example.com › mugs

Handmade Ceramic Mugs in Six Glazes | Example Store

Browse handmade ceramic mugs in six glazes, each holding 350 ml. See every glaze in daylight photos and order online for delivery across India.

  • Pass · Title within 600 px502 of 600 px, measured as typed
  • Pass · Description 120–160 characters143 characters
  • Pass · Canonical is an absolute https URLhttps://www.example.com/mugs
  • Pass · og:image is an absolute URLset
  • Pass · og:image has alt text63 characters
  • Pass · Share image at least 1200 × 630 px1200 × 630 px
  • Pass · No robots tagnone written

HTML for the page's <head>

<title>Handmade Ceramic Mugs in Six Glazes | Example Store</title>
<meta name="description" content="Browse handmade ceramic mugs in six glazes, each holding 350 ml. See every glaze in daylight photos and order online for delivery across India." />
<link rel="canonical" href="https://www.example.com/mugs" />

<meta property="og:type" content="website" />
<meta property="og:url" content="https://www.example.com/mugs" />
<meta property="og:title" content="Handmade Ceramic Mugs in Six Glazes | Example Store" />
<meta property="og:description" content="Browse handmade ceramic mugs in six glazes, each holding 350 ml. See every glaze in daylight photos and order online for delivery across India." />
<meta property="og:site_name" content="Example Store" />
<meta property="og:locale" content="en_IN" />
<meta property="og:image" content="https://www.example.com/og/mugs.png" />
<meta property="og:image:width" content="1200" />
<meta property="og:image:height" content="630" />
<meta property="og:image:alt" content="Six handmade ceramic mugs in different glazes on a wooden shelf" />

<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="Handmade Ceramic Mugs in Six Glazes | Example Store" />
<meta name="twitter:description" content="Browse handmade ceramic mugs in six glazes, each holding 350 ml. See every glaze in daylight photos and order online for delivery across India." />
<meta name="twitter:image" content="https://www.example.com/og/mugs.png" />
<meta name="twitter:image:alt" content="Six handmade ceramic mugs in different glazes on a wooden shelf" />
Title width
502 px of 600Measured exactly as typed; nothing appended
Title length
51 characters
Description length
143 charactersOur house rule is 120–160; Google sets no limit
og:type
website
Twitter card
summary_large_image
Robots
No tag (Google's defaults: index, follow)
  • The title is measured exactly as you typed it, with nothing appended. If your site's template adds a brand after every title, type it in so 502 px is the real width.
  • The twitter:* tags repeat the same title, description and image. X's own card documentation could not be retrieved when we checked, so this tool writes the tag names without relying on any fallback between them and the og:* tags.

Which meta tags does a page need?

Every ordinary HTML page needs exactly one <title> element in its head; the HTML Standard requires it. After that come a meta description, which Google sometimes uses for the snippet, a rel="canonical" link naming the page's preferred URL, and Open Graph tags for link previews. Open Graph lists four required properties: og:title, og:type, og:image and og:url.

This generator measures the title in pixels with the Arial 20 px width table our own SEO audit uses, exactly as you type it, with nothing appended. If your template adds a brand such as " | Example Store" after every title, type it in so the measurement is the real one. The budgets, a title of at most 600 px and a description of 120 to 160 characters, are our house rules: Google sets no length limit for either and truncates both as needed to fit the device width.

Google asks for absolute URLs in rel="canonical": it supports relative paths but says they can cause problems in the long run, and the link only counts inside <head>. Google also prefers HTTPS pages over HTTP ones as canonical. A normal page needs no robots tag: Google says the default values are index, follow and don't need to be specified, so our framework leaves the tag out and adds noindex only to keep a page out of results.

Open Graph says a page with og:image should also give og:image:alt, a description of what is in the image. Meta recommends images of at least 1200 × 630 px for the best display on high-resolution devices, a ratio close to 1.91:1 so the whole image shows, and files no larger than 8 MB. The twitter:* tags repeat the same title, description and image; X's card documentation could not be retrieved when we checked, so this page makes no claim about how X reads them.

Every value is escaped before it is written: & becomes &amp;, < becomes &lt;, > becomes &gt; and, inside attribute values, " becomes &quot;. A double-quoted attribute can't contain a literal quotation mark, and browsers turn the entities back into the original characters.

<title>…</title>                          ← escaped text
<meta name="description" content="…" />
<link rel="canonical" href="https://…" />
<meta property="og:…" content="…" />       ← Open Graph uses property=
<meta name="twitter:…" content="…" />

escaping: & → &amp;   < → &lt;   > → &gt;   " → &quot;

What does each meta tag do, and which are required?

Tags this generator writes (and one it doesn't), from the HTML Standard, Google Search Central, ogp.me and Meta's sharing docs, checked 2026-10-20
TagRead byRequired?What the documentation says
<title>Browsers; Google (title links)Yes: exactly one in an ordinary HTML documentGoogle may also build a title link from og:title, h1 headings and other page text
meta name="description"Google (snippets)NoGoogle sometimes uses it when it describes the page more accurately than the page's own text
link rel="canonical"GoogleNoA strong signal for the preferred URL; accepted only in <head>; use absolute URLs
meta name="robots"Google and other crawlersNoThe default values are index, follow and don't need to be specified
meta name="keywords"Not Google SearchNoGoogle says it is not used and has no effect on indexing or ranking; not written here
og:titleOpen Graph consumers (link previews); Google may use it for title linksYes (Open Graph)The title as it should appear within the graph
og:typeOpen Graph consumersYes (Open Graph)website or article; a page without markup is treated as website
og:imageOpen Graph consumersYes (Open Graph)Meta: at least 1200 × 630 px, about 1.91:1, up to 8 MB
og:urlOpen Graph consumersYes (Open Graph)The canonical URL, used as the page's permanent ID
og:descriptionOpen Graph consumersOptionalA one to two sentence description
og:site_nameOpen Graph consumersOptionalThe name of the overall site
og:localeOpen Graph consumersOptionallanguage_TERRITORY; the default is en_US
og:image:altOpen Graph consumersShould be set whenever og:image isWhat is in the image, not a caption
og:image:width, og:image:heightOpen Graph consumers; Meta's crawlerOptionalMeta: lets its crawler render the image right away instead of downloading it first
twitter:card, :title, :description, :image, :image:altX (Twitter) cardsNot verifiedX's documentation could not be retrieved on 2026-10-20; tag names only

How to generate meta tags for a page

  1. 1
    Enter the title and descriptionType the page title exactly as it will appear, brand included, and the meta description.
  2. 2
    Add the canonical URL and share imagePaste the page's full https:// address, then the absolute URL of its share image with alt text and its size in pixels.
  3. 3
    Pick the page type, locale, card and robots optionChoose website or article, a locale such as en_IN, and leave the robots option on No robots tag for a normal page.
  4. 4
    Check the verdicts and copy the blockFix anything marked as failing, then paste the tags inside the page's <head>; the canonical link only counts there.

Frequently asked questions

What is the difference between og:title and the title tag?
The <title> element is the page's own title: browsers show it in the tab, and Google starts from it for the title link in results. og:title is an Open Graph property that apps read when they build a link preview. They can carry the same text, and Google lists og:title among the sources it may use for a title link.
Do I need a robots meta tag on every page?
No. Google says the default values are index, follow and don't need to be specified, so a normal page can leave the tag out; our framework does. Add noindex only to keep a page out of search results, and leave that page crawlable so Google can see the tag.
Should a canonical URL be absolute or relative?
Absolute. Google supports relative paths in rel="canonical" but says they can cause problems in the long run, so write the full address, such as https://www.example.com/mugs. The link is only accepted inside the page's <head>.
Does Google use the meta keywords tag?
No. Google says the meta keywords tag is not used by Google Search and has no effect on indexing and ranking at all, which is why this generator doesn't write one.
Why do ampersands and quotes in meta tags need escaping?
Because the browser would read them as markup. A double-quoted attribute value can't contain a literal quotation mark, and HTML doesn't allow ambiguous ampersands, so "Tom & Jerry" becomes Tom &amp; Jerry and a quote becomes &quot;. Browsers and crawlers decode the entities back to the original text.

Sources

Related tools

See all 73 free tools

Need a custom dev tool for your team?

We build internal tools, dashboards, APIs, and SaaS platforms. If you can describe it, we can ship it.

Built by CountryDevs · No signup · No ads · We count visits, never what you enter