Meta tag generator
Fill in the page details and copy a complete, correctly escaped set of <head> tags: title, meta description, canonical, robots, Open Graph and X card. Leave a field empty and its tags are left out.
…What each tag does
| Tag | Used by | Purpose |
|---|---|---|
<title> | Search engines, browser tabs | The clickable headline in results |
meta description | Search engines | The snippet under the title, when Google uses it |
link rel="canonical" | Search engines | Names the preferred URL when duplicates exist |
meta robots | Search engines | noindex keeps the page out of results |
og:* | Facebook, LinkedIn, Slack, iMessage and most apps | Title, description and image for shared links |
twitter:* | X | Card type and image; X falls back to Open Graph tags for the rest |
On WordPress you usually do not paste these by hand
An SEO plugin prints all of these from the post title, excerpt and featured image, and lets you override them per post. The free Hydrogen SEO plugin does this with no front-end JavaScript. Pasting tags into a theme while an SEO plugin is active creates duplicates, and duplicate canonicals or titles are worse than none. Use the generator for static sites, landing pages built outside WordPress, or to see what correct output looks like.
Share image tips
Use a 1200 × 630 px image (1.91:1) under about 5 MB, served over HTTPS at an absolute URL. Keep text in the middle, since some apps crop to a square. After changing an image, platforms may keep the old one cached for a while.
Common questions
Do meta keywords still matter?
No. Google has ignored the meta keywords tag for years, so the generator does not include it.
Do I need both Open Graph and Twitter tags?
X reads Open Graph for the title, description and image when its own tags are missing, but it needs twitter:card to choose the large image layout. Including both is the safest option.
Should every page have a canonical tag?
Yes, a self-referencing canonical on each indexable page is a sensible default. It stops tracking parameters and duplicate URLs from splitting signals.