Preview Not Showing on Signal

Why your link appears as plain text with no preview card

Link previews are disabled by default

Signal disables link previews by default. This is a privacy choice, since generating a preview requires fetching a URL from an external server. The sender must explicitly opt in at Settings > Privacy > Link Previews.

This is a per-device setting. Enabling it on the phone doesn’t enable it on Signal Desktop. If your users report previews never appear, this is almost always why.

HTTP URLs get no preview

Signal only generates previews for HTTPS URLs. http:// links are silently ignored with no request and no preview. Self-signed certificates also fail.

Missing Open Graph tags

Signal needs at least an og:title (or HTML <title> fallback) to generate a preview. Verify your tags are in the raw HTML:

curl -A "WhatsApp/2" https://yoursite.com/page

If <meta property="og:title" isn’t in the response, Signal can’t see it.

JavaScript-rendered tags

Signal doesn’t run JavaScript. Client-rendered OG tags are invisible. Use server-side rendering, a pre-rendering service, or put static meta tags in your HTML shell.

Diagnosis

  1. Confirm link previews are enabled: Settings > Privacy > Link Previews (check each device separately)
  2. Verify HTTPS: HTTP links are silently ignored
  3. Check raw HTML: curl -A "WhatsApp/2" https://yoursite.com/page and look for OG meta tags
  4. Test in “Note to Self”: isolate from recipient-side issues
  5. Try a known-working URL: paste https://www.wikipedia.org to confirm previews work on the device at all