Slack link previews: why your unfurl is blank
Slack unfurls links with its own crawler and its own rules. When the preview never appears, it is almost always one of these five causes.
Key takeaways
- Slack's crawler needs your og tags in the raw HTML response — tags injected by client-side JavaScript are invisible to it.
- Private pages, bot-blocking rules and redirect chains all produce a silent, blank unfurl.
- Slack caches unfurls per workspace, so fix the tags and test with a URL Slack has not seen before.
Chris Bonney
CommonPoint LLC
When you paste a link into Slack, the Slackbot crawler fetches the page and expands it into a preview — a process Slack calls unfurling. When nothing appears, there is no error message anywhere. These are the five causes, in the order they actually happen.
1. The tags are not in the raw HTML
Single-page apps that render with client-side JavaScript serve an empty shell to crawlers. Slackbot does not run your JavaScript. View the page source — not the browser's inspector — and confirm the og: tags are present in the served HTML.
2. The page requires a login
Slackbot cannot sign in. If the URL sits behind authentication — an internal tool, a draft post, a paywalled page — the crawl returns a login screen and Slack shows nothing. Share a public URL or accept that private pages never unfurl.
3. A bot rule is blocking Slackbot
Aggressive WAF rules, rate limiters or a robots.txt that disallows Slackbot will quietly refuse the crawl. Check robots.txt for a Slackbot entry and your CDN or firewall logs for refused requests.
4. Redirect chains and shorteners
Every hop costs crawl time and some shorteners interpose a click page. Share the final destination URL so Slackbot reaches your tags in one request.
5. Slack already cached a bad unfurl
Slack remembers unfurls per workspace. If the first share of a URL happened before your tags existed, every later share in that workspace can repeat the blank result. Fix the tags, then test with a URL variant Slack has not seen — a tracking parameter works — before concluding anything.
What a good unfurl needs
<meta property="og:site_name" content="Example" /> <meta property="og:title" content="A headline under 60 characters" /> <meta property="og:description" content="Slack shows roughly 150–200 characters of this." /> <meta property="og:image" content="https://example.com/card.png" />
The checker on this site renders the Slack card as it will appear and measures the real image, so you can rule the tags in or out before you start digging through firewall logs.
Check your own page
Paste a URL into the free preview and checker to see all seven platform cards and a graded audit.
Open the tool