LinkStacked

Build

Embeds — Spotify, YouTube, podcasts, and TikTok inside your page

Paste a YouTube URL, an Apple Music album, a Spotify episode, a Substack issue, a TikTok video — any of them — and Linkstacked renders the actual player or preview inside your link page. Visitor never leaves to consume.

Most link-in-bio pages are link lists. Click → leave. Click → leave. The visitor's attention bleeds out of your page within seconds because there's nothing to consume on the page itself.

Embeds change the math. Instead of pushing the visitor away to YouTube to watch your latest video, you put the video on your page. They tap play, watch it inline, scroll down for more without ever feeling like they left. The page becomes a destination, not a turnstile.

What we embed (and what we don't)

Paste the URL of any of the following into a link block and we render the real embed:

  • YouTube videos and shorts (autoplay off by default, you can toggle on)
  • Spotify tracks, episodes, playlists, and full albums
  • Apple Music albums, songs, and playlists
  • SoundCloud tracks and playlists
  • TikTok videos and full profiles
  • Vimeo (free and Pro accounts)
  • Substack posts and full newsletter signup widgets
  • Twitch live streams (renders an offline cover when not live)
  • Bandcamp embedded player

What we don't embed: Instagram (their oEmbed API was discontinued in 2021 — we render a 'view on Instagram' card instead with the post thumbnail), private/unlisted YouTube videos that block embedding, region-locked content (we fall back to a card with a 'this may not be available in your region' note).

Tip

When something can't embed, we fall back to a rich card with the title, thumbnail, and a 'play on <platform>' link. Visitor still gets context — they just have to leave to play.

Performance: don't kill your page load

Embeds are heavy. A YouTube iframe is roughly 1.2MB before you even press play. Drop four of them on your page and you've tanked Time-to-Interactive on mobile.

We mitigate this with what we call 'placeholder embeds.' Until you scroll the embed into view (or tap the play button), we render a lightweight thumbnail card that looks identical to the real embed. On tap or scroll-into-view, the actual iframe loads. End result: your page loads as fast as a plain link list, and the embeds become real the moment the visitor is ready to interact with them.

Pick the right embed for the visitor journey

Three patterns we see working repeatedly:

  1. 1Latest episode on top, embedded. Visitor lands and presses play within 2 seconds. The page becomes the listening experience, not a routing stop.
  2. 2Embed your booking calendar (Cal.com, Calendly, SavvyCal). Visitor books a slot without leaving — booking flow lives inside your page.
  3. 3Embed your email-capture form inline. Don't put it on a separate page; let the form sit between two of your other blocks so it feels like part of the natural scroll.

Track engagement on the embed itself

For YouTube and Spotify embeds we surface a 'plays' counter alongside the page-view counter. So you can tell whether your page is generating real consumption or just bounces. Plays are a much better engagement signal than impressions — a play means the visitor stayed, gave you attention, heard your voice. Impressions just mean their thumb scrolled past.

On the Build plan and above, you can drop the Meta and Google Ads pixels on any embed. Those pixels fire when someone plays the embed for at least 3 seconds. Now you can retarget visitors who actually engaged with your content, not just everyone who loaded your page.

I swapped my YouTube 'latest video' link block for a YouTube embed. Same content, same page position. Average watch time per page-visit went from 14 seconds to 1 minute 50. That's a 7x lift in attention. I cannot stress how big a deal that is for someone making content for a living.
Yuki, video essayist

The privacy story

Embeds inherit the privacy posture of the host platform. YouTube and Spotify embeds drop their own cookies; we expose a "privacy-preserving mode" toggle that switches YouTube embeds to youtube-nocookie.com and Spotify to no-tracking variants where available. The toggle is global per workspace.

We also support a 'consent gate' for European visitors. If you're operating under GDPR you can require explicit consent before embeds load — visitor sees the placeholder card with a 'click to load embed' prompt. We do not preload anything if the gate is on.

Add an embed in 30 seconds

Open your editor, hit 'add block', paste any supported URL. We auto-detect and render. Reorder it by dragging. Delete it by hitting backspace. That's the whole experience. If you want to get fancier — custom thumbnail, autoplay toggle, privacy mode — those are all under the block's settings panel. Most embeds we see in production are set up in under 30 seconds and never touched again.

Share this with a teammate evaluating Linkstacked.

Ready to ship this on Linkstacked?

linkstacked.com/