Start With the Page, Not Facebook
Facebook can only show the image it can find and fetch. Before changing plugins, themes, CDN settings, or random cache buttons, check what the page sends.
Check the page first
Paste the URL into MyOG.social and inspect the tags, image URL, dimensions, and preview before opening Facebook's debugger.
The Fast Checklist
- Open the URL in MyOG's OG Preview tool and confirm which
og:imageFacebook can see. - Check whether the page has more than one
og:imagetag. - Open the image URL directly. It should be public, fast, and return an image.
- Confirm the image is large enough. I use 1200 by 630 for Facebook link cards.
- Paste the page URL into Facebook Sharing Debugger and re-scrape it.
- If the tag setup keeps breaking page by page, replace it with one site-wide tag.
Wrong Image
When Facebook shows the wrong image, I look for duplicate tags first. It is common on WordPress and CMS sites where a theme, SEO plugin, social plugin, and page builder all think they own Open Graph tags.
<meta property="og:image" content="https://example.com/old-image.png">
<meta property="og:image" content="https://example.com/new-image.png">Pick one source of truth. If Yoast, Rank Math, Jetpack, a theme option, and a custom code snippet all emit social tags, disable the duplicates and retest the page. Do not keep adding more tags until Facebook guesses right.
Old Image
If MyOG's checker shows the new image but Facebook still shows the old one, the page is probably fixed and Facebook's cached preview is stale.
Open Facebook Sharing Debugger, paste the page URL, and use the re-scrape action. For stubborn cases, change the image URL too. A versioned URL gives Facebook a new asset to fetch instead of asking it to notice that the bytes behind the old URL changed.
No Image
No image usually means Facebook cannot use the image URL. These are the checks I run before touching the design:
- The tag is in the first HTML response before client-side JavaScript runs.
- The image URL is absolute and starts with
https://. - The image request returns
200with an image content type. - The image is not behind login, bot protection, hotlink protection, or a redirect loop.
- The image is big enough for a link card and small enough to fetch quickly.
The Open Graph protocol also supports structured image properties like og:image:width, og:image:height, og:image:type, and og:image:alt. I add them because they remove guesswork.
The Site-Wide Fix
If this happens on one important page, fix the page. If it happens across a site, stop fighting page-by-page social images.
MyOG.social's paid path is one tag that generates the OG image from each URL. The page stays the source of truth. MyOG reads the title, description, brand signals, colors, logos, and useful images, then returns a crawler-friendly preview image.
<meta property="og:image" content="https://api.myog.social/og?a=ABCD&url=https%3A%2F%2Fexample.com%2Fpage">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta property="og:image:type" content="image/png">
<meta property="og:image:alt" content="Generated social preview for this page">That gives you the path I want for this kind of problem: checker first, before/after preview second, one-tag site-wide fix after that. No template spreadsheet. No manual image pipeline for every page worth sharing.
Related Fixes
- How to clear cached OG images - use this when the page is fixed but the preview is stale
- OG image test guide - broader crawler debugging checklist
- How to add OG images to WordPress - plugin setup and SEO plugin compatibility notes
Fix the preview path
Check the current Facebook card first. If the page needs a better image, MyOG.social can generate one from the URL and serve it site-wide with one tag.
Already have an account?