You can put a social feed on your website in two ways. You can copy a platform's embed code to show a single post. You can also use a social media aggregator to build a live feed that updates automatically. The better choice depends on what you want the feed to do on that page.
If your homepage hasn't changed in months while your Instagram account posts daily, a feed brings that activity onto the site. It also helps when a client wants their TikTok videos on a product page this week, with no developer available.
Curator runs on 100,000+ websites, and across ecommerce stores, universities, and nonprofits, I've noticed the embed is rarely the hard part. Deciding what each feed should show, and on which page, takes more thought.
Curator's free forever plan lets you build your first feed in a few minutes, so you can set one up as you read.
Two ways to put a social feed on your website
A native embed places one post, or one platform's own widget, on your page at no cost. A social media aggregator collects posts from one or more accounts into a single feed. You style and moderate that feed, then add it to your site with one snippet of code.
Method | What it shows | Updates on its own | Best for |
|---|---|---|---|
Single-post embed | One post, Reel, or video | No | A post that backs up a point in an article |
Platform widget (Facebook Page Plugin, X timeline) | One account from one platform | Yes | A simple sidebar box for one channel |
Aggregator feed | Accounts, hashtags, or mentions from several platforms | Yes | Any page that needs a branded, moderated feed |
Native code is free, but it comes with the platform's design, its size limits, and only one network per embed. An aggregator lets you embed a social media feed that combines Instagram, TikTok, YouTube, and other networks. You also control which posts appear and how they look.
To embed social media on your website without any setup, start with each platform's native options.
What each platform lets you embed in 2027
Every network sets its own embedding rules, and several of them changed in the past two years. The sections below cover each platform's native option, its main limits, and where to find our step-by-step guide.
When a customer only needs one post inside a blog article, I point them to the platform's own embed code. Once they want a live grid that matches their brand, the native options run out quickly.
Platform | Single post | Native feed or widget | Watch out for |
|---|---|---|---|
Yes | Profile card only | Public accounts only. Stories can't be embedded. | |
Yes | Page Plugin timeline | 180 to 500 pixels wide. Like and Comment plugins retired February 2026. | |
X (Twitter) | Yes | Profile or List timeline | Protected accounts can't be embedded. |
TikTok | Yes | Profile card with up to 10 recent videos | Private and underage accounts can't be embedded. |
YouTube | Yes | Playlist player | Your site must send an HTTP Referer, or viewers see error 153. |
Yes | None (one post at a time) | Company page activity needs an aggregator. | |
Yes | Board widget, up to 50 Pins | Add the pinit.js script only once per page. |
On instagram.com, open a public post or Reel, click the three dots, and select Embed. According to Meta's documentation, posts from private, inactive, and age-restricted accounts can't be embedded. Stories aren't supported, and account owners can turn embedding off.
Feeds work differently since late 2024. Meta shut down the Instagram Basic Display API on December 4, 2024, so feed tools now require a Business or Creator account. In Curator, that account also needs to be linked to a Facebook Page.
Instagram content is worth placing near buying decisions. 62.8% of the platform's active users say they use it to follow or research brands.
Our walkthroughs show how to embed your Instagram feed and how to add Instagram Reels to your website.
Meta's Page Plugin shows a public Page's timeline, and you can embed a single public post from that post's menu. The Page Plugin only renders between 180 and 500 pixels wide. It sets its width when the page first loads and won't resize if your layout changes afterward.
If your Facebook Like or Comments buttons disappeared this year, the cause is on Meta's side. Meta retired both plugins on February 10, 2026, and they now render as invisible 0x0 boxes. You can safely delete any leftover plugin code.
For feed options beyond the Page Plugin, read our Facebook widget guide.
X (Twitter)
To embed a single post, click the three dots, choose Embed post, and copy the code from publish.x.com. X also supports embedded timelines for a public profile or a public List, with settings for height and a light or dark theme. Neither option works for accounts with protected posts. Our guide to embedding your X feed has screenshots for each step.
TikTok
To embed one video, open it on tiktok.com, click Share, and then click Embed. For a full profile, open the creator's profile page, click the share icon, and select Embed. TikTok's creator profile embed displays a profile card with up to ten recent videos, and it won't work for private or underage accounts.
You can find single-video instructions in our TikTok embed code guide. If you need more than ten videos or a custom layout, follow our steps to embed your TikTok feed on your website.
YouTube
On a computer, open a video or playlist, click Share, select Embed, and copy the iframe code. Custom-built sites sometimes miss a newer requirement: YouTube needs embedding sites to send an HTTP Referer. Without it, viewers see blocked playback and an "error 153" message. A blank player can also mean the video's owner has turned off embedding.
To show more than one video, use the YouTube widget or embed a YouTube playlist.
On desktop, open a public post, click the More icon, select Embed this post, and copy the iframe code. Because this only works one post at a time, you'll need an aggregator to show your company page's ongoing activity. Our LinkedIn feed guide covers that setup in full.
Pinterest's widget builder generates code for a single Pin, a board, or your profile. Each widget needs Pinterest's pinit.js script, which should only be added once per page, even if you use several widgets. A board widget can display up to 50 Pins. If the space is too narrow, it removes columns, so place it somewhere with enough width. You can follow the full process in our guide to embedding Pinterest on your website.
Why I build one feed per page instead of one per site
A feed works best when it's built for a specific page and audience. Visitors to your homepage, a product page, and your careers page want different things. A single feed rarely suits all three.
Curator separates sources from feeds, which makes this easy to set up. A source is a single account, hashtag, or channel, and a feed is the styled, moderated collection that appears on your page. You can create unlimited feeds on any plan, and the same source can be added to as many feeds as you need. For example, your brand's Instagram account could supply three different feeds, each with its own filters and approval settings.
Your audience is also spread across several networks. Online adults use an average of 6.75 different social platforms each month. That means the people visiting your careers page may follow you on different networks than the people shopping your products.
After seeing how universities, online stores, and nonprofits use feeds, I've found that separate feeds for separate audiences outperform one feed everywhere. A shopper and a job seeker need different kinds of proof, even when the posts come from the same account.
A university marketing team had one Instagram feed on its homepage, admissions page, and athletics page. Prospective students on the admissions page had to scroll past game scores to see anything about campus life. The team kept the same Instagram source but built three feeds, each with its own hashtag filter and approval rules. The admissions page now shows student life, while game coverage stays on the athletics page.
Customer posts also show your product in real people's hands, which adds something your branded content can't. When customers see others featured on your site, more of them tag you in their own posts.
When you embed a social feed on your website this way, every page gets posts that match what its visitors came for. For layout and placement ideas, browse these social media feed on website examples.

How to embed a social media feed with Curator
Learning how to embed a social media feed on your website doesn't require a developer. In Curator, the process takes five steps and a few minutes, and it starts with deciding which page the feed is for.
Step 1: Create a feed for a specific page
Name each feed after the page and purpose it serves. For example, try "Homepage, brand Instagram" or "Product page, customer hashtag." Clear names make it much easier to manage several feeds later.
You don't need to fit every page into one feed. Curator plans limit the number of sources, not the number of feeds, so you can create as many feeds as you need. If you're collecting customer photos, a name like "UGC Instagram feed" makes the feed's purpose clear to your whole team.

Step 2: Connect the right source
Next, choose where the posts will come from. You can pull from your own account, a hashtag, or posts that mention or tag you. Your own account works best for brand content, while hashtags and mentions are better for customer posts.
Instagram has two requirements to keep in mind. Instagram sources need the Business or Creator account described earlier. The hashtag source also only collects posts from the 24 hours after you add it. Add any campaign hashtag before the campaign begins. If you're promoting a hashtag at an event, print it next to a QR code so attendees can find it easily.
X, the LinkedIn Company Page source, the TikTok hashtag source, and Google Reviews are premium sources available on the Business plan. For embedding blogs, use Curator's RSS source.

Step 3: Set approval and moderation rules
Now choose how posts get approved. With auto-approve, new posts appear right away and you remove anything you don't want. With manual approval, a post only appears after you approve it.
Pick the mode based on the source. Customer content should be reviewed before it goes live, while your own account can usually publish automatically. Moderation rules are included on every plan, including Free, and can reject duplicates and posts that contain profanity, specific words, or specific users. For more detail, read our guide to moderating user-generated content.
On hashtag feeds, I've found manual approval is worth the few extra minutes it takes. Your own account can usually run on auto-approve with a profanity rule turned on.

Step 4: Pick a template and match your brand
Choose a look that suits the page. Curator offers 20+ templates, along with advanced styling for spacing, colors, icons, post loading, and custom CSS.
The space you have should guide your template choice. A carousel works well in a narrow footer strip, while a grid suits a full page. Preview the feed with your site's colors, then make final adjustments using our guide to customizing your social media feed.

Step 5: Publish and paste both parts of the code
Click Publish or Get Code, then copy the snippet. Changes you haven't published won't appear on your live feed, so publish before you copy the code.
The code has two parts: a div that marks where the feed appears and a script that loads it. The feed won't display unless both are on the page, so always paste them together. Add the code to your home, news, or events page, or to whichever page you built the feed for.

Where to paste the code on your website builder
Each builder below accepts the same embed code, as long as you paste it into an HTML or code block. If you paste it into a regular text block, the page will show the raw code instead of your posts.
WordPress
Add a Custom HTML block where you want the feed to appear and paste in the code. You can also install Curator's WordPress plugin and use its shortcode instead. Our guide to adding your social media feed to WordPress explains both methods, including how to place a feed in a sidebar or footer.
Wix
In the Wix Editor, click Add Elements, then Embed Code, and choose Embed HTML. Click Enter Code, paste your snippet, and apply it. Then resize the element and move it to the spot where the feed should appear, since Wix places embeds inside a fixed-size frame. Skip Wix's site-wide Custom Code setting, because Wix keeps those snippets invisible to visitors. Our guide on how to add an Instagram feed to Wix covers the full process.
Squarespace
Add a Code block to the section where the feed should appear, then paste the code. Before you start, check your plan, because JavaScript in Code blocks only runs on the Core, Plus, and Advanced plans. Our guide to adding an Instagram feed to Squarespace shows every click.
Shopify
If your theme includes a Custom Liquid section, open the theme editor, click Add section, and choose Custom Liquid. Paste your code into the section and save. Shopify recommends these custom code settings over editing theme files, because they help keep your theme eligible for updates. If you don't see the option, check your theme's documentation. For ideas on using feeds on product pages, see our guide to Instagram and Shopify.
Webflow
Drag an Embed element onto the canvas and paste the code into its settings. Then publish the site so the feed goes live on your domain. For placement tips, read our Webflow guide.
HubSpot
Open the page in HubSpot's editor, go to Settings, then Advanced options, and paste the code into the additional code snippets field. The feed will appear after you publish the page. Our full walkthrough explains how to add a social feed to your HubSpot website.
SharePoint and plain HTML sites
On a hand-coded site, open the page file and paste the full embed code where you want the feed. SharePoint needs a few extra steps, which are covered in our guide to embedding a social media feed on SharePoint. For more on the HTML method, see how to embed a social media feed with HTML.
How to keep your feed fast and working
A single feed script is lighter than several single-post embeds, and most feed problems come from a handful of common causes.
Speed comes first. Each native embed loads its own script, so six embedded Instagram posts means six separate scripts. A Curator feed uses one JavaScript embed of 13 lines and doesn't rely on an iframe. Place feeds below your main content so visitors can read the page while the posts load.
Most pages already load plenty of outside code before you add a feed. The median web page makes 83 third-party requests on desktop and 79 on mobile (HTTP Archive, 2025).
An ecommerce store had six Instagram post embeds stacked on one product page. Each loaded its own script, and the page loaded slowly on phones. The team replaced the six embeds with one feed filtered to that product's hashtag and moved it below the reviews. The page showed the same posts using one script, and the layout no longer shifted while it loaded.
If a feed isn't showing up, work through these checks in order:
Unpublished changes: click Publish in your Curator dashboard, then refresh the page.
Incomplete code: make sure both the div and the script are on the page.
Wrong block type: move the code out of a regular text block and into an HTML or code block.
Personal Instagram account: switch to a Business or Creator account, then reconnect it in your feed tool.
Blank for visitors: if the feed only appears while you're logged in, make sure the account is public and allows embedding.
An inactive account: add a hashtag or mentions source if your account rarely posts.
If you're using a platform's native embed instead, three more causes are worth checking:
Facebook Page Plugin width: keep it between 180 and 500 pixels.
Retired Facebook buttons: delete any Like or Comments plugin code from before February 2026.
YouTube error 153: confirm your site sends an HTTP Referer.
I've seen plenty of teams approve a feed while logged in, only to find it blank for visitors. Opening the page in a private browser window catches that before launch.

When a different tool fits better
You don't always need an aggregator. A native embed is enough for one post in a blog article, and a platform widget can handle a small box for a single channel.
When someone only needs one Facebook timeline in a sidebar, I tell them to use Meta's free Page Plugin. There's no reason to pay for features you won't use.
An aggregator becomes worthwhile when you want several platforms in one feed, moderation, your own styling, or different feeds on different pages. For screens at live events, a social media wall is the better format. If you'd like to compare tools, our roundup of the best social media aggregators lays them out side by side.
Choosing the right setup for your site
Use native code when you only need a single post. Choose an aggregator when you want something live, branded, or moderated. Then give each page a feed built for the people who visit it.
You might be learning how to add a social media feed to your website for the first time, or replacing a collection of old embeds. Either way, Curator's free forever plan makes it easy to start.
Browse our templates, connect your first account, and preview each social media feed embed before it goes live. Sign up free today.
Social feed on website FAQs
Can I add a social feed to my website for free?
Yes. Every platform covered above offers free native embed code, although most of it only works for single posts. For a feed that updates automatically and combines platforms, Curator's free forever plan includes 3 sources. That's enough to embed a social feed from your main accounts without paying anything. The Business plan adds premium sources like X and LinkedIn.
How do I show a live social media feed on my website?
Connect your accounts to an aggregator, build a feed, and paste its embed code into your page. New posts then appear on your plan's refresh schedule. In Curator, feeds update every 24 hours on Free, every 60 minutes on Pro, and every 15 minutes on Business. Once it's set up, a live social media feed on your website stays current without any further code changes.
Why did my Instagram feed stop updating?
The most common cause is a personal Instagram account. Meta shut down the Instagram Basic Display API in December 2024, and tools that relied on it stopped pulling posts. Switch to a Business or Creator account, link it to a Facebook Page, and reconnect it in your feed tool. Expired connections cause the same problem, so try reconnecting first.
Does an embedded social feed help SEO?
A feed won't guarantee higher rankings, so treat it mainly as a way to improve the visitor experience. How the feed is built still matters. Iframe widgets load posts from another site inside a frame. Curator renders with JavaScript instead, so the posts load as part of your own page.
Can I embed more than one social feed on the same page?
Yes. Paste each feed's complete embed code as a separate block on the page. Splitting social media feeds on your website this way often works better than combining everything. For example, you might place an Instagram grid near your products and a LinkedIn feed near your team section. Check your page speed as you add feeds, and give each one a clear purpose.