Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For a normal website link, you do not embed the card in Slack, Messages, Discord, or another app yourself. You publish page metadata—primarily Open Graph tags—in the linked page’s <head>; the receiving service fetches that URL and builds its own preview. Use oEmbed instead when you need a provider-supported rich representation such as an interactive photo or video.

This distinction explains many failures: a page can look correct in a browser while a preview bot sees no metadata, a private response, a JavaScript-only page, or an unreachable image. The reliable workflow is to add page-specific metadata, deploy it on the exact public URL people will share, then test that URL with the destination platform’s debugger.

Preview card or real embed?

The word embed describes two different outcomes.

Platform-generated link preview

A link preview is a static or semi-static card generated by Slack, Messages, Discord, social networks, or another receiving service. The service requests your URL, reads metadata, fetches the image, and chooses its own layout. You supply the facts; you do not control the final card pixel for pixel.

Provider-backed rich embed

An actual embed is a representation supplied by the content provider, often through oEmbed. A consumer requests structured data for a supported URL and receives the information needed to display an embedded photo, video, or other resource. Open Graph tags alone do not create an interactive player or widget.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
#1 Best Overall
Elebase USB to USB C Adapter for iPhone 18 Pro Max,USBC Car Charger Adapter
  • Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
  • Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
  • Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
  • Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
  • 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.

Open Graph is the baseline for a website card

The Open Graph protocol defines four required properties for every page:

Property What it identifies Implementation guidance
og:title The title shown for the object Use the page’s specific, readable title rather than a generic site name.
og:type The kind of object Use website for an ordinary page unless your content model requires another supported type.
og:image The representative image Use a complete, publicly reachable image URL that matches the destination page.
og:url The object’s canonical identity Set it to the canonical URL you want platforms to associate with the card.

og:description and og:site_name are optional but useful. The description gives a short explanation before a reader opens the link; the site name identifies the publisher. Keep every value page-specific so an article does not inherit the card for your home page.

Complete HTML pattern

Place the tags in the server-delivered document head. Replace every sample value with data for the page being shared.

<head>
  <meta property="og:title" content="A clear title for this page">
  <meta property="og:type" content="website">
  <meta property="og:url" content="https://example.com/page">
  <meta property="og:image" content="https://example.com/images/page-preview.jpg">
  <meta property="og:description" content="A concise description of this page.">
  <meta property="og:site_name" content="Example">
</head>

Generate these values from each page’s content, not from one site-wide template. Keep the canonical URL, visible page, title, description, and image aligned; a mismatch can make a card confusing even when the tags are syntactically valid.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Anker USB-C Hub, 5-in-1 USB Hub for Laptops, 4K HDMI Multiport Adapter
  • 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
  • 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
  • Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
  • 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
  • What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.

Make metadata visible to crawlers

Render it in the initial HTML response

A preview service may not execute the JavaScript that your browser runs. Apple documents that Messages link previews do not run JavaScript and do not follow meta redirects, so the metadata must be available directly on the linked page. Server-side rendering or static HTML is the safest approach. If your framework inserts Open Graph tags only after hydration, inspect the raw response and change the rendering strategy.

Use a directly shareable, public URL

Test the exact scheme, hostname, path, trailing-slash form, and query string that users will post. The URL must return the intended page without an authentication wall, IP restriction, or a redirect chain that the receiving service cannot follow. Slack lists private pages and files, as well as missing preview data, among reasons a link may not expand.

Make the image fetchable

The service generally reads og:image and then makes a second request for that image. Host it at a stable, publicly reachable URL and return an actual image with a successful response. Do not protect it behind a login or require browser JavaScript to reveal it. A page can therefore have correct title tags and still show no image if the image request fails.

Platform behavior you cannot standardize

Slack

Slack’s link-expanding robot looks for oEmbed and Twitter Card/Open Graph tags, then fetches relevant linked media. Use Slack’s URL debugging tool to see what it fetched from the deployed address. Debug the precise URL users share, not a local development URL or a different redirect target.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Sale
Anker USB C Hub, 7in1 Multi-Port USB Adapter, 4K@60Hz USBC to HDMI Splitter
  • Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
  • Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
  • Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
  • Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
  • What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.

Apple Messages

Messages requires metadata to be present on the directly linked page. It does not run JavaScript for link previews and does not follow meta redirects. A browser-only implementation can therefore work for users while producing an empty or generic Messages card.

Discord

Discord’s bot fetches a page title, description, and image when a link is posted. It may temporarily save a copy of linked images or videos. Its card can consequently remain unchanged for a while after an edit, and its field order or appearance need not match Slack or Messages.

Why cards differ

Each service owns the fetch schedule, cache, safety checks, field selection, and rendering. No single set of tags guarantees identical fields or simultaneous refreshes everywhere. Treat Open Graph as a broadly supported input, not a cross-platform layout contract.

Implementation checklist

  1. Choose the outcome. Decide whether you need a static page preview or an oEmbed-backed interactive representation.
  2. Create page-specific values. Write the title, description, canonical URL, and representative image for the exact destination.
  3. Add the four Open Graph properties. Include og:title, og:type, og:image, and og:url in the document head; add description and site name where useful.
  4. Render them before the browser runs. Confirm the initial HTML response already contains the tags.
  5. Check access. Request the final URL and image without credentials and verify that they return the intended content.
  6. Deploy and test the public URL. Paste the exact address into the destination app and use its debugging or preview tool when available.
  7. Allow for cache. After changing metadata, wait for the platform’s cache to expire or use its documented refresh/debug workflow; do not assume every service updates immediately.

Generating a representative preview image

If creating and hosting a card image is the time-consuming part, a screenshot service can render the destination page into an image that you then publish at a stable URL for og:image. Keep the metadata step above: a screenshot does not replace og:title, og:type, or og:url.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
Sale
UGREEN USB to USB C Adapter Combo 4-Pack, 10Gbps USB C Converter Space Gray
  • Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
  • Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
  • Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
  • Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
  • Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft

Or skip the browser setup

ScreenshotNeo is a website screenshot API and MCP server. One GET request returns a PNG, JPEG, WebP, or PDF. Its clean-shot workflow accepts cookie or consent banners before capture and removes more than 60 known consent platforms, newsletter popups, and chat widgets; each step can be turned off. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits cost nothing, and response headers identify the page verdict and whether it was billed.

Use the API to create a page image, then store that image at a public URL and reference it from og:image. The full parameter reference is in the ScreenshotNeo documentation.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);

ScreenshotNeo also supports full-page captures with lazy images loaded, CSS-selector element capture, dark mode, 12 device presets plus arbitrary viewports, retina scale, PDF controls, custom CSS and JavaScript, clicks, selector or network-idle waits, request and resource blocking, custom headers/cookies/user agents/Authorization, timezone and geolocation, transparent backgrounds, resizing, chosen cache TTLs, signed links, asynchronous jobs with signed webhooks, bulk capture of up to 100 URLs per call, a usage API, and an OpenAPI specification. Existing parameter names used by other screenshot APIs also work, which can simplify a migration.

Every feature is included on every plan: 1,000 shots per month free with no card; Starter is $5 for 3,000, Growth $15 for 15,000, Pro $39 for 60,000, Scale $99 for 250,000, and Business $249 for 1,000,000. Yearly billing gives two months free. An MCP server provides take_screenshot, get_page_info, and capture_pdf tools for Claude, Cursor, and other MCP clients, so AI agents can create or inspect captures without your own browser automation.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Create a free ScreenshotNeo account to get 1,000 screenshots a month with no card.

Best Value
Anker USB C Hub, 5-in-1 USBC to HDMI Splitter with 4K Display
  • 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
  • Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
  • Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
  • HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
  • What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Troubleshooting missing or incorrect cards

No card appears at all

  • Request the exact shared URL from an unauthenticated context. Fix access controls, server errors, or an unintended redirect.
  • Inspect the initial HTML and confirm all four required Open Graph properties are present.
  • Check that the destination platform is allowed to fetch the page and that the response is not blocked by a firewall or bot rule.

The title or description is stale

  • Confirm you edited the metadata for the URL actually being posted, including path, query, and trailing slash.
  • Use the platform’s debugger or preview refresh workflow, then allow for its cache rather than repeatedly changing tags at random.

The image is missing

  • Open the absolute og:image URL directly and verify it returns the intended image without credentials.
  • Check that the tag contains an image URL, not a relative path or a page URL.
  • Ensure the image has not been removed, renamed, or blocked separately from the HTML page.

It works in a browser but not in Messages

Move the tags from client-side JavaScript into the server-rendered head and remove dependence on a meta redirect. Messages does not execute JavaScript or follow meta redirects for previews.

Slack shows an unexpected page

Run the exact URL through Slack’s URL debugging tool. Inspect redirects, access requirements, and the fetched Open Graph values; a preview bot may be seeing a different response from your logged-in browser.

Updates appear only on some services

That is expected when services cache and render independently. Verify the new response first, refresh where the platform provides a debugger, and allow each service’s cache to age out.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Reliability and maintenance practices

  • Keep canonical URLs stable; changing them creates a new identity for many preview systems.
  • Monitor the page and image endpoints as separate resources, because either request can fail independently.
  • Use a small, deterministic metadata component in your CMS so title, description, canonical URL, and image cannot drift apart.
  • When you redesign a page, preserve the old shared URL with a normal server redirect and test the final destination directly.
  • For oEmbed, document which provider URLs and response types you support; do not advertise every Open Graph page as an interactive embed.

Frequently Asked Questions

Can I force a platform to display a particular card layout?

No. You can provide the metadata and image, but the receiving service decides which fields, dimensions, safety treatments, and rendering style to use.

Should I maintain separate metadata for every language version?

Yes. Generate title, description, canonical URL, and image for the locale-specific page, and share that locale’s public URL so the fetched values match the reader’s destination.

Is oEmbed required for an ordinary article link?

No. A normal article preview can use Open Graph metadata; oEmbed is for a provider-supported embedded representation such as a photo or video.

The Bottom Line

Put page-specific Open Graph metadata in the initial HTML response, make both the page and image publicly fetchable, and test the exact deployed URL in each destination service. Use oEmbed only when you need a provider-backed interactive embed; no platform guarantees identical cards or instant updates.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.