Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Pasting an Instagram URL into WordPress no longer reliably creates an embed by itself. WordPress removed Instagram from its default oEmbed provider list in version 5.5.2 after Meta (then Facebook) closed its unauthenticated oEmbed endpoint on October 24, 2020. For a current, URL-based workflow, install and verify Meta’s official Meta Embeds plugin. For a one-off post, paste Instagram’s supplied embed code into a WordPress Custom HTML block. In either case, confirm the result on the published page, not only in the editor.

Why pasting an Instagram URL changed

oEmbed lets a consumer such as WordPress request ready-made embed HTML from a provider such as YouTube. WordPress checks the URL against an internal provider allowlist before making that request, partly for security. A URL from a supported provider can therefore work in an Embed block, while an unsupported URL is treated as ordinary text or fails to generate a preview.

WordPress’s provider reference records Instagram and Instagram TV as removed in WordPress 5.5.2. Its Instagram block documentation explains that the former Facebook/Instagram endpoint closed after October 24, 2020. Consequently, a tutorial that promises a native Instagram embed simply by pasting a permalink is describing an obsolete workflow.

Choose the method that fits your embed

Method Best for What you provide Important constraint
Meta Embeds plugin Automatic URL-based embedding across posts and pages A supported public Instagram URL pasted into an embed workflow Adds a plugin whose maintenance, compatibility, privacy and performance implications you must review
Custom HTML block A single post, reel or other individual embed Instagram’s available embed code You must copy and maintain the code; pasting only the permalink is a different and insufficient action for an unsupported provider

Method 1: Use Meta Embeds for automatic URL handling

Meta’s official Meta Embeds plugin readme lists public Instagram post, reel and profile URL forms and says the plugin registers Meta oEmbed endpoints as WordPress providers. Because plugin requirements and endpoint compatibility can change, check the current readme and your WordPress version before relying on it.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Install and activate the plugin

  1. In the WordPress dashboard, open Plugins > Add New.
  2. Search for Meta Embeds, verify that the publisher is Meta, and review the current version, tested WordPress versions and support notes.
  3. Select Install Now, then Activate.
  4. Before using it on a production page, check whether your host, caching layer and site privacy policy permit the external requests used by the plugin.

Insert a supported public URL

  1. Open the Instagram post, reel or profile you want to show and copy its public URL.
  2. Edit a WordPress post or page and add an Embed block (or the block type exposed by your installed plugin).
  3. Paste the URL and select Embed or Submit.
  4. Save or publish the page, then open the public URL in a logged-out or private browser window to verify the front-end result.

The plugin readme identifies these public URL patterns: instagram.com/p/{media-shortcode}, instagram.com/reel/{media-shortcode} and instagram.com/{username}. A different Instagram URL type may not be supported, so do not assume that every link beginning with instagram.com will resolve.

Method 2: Insert Instagram’s embed code in Custom HTML

WordPress’s general embeds documentation separates supported-provider URL pasting from unsupported services. For an unsupported service, use the service’s embed code in a Custom HTML block. This is not the same as pasting a bare Instagram permalink into an Embed block.

Get the code from Instagram

  1. Open the public Instagram item in a browser.
  2. Use Instagram’s Share menu and choose Embed when that option is available.
  3. Copy the complete HTML Instagram supplies, including any accompanying script or display option that Instagram includes.

Add the code in WordPress

  1. In the block editor, place the cursor where the embed should appear.
  2. Choose + Add block > Custom HTML.
  3. Paste the complete Instagram embed code into the HTML field.
  4. Use the block’s preview if available, save the draft, publish, and inspect the live page.

If Instagram does not offer embed code for the item, or the item is not publicly viewable, this method cannot turn it into a public visitor-facing embed. Do not copy code from an unrelated or untrusted site.

Why your Instagram embed is not working

The source is private or restricted

The cited WordPress and Meta documentation establishes support for public content. It does not establish a supported method for embedding private Instagram posts. Make the source publicly viewable, or use a different presentation such as a screenshot where you have the necessary rights.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The URL type is not supported

Confirm that the link is a public post, reel or profile URL covered by the active Meta Embeds plugin readme. A story, private profile, login-gated page or other unlisted URL may not be handled by that provider.

You are testing only the editor preview

An editor preview does not prove that the published page will load the same external content. Publish or update the page and check its public URL in a logged-out window. Also check the browser console and page source if your site’s security, consent or caching configuration changes third-party content.

The old Instagram block is being followed

The former Instagram block depended on the endpoint that closed in 2020. Removing and re-adding that old block, or pasting a URL into it, does not restore the retired service. Use the maintained plugin route or Custom HTML instead.

A plugin or site policy is interfering

Review the selected plugin’s current compatibility notes, update status and documentation. Cookie-consent tools, content-security rules, optimization plugins and page caches can also alter third-party embeds; the official documentation does not provide a universal diagnosis sequence, so isolate changes carefully and retest the published page.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Public-content, privacy and maintenance checks

  • Confirm that the Instagram item is public and remains available at the URL you embedded.
  • Check the plugin’s current compatibility and maintenance information before installing it.
  • Explain in your privacy notice that an embed may load resources from Meta or Instagram when a visitor views the page, subject to your site’s legal requirements.
  • Consider page weight, consent behavior and caching before placing many embeds on one page; the cited documentation does not quantify performance or reliability differences between the methods.
  • Revisit old embeds after changing WordPress, the plugin or your consent/security configuration.

Which approach should you use?

Choose Meta Embeds when you need visitors or editors to paste supported public Instagram URLs and have WordPress request the embed automatically. Choose a Custom HTML block when you need one individual embed and can obtain Instagram’s code. Neither route makes private content embeddable, and neither eliminates the need to test the published page.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.