On this page
- what this guide does
- the three questions hiding inside "tiktok link preview card"
- TikTok doesn't render link preview cards in the feed (the part nobody says clearly)
- when your tiktok.com URL is shared somewhere else, here's exactly what happens
- TikTokSpider — what crawls your destination URL when someone shares it INTO TikTok
- TikTok Shop product cards — the one rich card TikTok actually renders in-feed
- the part the SERP refuses to mention — the click after the card
- what you can actually do (the tactical close)
- frequently asked
- what to do next
- related
what this guide does
When you scroll TikTok, you see videos — not link cards. So "what does my TikTok link preview look like?" turns out to be three different questions wearing one outfit. This guide pulls them apart, answers each one with what TikTok actually does (not what other guides assume), and explains the part nobody mentions: even when a preview card renders, the click that follows runs into a separate problem the card can't solve.
If you're here for the bio-link rules, the rules and steps for the bio website field live in their own writeup. This page is the mental-model installer for what happens to your link as a card on each surface — what TikTok renders, what TikTok refuses to render, and what other platforms render when your tiktok.com URL is shared to them.
the three questions hiding inside "tiktok link preview card"
Most searches for "tiktok link preview card" come from one of three different mental states. The answers diverge sharply depending on which one brought you here.
Question A — "When I post a link on TikTok, why doesn't it show a card like on Facebook?" The most common search behind the head term. Short answer: because TikTok's feed is video-only. Links live on the profile (website field), in comments, in DMs, in TikTok Shop product slots — each with different rendering rules. None of those surfaces show a Facebook-style rich link card in the feed itself.
Question B — "When my tiktok.com video URL is shared somewhere else (Facebook, iMessage, Slack, Discord, X), what does the card look like?" Different question entirely. This is about what other platforms' crawlers extract from a tiktok.com page. The Open Graph tags on TikTok video pages are consistent; the resulting card on each external platform follows their crawler's behavior, not TikTok's. Most articles on this query don't touch this question at all.
Question C — "Why doesn't my TikTok Shop product card show up anymore?" Different system again — TikTok Shop product cards are a first-party feature, not an OG-based unfurling, and the rules are tied to your Shop seller status and product-linking workflow.
This page covers all three. Use the section headings to skip to your question, or read straight through — the three answers connect.
TikTok doesn't render link preview cards in the feed (the part nobody says clearly)
The myth that needs busting first: there is no Facebook-style rich link card inside TikTok's feed. Not on the For You page. Not on Following. Not on the profile-grid view. Not on LIVE. The feed is built around video — creator handle, sound metadata, engagement buttons, and the video itself. There is no "link card" component layered into any of these surfaces. You cannot post a video that includes a clickable rich link card the way you can on Facebook, where a shared URL unfurls into an image + title + description block embedded in the post.
This is the single piece of information most "tiktok link preview card" searchers are missing, and getting it straight saves a lot of confused experimentation.
Where links DO live on TikTok, and what they render as on each surface:
| Surface | What's there | What it renders as | Rich card? |
|---|---|---|---|
| Profile bio website field | Single clickable URL | Plain clickable text below bio | No |
| Profile bio description text | URL as plaintext (within 80-char bio) | Plain non-clickable text | No |
| Comments | URL as text | Plain non-clickable text in most cases (sometimes auto-linked on web) | No |
| DMs (external link sent to a TikTok user) | URL preview | Sometimes a thumbnail card; inconsistent | Partial — see below |
| TikTok Shop product slot | Product card from your Shop | Native first-party product card with image + title + price | Yes — but not OG-based |
| LIVE shopping cards | Product card pinned to a live stream | Native first-party card | Yes — Shop product only |
Two things to internalize from this table:
- The "rich card" you're imagining isn't a thing in any TikTok feed surface.
- The exception (TikTok Shop product cards) is its own system, not an OG-tag-driven unfurling, and the eligibility rules are independent of the bio-link rules.
The bio website field is the most common point of confusion. Creators add a URL, expect it to render as a Facebook-style card next to their bio, and find a plain blue link instead. That's working as designed. The eligibility taxonomy lives here if you want the rules around who gets the field in the first place. The card it renders as, however, isn't a lever — it's text, and it stays text.
when your tiktok.com URL is shared somewhere else, here's exactly what happens
This is the section the rest of the SERP doesn't have, and it's where the developer/marketer searcher gets actual value.
When someone copies a TikTok video link — whether the full tiktok.com/@user/video/... URL or the short vm.tiktok.com/... URL — and pastes it elsewhere, the destination platform's crawler hits the URL and constructs a card from whatever it finds. TikTok video pages serve OG tags consistently enough by content type that you can predict what each destination platform will render. The variation in card appearance is downstream of each platform's renderer, not of TikTok's metadata.
On Facebook (Messenger, News Feed, Pages): Facebook's facebookexternalhit/1.1 crawler reads the OG tags (og:title, og:description, og:image, og:video, og:type) and renders an embedded preview that lets the viewer play the video inline on Facebook without leaving. This isn't standard OG behavior — it's a long-standing embed contract between Facebook and TikTok for video unfurls. The card shows thumbnail, creator handle, and a play button. Sharing a TikTok URL embeds a preview of the video automatically, confirmed across both Messenger and News Feed.
On iMessage: iMessage uses its own preview-fetching service. For tiktok.com URLs, it generally renders a card with the video thumbnail, title, and a tap-to-open behavior that launches the TikTok app if installed, falling back to mobile Safari. More reliably present than Discord, and almost always present for full tiktok.com/@user/video/ URLs.
On X (formerly Twitter): Twitterbot reads the OG tags plus the twitter:* tags TikTok serves. The result is a player card that embeds the video inline in the tweet (the contract from before the rebrand is still honored). Card shows thumbnail, creator handle, inline play.
On Slack: Slackbot reads the OG tags and renders a standard inline preview with thumbnail, title, and the link. Video doesn't play inline in Slack; viewers click through to TikTok. Consistent and reliable.
On Discord: the surface where TikTok link previews go wrong most often. Discord's embed system reads OG tags fine for full tiktok.com/@user/video/ URLs but inconsistently for vm.tiktok.com and vt.tiktok.com short URLs. The community has built workarounds: Discord bots that detect the link and re-post the video inline so it plays natively, plus open-source projects like dustinrouillard/tiktok-embeds that rewrite TikTok URLs to a domain serving consistent OG tags. Several competing bots and rewriters exist; the failure mode is real and reproducible.
On LinkedIn: LinkedIn's crawler reads OG tags and renders a standard preview with image + title + description. Video does not auto-play inline. Consistent but visually less rich than Facebook's embed.
The pattern across all of these: every platform reads the same OG tags TikTok serves. The variation is downstream of each platform's renderer. The one consistent failure mode is the short-link domains (vm.tiktok.com, vt.tiktok.com) on Discord; everywhere else, cards work for full URLs.
What you can influence: almost nothing on TikTok's side. The OG tags are fixed by content type — video page = video card; profile = profile card; LIVE = live card; Shop product = product card. You can't customize the og:image for a specific video to control how it appears on Facebook. TikTok uses the video's cover frame as the og:image. If you want control over the cover frame: use TikTok's cover-frame editor before posting, or use a custom thumbnail upload in TikTok Studio if your account qualifies. That's the only lever.
TikTokSpider — what crawls your destination URL when someone shares it INTO TikTok
The technical-mechanism section, for marketers and developers optimizing the OG tags on their own site so it looks good when someone drops the URL into a TikTok DM, comment, or bio.
TikTok runs a crawler called TikTokSpider that fetches external pages when a URL is shared into a TikTok surface that supports preview rendering — currently DMs for external URLs, the bio website field, and some comment contexts. It identifies itself with the user-agent string:
Mozilla/5.0 (compatible; TikTokSpider; ttspider-feedback@tiktok.com)
This was documented publicly by OpenGraphPlus, which appears to be the only third-party source naming the UA string and its behavior. TikTok itself does not publish a TikTokSpider reference page, which is part of why this query is so confused.
What it does: fetches the page over HTTPS; reads standard Open Graph protocol meta tags from the <head> (og:title, og:description, og:image, og:type, og:url); falls back to <title> and <meta name="description"> if OG tags are absent; does NOT execute JavaScript (purely DOM-static); respects robots.txt — if you Disallow the TikTokSpider UA, no preview is generated.
Recommended image specs (sourced from OpenGraphPlus, cross-confirmed against Facebook's webmaster sharing guide, which TikTok tracks closely): 1200 × 630 px (1.9:1 aspect ratio); up to 5 MB; JPEG, PNG, WebP, or GIF; HTTPS and publicly accessible, not behind a paywall, CDN cookie wall, or hotlink-protection rule.
Behavior to verify on your end: serve the same HTML to TikTokSpider as to a regular Chrome/Safari request (no UA-based content gating); make og:image URLs absolute (https://), not relative (/og/image.png); if your OG tags are rendered client-side by JavaScript only — common in some React/Vue/Svelte setups without SSR — TikTokSpider sees an empty <head> and generates no preview. Same trap as Facebook and Twitter crawlers; the developer-shaped UA-detection writeup covers UA-sniffing approaches if you need to confirm what's reaching your origin.
There is no TikTok equivalent of Facebook's Sharing Debugger. Every other platform with link-preview rendering has a tool to test and force-rescrape: Facebook's Sharing Debugger, LinkedIn's Post Inspector, X's (discontinued) Card Validator. TikTok has none. The verification path is:
- Test your OG tags against a generic validator (opengraph.xyz, addtoany's meta-tags tool, opengraph.io)
- Confirm the tags are returned in a request like:
curl --user-agent "Mozilla/5.0 (compatible; TikTokSpider; ttspider-feedback@tiktok.com)" https://your-url.com - Then trust that TikTokSpider will read them per spec
Cache duration: not officially documented. Anecdotally similar to Facebook's behavior (roughly 7–30 days). There is no force-rescrape mechanism. If you need to bust the cache, the only known workaround is to append a unique query string to the URL (?v=2) — same trick that works for FacebookExternalHit when the Sharing Debugger isn't an option.
TikTok Shop product cards — the one rich card TikTok actually renders in-feed
The exception that proves the rule. Creators conflate Shop product cards with the bio-link / OG-card system, and they're entirely different mechanisms.
TikTok Shop product cards are a first-party rendering, not an OG-based unfurling. When you (as a Shop seller) link a product to a video via TikTok Studio's "Add Link → Product" workflow, the product appears as a native card overlaid on or pinned beneath your video in the feed. The card pulls its data from your TikTok Shop catalog — image, title, price, discount — not from OG tags on an external URL. (Instagram's equivalent webview behaves similarly on Shopping product cards.)
What renders: product image, title, price (with strikethrough if discounted), and a "Buy now" CTA that launches the in-app purchase flow.
Eligibility: TikTok Shop seller account required. Seller registration involves US residency (or eligibility in one of around 17 supported markets), government ID for individuals, EIN plus business license for companies, and a multi-day approval process. TikTok's seller-side product-linking documentation covers the workflow end-to-end.
What it isn't: an off-platform link card. The product card stays in-app; the purchase happens inside TikTok. If you want to drive viewers to your owned domain — Shopify, Etsy, your DTC site — the product card doesn't replace the bio website-field link. Different funnel stages.
Most creators searching "tiktok link preview card" aren't asking about Shop. They're trying to make a non-Shop content link look richer. Shop is a Shop-seller feature, not a general creator feature — bracket it out unless this section is the one that brought you here.
the part the SERP refuses to mention — the click after the card
This is the section every other article on this query misses entirely.
When a viewer sees your TikTok-video card on Facebook, Slack, or iMessage and taps it, they land in one of two places: the TikTok app if installed (via universal-link handoff), or tiktok.com in the system browser if not. That part works. But when a viewer sees your bio link — plain URL, not a card — and taps it from inside TikTok, the destination loads inside TikTok's own in-app browser. A sandboxed webview with its own cookie jar that doesn't share with Safari or Chrome.
The OG card you optimized doesn't help here. Even if the card rendered perfectly, the click that follows it lands in the wrong cookie jar for any destination that needs the viewer signed in: Amazon storefronts, Spotify pre-saves, OnlyFans subscriptions, Substack signups, Shopify Apple Pay checkouts. The viewer arrives as a stranger, hits a sign-in screen instead of the action they expected, and most don't re-type a 16-character password on a phone keyboard while the TikTok feed is one swipe away.
This is the structural problem downstream of the "preview card" conversation. The card is cosmetic; the cookie-jar isolation after the click is the actual conversion-killer. The thesis on why this happens is the long-form, the TikTok-specific deep dive on the webview covers the mechanism on TikTok specifically, and the creator-side breakdown of the cost walks through what it actually costs your conversions. This section just names that the click problem outlives the card problem.
For the four destination patterns where this hurts most:
- Amazon storefronts and affiliate links — the Amazon storefront writeup
- Spotify pre-saves and music links — the Spotify writeup
- OnlyFans, Patreon, and creator subscription links — the creator-subscription writeup
- Shopify Apple Pay and checkout flows — the Shopify writeup
The card was the easy half. The escape is the hard half — and the half that determines whether the card converts. If you want to see what TikTok's webview does to your own link before a viewer hits it, the detector that catches the webview before the destination loads reproduces the handoff from the viewer's side.
what you can actually do (the tactical close)
Sectioned by which intent-mode brought you here.
If you wanted your bio link to look like a card: you can't make it. TikTok's bio shows the URL as plain clickable text, not a rich card. The closest thing to "making your bio link look better" is making the link itself look cleaner — short, branded, memorable — and putting any visual context (image, value proposition, social proof) in the video itself, the bio description text, or a pinned comment. A link-in-bio tool gives you a single clean URL to put in the field, and as a bonus, linkboo for TikTok creators handles the in-app-browser escape on the viewer's tap so the click survives the cookie-jar problem the card couldn't fix.
If you're worried about how your tiktok.com video URL looks elsewhere: you don't have much control over the card itself — TikTok serves fixed OG tags per content type. Your two levers are (a) the video's cover frame, which becomes the og:image, edited before publish or replaced with a custom thumbnail in TikTok Studio if your account qualifies, and (b) the URL format you share. Prefer full tiktok.com/@user/video/ URLs over vm.tiktok.com short URLs for cross-platform unfurling reliability, especially on Discord.
If your link is being shared INTO TikTok (DM, comment, bio) and the preview is wrong: your destination's OG tags need to be set correctly on your end. TikTokSpider doesn't execute JavaScript, so client-side-rendered OG tags produce empty previews. Server-render the tags, use absolute HTTPS image URLs, and verify against a generic OG validator. There is no TikTok-side debugger; append ?v=2 to bust the cache.
Across all three cases, the structural fix for the click after the card is the in-app-browser escape — covered in the thesis link above.
frequently asked
Does TikTok show link preview cards in the feed? No. TikTok's feed is video. Links live in non-feed surfaces (bio, comments, DMs, Shop product slots) — none of which render a Facebook-style rich link card in the feed itself. The closest in-feed equivalent is the TikTok Shop product card, which is a first-party feature with its own eligibility rules and isn't OG-tag-based.
Why doesn't my tiktok.com link unfurl in Discord?
Discord reads OG tags from full tiktok.com/@user/video/ URLs reliably but inconsistently from vm.tiktok.com and vt.tiktok.com short URLs. Use the full URL when sharing to Discord, or use a community-built Discord bot or open-source rewriter that detects TikTok links and re-posts the video inline so it plays natively.
How can I customize the image that appears when my TikTok video is shared elsewhere?
The og:image is the video's cover frame. Edit the cover frame before publishing, or use TikTok Studio's custom-thumbnail upload (eligibility-gated). That's the only lever — you can't set a per-platform OG image override or a separate share-card thumbnail.
Is there a TikTok equivalent of Facebook's Sharing Debugger?
No. Verify your OG tags with a generic validator (opengraph.xyz, addtoany), confirm via curl with the TikTokSpider UA string, and append ?v=2 to the URL to bust the cache when needed.
What user-agent does TikTok's crawler use?
TikTokSpider identifies itself as Mozilla/5.0 (compatible; TikTokSpider; ttspider-feedback@tiktok.com). It respects robots.txt and does not execute JavaScript. Recommended image: 1200 × 630 px, 1.9:1 aspect ratio, up to 5 MB, JPEG/PNG/WebP/GIF. Per third-party documentation; not officially confirmed by TikTok itself.
My TikTok Shop product card disappeared. What happened? Common causes: seller account suspended or in review, product unlinked from the video, product removed from your Shop catalog. Check the TikTok Shop seller dashboard for status; re-link the product via TikTok Studio → Posts → TikTok Shop → Link Products.
what to do next
If you wanted your bio link to look richer: it won't. Make the link itself short and branded; put the visual context in the video.
If you're optimizing how your tiktok.com URL appears when shared elsewhere: TikTok serves the OG tags. You control the cover frame and the URL format you share. Use full URLs over short URLs when Discord is in the mix.
If you're optimizing your own destination's OG tags for when someone shares your link INTO TikTok DMs: server-render the tags, use HTTPS absolute image URLs, validate with a generic OG tool, and remember TikTokSpider doesn't execute JavaScript.
The card is half the story. The click after the card is where the cookie-jar problem lives — read the thesis →
linkboo gives you a single clean URL for your TikTok bio that handles the in-app-browser escape on the click after the card. Start free →
related
- The TikTok in-app browser, explained: /guides/tiktok-in-app-browser
- How to add a link to your TikTok bio: /guides/how-to-add-link-to-tiktok-bio
- TikTok website field requirements: /guides/tiktok-website-field-requirements
- Why does my TikTok link log people out: /guides/why-does-my-tiktok-link-log-people-out
- The in-app browser logged-out problem: /guides/in-app-browser-logged-out
- The in-app browser detector tool: /tools/in-app-browser-detector
- linkboo for TikTok creators: /for/tiktok