Cached old image
Slack caches unfurl data for about 30 minutes. If you recently changed og:image, the old one persists until the cache expires. To force a refresh: delete the message, wait a few minutes, and re-post. Or append ?v=2 to the URL so Slack treats it as new.
Missing og:image
Without an og:image tag, Slack may grab a random image from the page or show nothing. Verify it exists:
curl -s https://yoursite.com/page | grep -i "og:image"Image too large or slow
Slack’s image proxy has tight timeouts. Images over 1MB or on slow servers get dropped silently. Keep OG images under 1MB and make sure your image server responds fast.
Relative URL
og:image must be an absolute URL:
<!-- Wrong -->
<meta property="og:image" content="/images/preview.jpg">
<!-- Correct -->
<meta property="og:image" content="https://example.com/images/preview.jpg">
Slackbot can’t resolve relative paths.
Oversized dimensions
Images exceeding 25,000px on the longest side or 45 million total pixels get silently dropped. Resize if needed.
Diagnosis steps
- Use the unfurl debugger to see which image URL Slack extracted
- Open the
og:imageURL in a browser and confirm it loads - Check file size (under 1MB) and dimensions (within limits)
- Check for redirects: the image proxy may not follow them; use a direct URL
Verify the fix
Delete existing Slack messages with the URL, wait a few minutes, re-post. Check the unfurl debugger to confirm Slack sees the correct image.