Use case · SPA teams

Give every SPA route its own WhatsApp thumbnail

All URLs in your SPA share the same title and image. With Visualink you can serve route-specific Open Graph data to social crawlers.

The app has many routes, but crawlers only see one HTML shell

WhatsApp and other sharing platforms often read the initial document instead of waiting for client-side JavaScript.
That leaves every route with the same generic preview.
External OG resolves the requested URL at the edge and returns configured metadata only to the relevant crawlers.

Keep the SPA. Fix the sharing layer.

Map public routes

Configure in Visualink every route that needs its own official preview.

Define each preview

Set the image, title, and description for the route.

Serve it at the edge

Let crawlers receive the metadata while human traffic continues to the application normally.

Show the route-to-preview workflow

This space can hold a real setup video or a before-and-after share from a client-rendered route.

SPA social preview questions

How can I fix social previews in a SPA without migrating to SSR or SSG?

Visualink External OG is designed to add a crawler-visible metadata layer without forcing an architecture migration: you can keep your stack and manage the social previews of your CSR SPA.

Does this slow down normal visitors?

The integration targets supported social and chat crawlers at the edge. Human visitors continue to the original application flow.

Can every route use different metadata?

Yes. Each configured public URL can have its own image, title, and description.

Make every SPA route shareable.

Add route-level previews without turning a marketing change into a frontend migration.