Guide
Microsoft Teams link preview not working
You paste a URL in Teams and get a bare link, or a title with no image. CardScope does not draw a Teams preview. A check shows X, LinkedIn, Slack, Discord, and iMessage. This page is the tag list Microsoft publishes for a website preview, and the things they do not publish.
Use a check to see whether a title, a description, and og:image are on the live page. That is the useful part. It is not a picture of Teams, and it will not tell you what Teams has cached.
What Microsoft documents
The tag table is on Microsoft’s Share to Teams page, under “Craft your website preview.” It describes the card inserted when a website is shared into a channel. To show a preview, Microsoft says you must include either a thumbnail image, or both a title and a description. For the best result, include all three. If the URL requires authentication, you can still share the link, but the preview is not created.
| What you want | HTML | Open Graph |
|---|---|---|
| Title | <title> |
og:title |
| Description | <meta name="description"> |
og:description |
| Thumbnail | None listed | og:image |
Microsoft says you can use either the HTML versions or the Open Graph versions. The thumbnail column has no HTML fallback: the image is og:image. That page does not mention Twitter Card tags, and it does not say whether a relative og:image is accepted. Ship an absolute https:// image anyway — that is what the other clients need, and it is spelled out in absolute OG image URL. Length and wording for the title and description are in OG title & description.
If the tags only appear after JavaScript runs, a client that reads the server HTML will not see them. See JavaScript / SPA previews. If the page answers bots with a challenge or a login redirect, see crawler blocked. Microsoft’s own line is narrower than a firewall essay: a URL that requires authentication does not get a preview.
A minimal set
This matches the table: a title, a description, and an image, with Open Graph filled in so the thumbnail exists.
<title>A specific title, not the brand name</title>
<meta name="description" content="One sentence that matches the page.">
<meta property="og:title" content="A specific title, not the brand name">
<meta property="og:description" content="One sentence that matches the page.">
<meta property="og:image" content="https://example.com/og.png">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
Width and height are not in Microsoft’s table. They are there because other previews use them, and because you will check this page in CardScope alongside Teams. 1200×630 is the usual size, not a figure Microsoft publishes for Teams on that page.
Two Teams features that are not this preview
Schema.org micro-capabilities. Microsoft also documents a richer preview built from schema.org JSON-LD. If the page does not have those templates, Teams falls back to the ordinary website preview. You do not need JSON-LD for a basic title, description, and image. The write-up is micro-capabilities for website links.
A Teams app card. Microsoft’s docs call this link unfurling: a Teams app returns its own Adaptive Card for a URL. They document a 30 minute cache for that result, and a cache policy the app can return. That is a product you build and install. It is not a setting on a normal website, and CardScope does not do it. The 30 minute figure is not published for an ordinary pasted link in the Share to Teams article.
When the preview still will not update
Microsoft does not publish a debugger for ordinary website previews. There is no Teams equivalent, in those docs, of LinkedIn’s Post Inspector or Meta’s Sharing Debugger. They also do not publish how long a normal website preview is kept.
Some support replies tell the person looking at a stale card to wait, or to clear the Teams app cache on their own computer. That affects the app on that machine. It is not a documented way for you to refresh the preview for everyone else, and CardScope cannot do it.
Fix the live tags first. Confirm them with a check: title, description, absolute og:image, page reachable without a login. If Teams is still stale after that, you are waiting on Teams, not on another round of meta tags. For the apps that do have a public rescrape tool, the steps are in clear Open Graph cache. That guide does not clear Teams, and neither does CardScope.
FAQ
Does CardScope show a Microsoft Teams preview?
No. The five previews are X, LinkedIn, Slack, Discord, and iMessage. Teams is not one of them. The check is still worth running, because it shows whether the title, description, and og:image are on the page Teams is documented to read. It does not draw the Teams card, and it does not clear a Teams cache.
Which tags does Microsoft document?
Either a thumbnail, or both a title and a description. All three is what they recommend. Title: <title> or og:title. Description: meta name="description" or og:description. Thumbnail: og:image only. A URL that requires sign-in does not get a preview.
Is the 30 minute cache the Teams rule for my homepage?
Not according to the website-preview article. Thirty minutes is documented for a Teams app that returns its own card. Microsoft does not publish a cache lifetime, or a public debugger, for a normal pasted website.
What does a CardScope check cost?
The five previews and the fix checklist are Pro: $19 once. No account. A sample report is the way to see that result before you pay. We parse HTML in memory and discard it — we do not store the page. The sample is not a Teams preview either.