<meta> tags in your HTML <head> that tell Facebook, LinkedIn, X/Twitter, Slack, Discord, and iMessage how to render your link as a preview card. The 4 required tags are og:title, og:description, og:image, and og:url. Our free OG meta generator builds the full tag block plus Twitter Card variants and shows a live preview of how your link will look on every major platform.Every link shared in 2026 — on Slack, in a Discord thread, in an iMessage, pinned to a Facebook page, posted on LinkedIn — gets unfurled into a preview card. That card is built from Open Graph meta tags published by Facebook in 2010 and now treated as the de facto standard for the web. Get them right and your link gets a clickable image, branded title, and value-prop description. Get them wrong and your link shows up as a bare URL with no card, often pulling a random image from the page or no image at all.
Our Open Graph meta generator outputs the full tag block (OG + Twitter Card + iMessage Smart App Banner support), shows a live render in 5 platform preview frames, and validates image dimensions against each platform’s spec. This guide covers every required and optional tag, the image dimensions that actually matter in 2026, and the gotchas that cause perfectly-tagged pages to render with no card at all.
The 4 required tags and 5 you should always add
| Tag | Required? | Notes |
|---|---|---|
og:title |
Required | ≤60 chars (truncated by Facebook on mobile around 65) |
og:description |
Required | 155–200 chars; truncated around 200 on most platforms |
og:image |
Required | 1200×630 PNG/JPG, <5 MB; absolute https URL |
og:url |
Required | Canonical URL — ensures dedupe across platforms |
og:type |
Recommended | website, article, video.movie, profile |
og:site_name |
Recommended | Brand name shown above title on Facebook |
og:image:alt |
Recommended | Alt text for screen readers — accessibility win |
twitter:card |
Recommended | summary_large_image for full-bleed preview |
twitter:site |
Optional | Your @handle for attribution analytics |
Image dimensions that actually render correctly
Every platform has its own crop box. Use 1200×630 px (1.91:1) as your canonical size — it works everywhere as a “summary large image”. File should be PNG or JPG, under 5 MB. Below 600×315 will render as a thumbnail rather than a full card on Facebook.
- Facebook / LinkedIn: 1200×630, full-bleed
- X / Twitter (summary_large_image): 1200×600 minimum, crops to 2:1
- WhatsApp: minimum 300×200, square crop
- Slack / Discord: respects original; 1200×630 is safe
- iMessage: uses og:image, square-crops aggressively — keep important content centred
Keep critical text (logo, headline) within the centre 1200×450 zone so square crops don’t decapitate it.
How to generate Open Graph tags for any page
- Open the Open Graph generator
- Fill in title, description, canonical URL, image URL, and site name
- Pick the og:type (most pages:
website; blog posts:article) - Watch the live preview update in 5 platform frames
- Click Copy meta block — paste into the
<head>of your HTML before</head> - Validate with the Facebook Sharing Debugger after publishing
The exact tag block our generator produces
For a typical blog post the generator outputs about 14 tags. The structure looks like this (real values substituted from your inputs):
<meta property="og:title" content="Open Graph Meta Generator [2026]">
<meta property="og:description" content="Generate OG and Twitter Card tags...">
<meta property="og:image" content="https://simpletool.io/og/og-generator.png">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta property="og:image:alt" content="Open Graph generator preview">
<meta property="og:url" content="https://simpletool.io/tools/open-graph-meta-generator/">
<meta property="og:type" content="website">
<meta property="og:site_name" content="simpletool.io">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="Open Graph Meta Generator [2026]">
<meta name="twitter:description" content="Generate OG and Twitter Card tags...">
<meta name="twitter:image" content="https://simpletool.io/og/og-generator.png">
<meta name="twitter:image:alt" content="Open Graph generator preview">
Common gotchas
- Facebook caches your tags for ~30 days. If you change og:image, the old image keeps showing. Force a refresh with the Sharing Debugger by clicking “Scrape Again” — until you do, every share stays stuck on the old card.
- Relative image URLs silently fail.
og:imagemust be an absolute URL starting withhttps://./og/image.pngis treated as missing by every parser. - Slack and Discord ignore some Twitter tags. Both prefer
og:tags first and only fall back totwitter:. Always set both, don’t rely on Twitter-only tags. - WebP and AVIF are widely supported now — but Facebook still occasionally renders them as a broken image on iOS Messenger. Use PNG/JPG for the
og:image; serve modern formats elsewhere on your page. - X/Twitter dropped the
twitter:cardrequirement in 2024 — if you only set OG tags, X auto-detects them. Butsummary_large_imagestill controls whether the image renders full-bleed or thumbnail-with-text-beside. - Bots may not execute JavaScript. Tags injected after page load (via React/Vue without SSR) are invisible to most scrapers. OG tags must be in the initial HTML response.
When NOT to use a generator
If your CMS already produces OG tags (WordPress + Yoast/RankMath, Shopify, Webflow, Next.js with the Metadata API), do not paste a second block on top — duplicate tags cause unpredictable rendering. Instead, edit the values inside your CMS or framework. A generator is for static sites you control by hand, custom landing pages outside your CMS, or one-off pages where you need to override the inherited template.
Frequently asked questions
Do I need both Open Graph and Twitter Card tags?
No, but it is the safest approach. Modern X and most aggregators will fall back to OG tags if Twitter-specific tags are missing. Set both for maximum coverage; the cost is 4 extra meta tags. The most common pattern is full OG + a single twitter:card=summary_large_image declaration.
Why doesn’t my Facebook preview update after I changed the image?
Facebook caches your og:image for roughly 30 days. Open the Sharing Debugger, paste your URL, and click Scrape Again. The cache clears immediately and any future shares pick up the new image. LinkedIn has a similar tool at Post Inspector.
What’s the right size for og:image in 2026?
1200×630 px (1.91:1 ratio), under 5 MB, PNG or JPG, hosted on https. This works on Facebook, LinkedIn, X (summary_large_image), Slack, Discord, and most aggregators. Keep critical content within the centre 1200×450 zone for platforms that crop to square.
Can I generate OG tags for a Next.js or React app?
Yes — but you should use the framework’s built-in metadata API rather than inject tags client-side. Next.js 13+ has generateMetadata in the App Router; Remix has the meta export; Nuxt has useSeoMeta(). Tags injected after JavaScript runs are invisible to most scrapers. Use this generator to compose values, then paste them into the framework’s metadata config.
Is my data uploaded?
No. The generator runs in your browser. We never see your title, description, or URL. The preview frames are rendered locally in your browser using the values you typed.
What does og:type “article” change?
It unlocks article-specific tags like article:published_time, article:author, article:section, and article:tag. Some platforms (notably Facebook News and Apple News) prioritise content with proper article tags. For a regular landing page, og:type=website is the right choice.
Related tools and guides
- Open Graph Meta Generator
- URL Slug Generator
- Character Counter (for og:description limits)
- Image Resizer (for 1200×630 og:image)
- All social media tools
![Open Graph Meta Generator: Build OG & Twitter Tags [2026]](https://simpletool.io/blog/wp-content/uploads/2026/05/open-graph-meta-generator.png)
![Character Counter: Live Word & Letter Count [2026]](https://simpletool.io/blog/wp-content/uploads/2026/05/character-counter.png)
![URL Slug Generator: SEO-Friendly URLs in Seconds [2026]](https://simpletool.io/blog/wp-content/uploads/2026/05/url-slug-generator.png)