Skip to main content

Instagram Embed

Generate Instagram post, reel, and IGTV embed code

Generate Instagram embed code for posts, reels, and IGTV videos. Customize size, caption display, and layout for seamless Instagram integration.

Recommended: 320px - 658px


How to generate an Instagram embed?

Generating an Instagram embed is straightforward: Find the Instagram post, reel, or IGTV video you want to embed. Click the three-dot menu (⋯) on the post and select 'Embed' — a popup shows the embed code. Copy the URL from the embed popup's iframe tag (it looks like https://www.instagram.com/p/POST_ID/embed/) or copy the full post URL from your browser (https://www.instagram.com/p/POST_ID/). Paste the URL into the input box on our tool. Choose your customization options: set width (minimum 320px), toggle caption visibility, and choose whether to show comments. Click Generate to produce the embed code. The HTML appears in the output box — copy it and paste directly into your webpage.

Related Tools

You May Also Need

Instagram embed types and their rendering behavior

Instagram supports embedding three content types: regular posts (instagram.com/p/), reels (instagram.com/reel/), and IGTV videos (instagram.com/tv/). Each type renders differently in the embed widget. Regular post embeds display the image or carousel with engagement metrics below. Reel embeds show the vertical video player with the username overlay and music attribution. IGTV embeds display the landscape video player with episode information. Instagram's embed system uses JavaScript rendering rather than pure iframes — the generated code includes a script that fetches post metadata from Instagram's servers and constructs the DOM dynamically. This means embeds require JavaScript enabled and depend on Instagram's CDN availability. The embed widget automatically adapts to the content type, displaying images at full resolution and videos with native playback controls.

Instagram embed performance and accessibility considerations

Instagram embeds load approximately 200KB of JavaScript and make multiple requests to *.instagram.com and *.fbcdn.net domains. Each embed adds significant page weight and can impact Core Web Vitals scores. To optimize, implement lazy loading using IntersectionObserver so embeds only initialize when scrolled into view. Instagram embeds include proper ARIA labels and semantic HTML structure, making them accessible to screen readers. However, the dynamic rendering means assistive technologies may not immediately detect embedded content. Add descriptive alt text around the embed container to provide context for visually impaired users. For pages with multiple Instagram embeds, consider batching the Instagram SDK initialization rather than loading it separately for each embed.

Frequently Asked Questions (FAQs)

Can I embed private Instagram accounts?

No, only public Instagram accounts and posts can be embedded. Private account content is inaccessible through the embed API.

Why does my Instagram embed show 'Unable to embed'?

The post may have been deleted, made private, or the account may have been suspended. Instagram also restricts embedding for certain content types like ads and promoted posts.

Can I customize the Instagram embed appearance?

Instagram provides limited customization: width (min 320px), caption toggle, and comments toggle. The overall styling follows Instagram's design system and cannot be significantly altered.

Do Instagram embeds work without JavaScript?

No, Instagram embeds require JavaScript to render. Without JS, visitors see an empty placeholder. Provide fallback content linking to the actual Instagram post.

How do I make Instagram embeds responsive?

Wrap the embed in a container with max-width: 100%. Instagram embeds scale horizontally but maintain fixed height ratios. Use CSS media queries to adjust on smaller screens.

Can I embed Instagram Stories?

No, Instagram Stories cannot be embedded on external websites. Only permanent posts, reels, and IGTV videos support embedding.

Recently Used Tools