# How to Embed an Instagram Feed on Your Website (2026 Guide)

Every working way to embed an Instagram feed on a website in 2026: single-post embeds, the Instagram Graph API after the Basic Display shutdown, hashtag feeds, and shoppable UGC galleries.

By Rohin Aggarwal · 2024-10-14 · (updated 2026-07-06)

Embedding an Instagram feed used to be simple: grab a free widget, point it at your handle, done. Then Meta shut down the Basic Display API in December 2024, and half the free Instagram widgets on the internet quietly stopped updating. This guide covers what still works in 2026: single-post embeds, building on the Instagram Graph API, and UGC platforms that handle the API relationship for you.

**What you need to know**

- **Single-post embed:** copy the embed code from any public post. Free and instant, but one post at a time and no auto-update.
- **Instagram Graph API:** the only official feed route since Basic Display was retired (December 2024). Requires a Business or Creator account, a Meta developer app, and app review. Real engineering work.
- **Idukki:** connects via the approved Graph API, pulls from your account, hashtags and customer tags, moderates automatically, and makes the feed shoppable. One script tag, no Meta app review on your side.

## Method 1: Embed a single Instagram post

Every public Instagram post has an embed code: open the post in a browser, click the three-dot menu, choose Embed, copy the HTML. The snippet is a <blockquote> plus Meta's embed script, and it renders the post with its caption, like count and a View on Instagram button.

This is the right tool for quoting one specific post inside an article or a press page. It is the wrong tool for a feed: each post needs its own snippet, nothing updates automatically, and Meta's embed script adds a few hundred milliseconds of load per post. Worth knowing: WordPress removed automatic Instagram embeds back in 2020 when Meta moved oEmbed behind an access token, so pasting a bare URL into most CMSes no longer converts into an embed.

## Method 2: Build on the Instagram Graph API

The DIY landscape changed on 4 December 2024, when Meta retired the Instagram Basic Display API. That API powered most free "show my latest posts" widgets, and any tool still advertising it is showing cached content. The official replacement is the Instagram Graph API (now part of the Instagram API with Instagram Login), which requires a professional account: Business or Creator, not personal.

To build a feed with it you create a Meta developer app, connect your Instagram professional account, pass Meta's app review for the permissions you need, then call the user media endpoint and render the JSON yourself. Hashtag content is harder still: the hashtag search endpoint is limited to 30 unique hashtags per rolling 7-day window per account, and it does not return content from private accounts. Cache aggressively, because tokens expire and rate limits are per-account.

**The honest assessment:** for a development team this is one to two sprints including token refresh, review, and rendering. For a marketing team on Shopify or WordPress it is not a realistic route, which is why most brands use a platform that already holds the API relationship.

**2x** — typical conversion-rate lift when shoppers interact with visual UGC on a page, versus shoppers who do not (Bazaarvoice benchmark, representative range)

## Method 3: A UGC platform (Idukki)

Idukki connects to Instagram through the approved Graph API and handles the app review, token refresh and rate limits on its side. You connect your Business or Creator account once, then build feeds from three kinds of source: your own posts, brand hashtags, and posts where customers tagged your account or products. See the [Instagram widget](/widgets/instagram) for the layout and format options.

Everything runs through [AI moderation](/blog/ugc-moderation-best-practices) before it reaches your site, so a hashtag feed cannot surface spam or off-brand content unreviewed. The feed updates automatically as new posts arrive.

**What makes it shoppable:** tag your product catalog to any post in the feed. Visitors see the photo or Reel, tap the product hotspot, and add to cart without leaving the page. The mechanics are covered in [how to make Reels and TikToks shoppable on Shopify](/blog/make-instagram-reels-tiktoks-shoppable-shopify).

## Hashtag feeds and Instagram walls

A hashtag feed pulls every public post using your campaign tag (#mytheater, #wearyouropinion) into one gallery, which is how brands run competition walls and community pages. An Instagram wall is the display format: a dense grid or masonry layout, often on a big screen at an event or a dedicated community page on the site.

The native Graph API supports hashtag search but with the 30-hashtag weekly cap and no moderation layer, so raw hashtag walls are risky: anyone can post anything to a public hashtag. A moderated pipeline (auto-filter, then approve) is the difference between a community wall and a liability. Idukki ships both the hashtag collection and the moderation queue, and the same gallery can mix hashtag content with your own posts and customer tags.

## Embed on Shopify, WordPress or a custom site

**Shopify:** install the Idukki app from the App Store, connect Instagram, create a gallery, then add the gallery block in the Theme Editor. No code, and the widget loads asynchronously so it does not block rendering.

**WordPress / WooCommerce:** install the Idukki plugin, connect Instagram, place the gallery with a shortcode or block. This replaces the free-widget workflow that broke with Basic Display, with the difference that hashtag and tagged-content sources work too.

**Custom and headless:** one async script tag, or pull the feed as JSON over the REST API and render your own components. The payload includes media URLs, captions, author handles and product-tag data.

## Performance: keep the feed off your critical path

Meta's embed script and unoptimised Instagram images are the two usual page-speed offenders. A grid of nine full-resolution images can add well over a megabyte to a page, and eagerly-loaded embed scripts delay Largest Contentful Paint. The mitigations are standard: lazy-load everything below the fold, serve resized thumbnails, and initialise players only on interaction. Idukki's widget does all three by default and adds under 1 KB of script to initial page weight; the background is in [Core Web Vitals impact of UGC widgets](/blog/core-web-vitals-ugc-widgets).

## Rights: customer posts are not free stock photography

A customer's Instagram photo belongs to the customer. Displaying it in a commercial context (a product page, an ad, a homepage gallery) needs their permission, and a hashtag entry alone does not grant it. Idukki's Rights Management sends the permission request as a comment on the original post, records the approval with a timestamp, and only then clears the content for commercial surfaces. The legal detail is in [the UGC rights and permissions guide](/blog/ugc-rights-and-permissions-guide).

**The practical decision:** Embed a single post when you need to quote one. Build on the Graph API only if you have engineering capacity and just need your own posts. Use Idukki when you want hashtag and customer content, moderation, product tagging and rights clearance in one widget that does not slow the page down.

If you are weighing the DIY route, [the Instagram Graph API glossary entry](/glossary/instagram-graph-api) explains what the API actually grants, its rate limits and the app-review process before you commit engineering time. And for the platform with no native widget at all, [the LinkedIn feed embed guide](/blog/embed-linkedin-feed-on-website) covers the workarounds.

### Sources
- [Idukki: how to make your Instagram feed shoppable](/blog/make-instagram-feed-shoppable) — Seven steps, from connecting the account to counting orders.
- [Meta: Instagram Basic Display API deprecation notice](https://developers.facebook.com/docs/instagram-basic-display-api) — Retirement of Basic Display, 4 December 2024
- [Meta: Instagram Platform (Graph API) documentation](https://developers.facebook.com/docs/instagram-platform) — Professional-account requirement, hashtag search limits, app review
- [Bazaarvoice Shopper Experience Index](https://www.bazaarvoice.com/resources/) — Conversion lift from UGC interaction (representative range)

---
Canonical: https://idukki.io/blog/embed-instagram-feed-on-website
Tags: Instagram, Embed, Social feed, Hashtag feed, UGC
