You can embed audio, video and other content from supported sites directly into Course lessons and Documents. Paste a link or embed code, and Heartbeat shows the content right on the page.
Add an embed to a lesson or Document
Lessons and Documents use the same editor, so the steps are the same for both.
- Open the lesson content or Document you want to edit.
- Click where you want the embed to go and type /embed.
- Select Embed from the menu.
- Paste the link or embed code into the Embed URL or HTML box and press Enter.
A link from a supported site that sits on a line by itself also turns into an embed, without opening the menu.
Use an external video as a lesson's hero
The hero section sits at the top of a lesson, above the lesson content. To use a video from another platform there, open the lesson editor, click Click here to embed an external video instead. below the video upload box, and paste your link. We recommend using the link rather than the embed code.
Supported Embeds
We support embeddable iframes only. <script> tags aren't allowed, for platform security.
You can view our full list of supported embeds here: heartbeat.chat/embeds
The iFramely service we use currently supports over 1,900 websites including YouTube, Loom, Typeform, and many others.
When using the Heartbeat API, you can reference existing videos and embed external video links in offers and landing pages, but you cannot upload videos or embed them in posts programmatically.
Best Practice: Use Direct Links Instead of Embed Code
Whenever possible, use a direct link from a supported site instead of raw iframe code.
Heartbeat has pre-built styling and mobile optimization for supported links, which means:
- Better sizing across all devices
- Faster load times
- Less likelihood of display issues
Why isn't my embedded content displaying correctly?
- Heartbeat creates a "window" to the embedded site, but we don’t control the content inside that window.
- Some sites (especially lesser-known video hosts) don’t send embeddable content in a reliable way.
- Videos hosted on restricted or domain-locked platforms (like some Vimeo setups) may not play correctly.
- Script-based embeds won’t work at all, because we block these for security reasons.
Because of this, we can only provide limited support for display issues tied to external embeds.
Want to ensure your videos always display correctly?
Use Heartbeat Native Video Hosting. We fully control how this content is displayed in Heartbeat.
It’s $19/month for 50 hours of upload time and:
- Optimized for desktop, mobile, iOS & Android
- Protected against downloads
- Fully searchable via video transcript
Great for course content, paid resources, or anything that needs to work smoothly across all devices.
🎬 Learn more about Native Video Hosting here ->
Frequently Asked Questions
Where did the Add Embed button go?
Embeds are added from the editor's menu now. Type /embed wherever you want the embed to go.
Why don't I see Embed when I type /embed?
The option only shows for admins and for members whose role has the Moderate other Members or Manage Courses permission.