How Discord link previews work: Open Graph, oEmbed, and the embed cache
Discord embeds are fully OG-compatible. Use standard 1200x630 images. If you update your OG tags and need embeds to refresh, add a cache-busting query parameter. Test in a private Discord server before sharing publicly.
Discord generates link embeds using og:title, og:description, and og:image tags. When a user posts a URL in a Discord channel, Discord's servers fetch the page, extract the OG tags, and cache the result. The embed appears automatically with no user action needed. The image shows at up to roughly 400x210 in the embed.
By TechCompare · Updated
How this is calculated
Discord's embed cache is aggressive and hard to bust. Once Discord fetches your OG tags, it may cache them for hours or days. Changing the tags on your server won't immediately update embeds already posted. The workaround is to append a query parameter (?v=2) to the URL, which forces Discord to re-fetch. Also, if og:image is missing or too small, Discord won't show any image in the embed. The minimum recommended size is 400x210. For best results, use a 1200x630 image and Discord will scale it down. Discord also respects og:site_name, og:video for embedded video, and theme-color for the embed's left border color.
Verdict
Discord fetches and stores OG tags aggressively, so changing the tags on the server won't refresh embeds already posted. Appending ?v=2 to the URL forces a re-fetch. Image minimums are real too: anything under about 400x210 won't render at all, even though Discord scales the standard 1200x630 down to roughly 400x210 inside the embed. og:site_name and theme-color also work for the embed border.
