Fix Notion ‘Page Cannot Be Embedded’ From Specific External Source
🔍 WiseChecker

Fix Notion ‘Page Cannot Be Embedded’ From Specific External Source

You see the error message “Page Cannot Be Embedded” when you try to embed content from a specific external source like a Google Doc, a Figma file, or a YouTube video into a Notion page. This error occurs because Notion uses an iframe to display embedded content, and the external source has security settings that block that iframe from loading. This article explains the technical reason for the block, provides step-by-step fixes for the most common sources, and covers related embedding failures you may encounter.

Key Takeaways: Fixing Notion Embed Failures From External Sources

  • Source URL format: Use the direct share link, not the browser address bar link, for Google Docs, Sheets, and Slides.
  • Publish to web: For Google Docs and Figma, you must enable public sharing or “Publish to web” to allow Notion to embed the content.
  • X-Frame-Options header: Some sites block iframes via a server header; use the Notion embed block’s “Open as page” option as a workaround.

ADVERTISEMENT

Why Notion Cannot Embed Content From Certain External Sources

Notion displays embedded content by loading the external URL inside an iframe on the Notion page. If the external server sends an HTTP response header named X-Frame-Options: DENY or X-Frame-Options: SAMEORIGIN, the browser refuses to display that content inside any iframe. Many sites, including Google Drive, Figma, and some news websites, set this header to prevent clickjacking attacks.

Another common cause is that the external source requires authentication. When Notion tries to load the iframe, the site redirects to a login page, and the redirect itself may be blocked by the same header. The result is the “Page Cannot Be Embedded” error.

A third cause is that the URL you are using is a dynamic page or a complex web app, not a direct link to a viewable file. For example, pasting a Google Docs URL from your browser address bar often fails because that URL is meant for editing, not embedding. You must use the “Publish to web” link or the “Share” link instead.

Steps to Fix the Embed Error for Common External Sources

The fix depends on which external source you are trying to embed. Below are the specific steps for the most common sources that trigger this error.

Embedding a Google Doc, Sheet, or Slide

  1. Open the file in Google Drive
    Go to drive.google.com and open the document, spreadsheet, or presentation you want to embed.
  2. Click File > Share > Publish to web
    In the menu bar, select File, then Share, then Publish to web. This generates a public embed link that bypasses the X-Frame-Options header.
  3. Copy the embed link
    In the dialog that appears, click the “Embed” tab. Copy the full iframe HTML code or the URL inside the src attribute. Do not use the URL from your browser address bar.
  4. Paste the link into Notion
    In Notion, type /embed and select Embed. Paste the copied URL into the link field and press Enter. The content should now appear without the error.

Embedding a Figma File

  1. Open the Figma file in your browser
    Go to figma.com and open the file you want to embed.
  2. Click Share in the top toolbar
    Select the Share button, then click “Copy link” to get a shareable link. Ensure the link visibility is set to “Anyone with the link” or “Organization” if your workspace allows.
  3. Enable public embedding
    In the Share dialog, under “Who has access,” change the setting to “Anyone with the link” and set the permission to “Can view.” Figma blocks embedding for files that require login.
  4. Paste the link into Notion
    In Notion, type /embed and select Embed. Paste the Figma share link and press Enter. The Figma file should display inside the Notion page.

Embedding a YouTube Video

  1. Copy the correct YouTube URL
    On YouTube, click the Share button below the video and copy the link. Do not copy the URL from the browser address bar if it contains extra parameters like ?list=....
  2. Paste into Notion
    Paste the link directly onto a Notion page. Notion automatically converts YouTube links into embedded players. If the error appears, try pasting the link with /embed instead.
  3. Check for age restriction or private videos
    YouTube blocks embedding for age-restricted videos and private videos. Change the video privacy to “Unlisted” or “Public” in YouTube Studio to allow embedding.

Embedding a PDF from a Website

  1. Upload the PDF to Google Drive
    If the PDF is on a site that blocks iframes, upload it to Google Drive first.
  2. Publish the PDF to web
    In Google Drive, right-click the PDF, select Share, then Publish to web. Copy the embed link.
  3. Paste into Notion
    Use the embed block in Notion and paste the Google Drive embed URL. The PDF will display without the error.

ADVERTISEMENT

If Notion Still Shows the Embed Error After Using the Correct Link

Some websites use JavaScript-based embedding blockers that do not rely on the X-Frame-Options header. These sites detect the iframe and refuse to load content even with a valid public link. Below are the most common failure patterns and their workarounds.

Embedded Content Shows a Blank Space or Loading Spinner

This usually means the external source loaded the iframe but requires a login session. Notion cannot provide login credentials. Use the source’s public sharing or publish-to-web feature. If the source does not offer public sharing, you cannot embed that content. Instead, paste a clickable link using the @ or + link command so users can open it in a new tab.

Embedded Content Displays a Security Warning or Error Page

Some corporate or educational sites use a Content Security Policy (CSP) that blocks all iframe embedding. There is no fix from the Notion side. Contact the site administrator to request an exception, or use the Notion embed block’s “Open as page” option. Right-click the embed block and select “Open as page” to open the URL in a new browser tab.

Embedded Video or Audio Does Not Play

Notion supports embedding from YouTube, Vimeo, and a few other platforms natively. For other video hosting sites, use the site’s embed code instead of the direct URL. In Notion, type /embed and paste the full embed HTML code. Notion will render it as an iframe. If the site blocks iframe embedding, use a link instead.

Notion Embed vs Open as Page: Behavior Compared

Item Embed (In-Page) Open as Page (New Tab)
Content location Displays inside the Notion page Opens in a new browser tab
Requires public link Yes, source must allow iframe embedding No, any accessible URL works
Best for Google Docs, Figma, YouTube, PDFs Sites that block iframes or require login
User experience Viewable without leaving Notion User must switch tabs to view content

The “Open as page” option is available by right-clicking any embed block in Notion. This is the simplest workaround when the external source refuses to load in an iframe. You can also use this option to open Google Maps, Trello boards, or any other site that displays the embed error.

ADVERTISEMENT