Performance: Dynamic OG images
MEDIUM IMPACT
Dynamic OG images affect the initial page load speed and server response time because the image is generated on demand when the page is shared.
import { cache } from 'react'; const generateCachedImage = cache(async (params) => { return await generateImage(params); }); export async function GET() { const image = await generateCachedImage({ title: 'Dynamic OG Image', style: 'complex', }); return new Response(image, { headers: { 'Content-Type': 'image/png' } }); }
export async function GET() { const image = await generateImage({ title: 'Dynamic OG Image', style: 'complex', }); return new Response(image, { headers: { 'Content-Type': 'image/png' } }); }
| Pattern | Server Processing | Network Transfer | Cache Usage | Verdict |
|---|---|---|---|---|
| Generate on every request | High (300-500ms) | Medium (image size) | None | [X] Bad |
| Generate once and cache | Low (<50ms after cache) | Medium (image size) | Effective caching | [OK] Good |