You post on Instagram several times a week and the website has not changed since it was built. Showing your latest posts on the site seems like an easy way to make it feel alive without extra work. It can be. It also brings a login connection that expires, extra weight on the page and, in some countries, a consent question, so it is worth knowing what you are signing up for.
A plugin is the usual way to add an Instagram feed to WordPress. Embedding one or two chosen posts is lighter, and skipping both for a small gallery of your own photos with a link to your profile is lighter still, an option people tend to overlook. If you are still weighing up how much of your business should live on social media at all, our post on Instagram pages versus a website covers that question.
Live feed or a few chosen posts?
Start by deciding what you want visitors to see.
- A live feed shows your latest posts automatically, usually as a grid. Good if you post often and the posts show your work: food, interiors, hair, events.
- Embedded single posts show specific posts you choose, such as a reel of a finished project on its service page. Good if only some of your posts suit the website.
- No embed at all: a few of your best photos uploaded to WordPress, with a button to follow you. Good if your posts are mostly offers, memes or stories that would look odd on the site.
A feed is only as good as what you post. If your last post was months ago, a feed tells every visitor that, right on your home page.
How to add an Instagram feed to WordPress with a plugin
Feed plugins connect to your Instagram account through Meta’s official tools, store copies of your recent posts, and display them in a grid or carousel. Smash Balloon’s Instagram Feed is one of the best known; several others work in a similar way.
Check your account type first
Meta has retired the older connection method that personal accounts relied on, so most feed plugins now ask for an Instagram professional account (business or creator). A personal account can be switched in the Instagram app’s settings. Check what your chosen plugin’s documentation says before you start, because a mismatch here makes the connection step fail in confusing ways.
Set up the feed
- Take a backup of the site, then install and activate the feed plugin.
- Open the plugin’s settings from its menu in the dashboard and choose to connect an account.
- You will be sent to Instagram or Facebook to log in and approve access. Log in with the account that owns the Instagram profile and approve the permissions it asks for.
- Back in WordPress, create a feed: choose the layout, number of posts and number of columns. Fewer posts is usually better; six to nine fill a grid without dragging the page down.
- Check how the feed looks on mobile. Most plugins let you set a different number of columns for phones.
- Place the feed on a page using the plugin’s block or shortcode.
- Look at the live page logged out, in a private browser window, to see what visitors see.
Why feeds stop working
The usual complaint is that a feed quietly stops updating, or shows an error that only logged-in admins see. The cause is nearly always the connection, not WordPress.
- Access tokens expire. The connection uses a token that has to be renewed. Plugins generally try to renew it on their own, but if a scheduled task on the site fails, the renewal can be missed.
- Account changes break the link. Changing the Instagram password, removing the app’s access in your account settings, or switching account type can end the connection.
- Meta changes its rules. Meta has changed how outside apps connect more than once, and each time plugins have had to catch up. An out-of-date feed plugin is often the first thing to break.
The fix is usually to open the plugin’s settings and reconnect the account. Put a reminder in your calendar to check the feed once a month, rather than waiting for a warning email that may never arrive.
Embedding one Instagram post
To embed Instagram posts one at a time, open the post on Instagram in a web browser on a computer, click the three-dot menu on the post and choose Embed. Copy the code it gives you, then in WordPress add a Custom HTML block where the post should appear and paste the code. Preview the page to see it.
WordPress once turned a pasted Instagram link into an embed by itself. That stopped after Meta changed how its embeds work, so a plain link now stays a plain link, and the embed code is the reliable way to do it without a plugin.
Two things to know. Each embed loads Instagram’s own script, and several embeds on one page add up. And if you delete the post on Instagram or make the account private, the embed on your site breaks.
The quieter option: your own photos and a link
Often the best “Instagram feed” is not a feed. Choose six of your best photos, upload them to WordPress, show them with a Gallery block, and add a button below that says “See more on Instagram”. Add the Instagram icon to your header or footer too; our post on adding social media icons in WordPress shows how.
There is nothing to reconnect and nothing loaded from another company’s servers, and the photos stay on your site even if your account is ever locked. Swap in fresh photos every few months.
The cost: speed and privacy
Any content from another service has a price on the page.
- Speed. Feed plugins add their own scripts and styles, and images may load from Instagram’s servers. Embedded posts load Instagram’s script. Test the page before and after; our post on third-party scripts slowing a website explains how to see what an embed costs.
- Privacy. When a visitor’s browser loads content from Meta, Meta can see that visit, and cookies may be set. In Europe and the UK, privacy rules often mean that kind of content should wait for the visitor’s consent. A consent tool can hold back the embed until the visitor agrees; see adding a cookie consent banner in WordPress.
- Accessibility. Feed images rarely come with useful descriptions. Writing a clear first line in each caption helps, and some plugins can show captions under the images.
Feed plugins that store resized copies of images on your own server reduce some of this, which is worth looking for in the settings.
Where to put it
A full feed on the home page pushes your services and contact details further down. A small grid near the footer, or on an About or Gallery page, gives the same reassurance without getting in the way. On a service page, one or two embedded posts showing that exact service usually work better than the whole feed.
A feed is a good example of a feature that looks free but carries upkeep, which is the trade-off our overview of adding features to your website is built around. For the regular checks that would catch a stalled feed early, see our guide to managing your WordPress site.
Frequently asked questions
Can I show someone else’s Instagram posts or a hashtag feed on my site?
Embedding another account’s public post with Instagram’s embed code is possible, but showing other people’s content on a business site is best done with their permission. Hashtag feeds depend on what Meta allows outside apps to access, which has changed over time, so check the current plugin documentation rather than relying on older tutorials.
Will an Instagram feed help my website’s SEO?
Not in any meaningful way. The posts are mostly images and short captions, and much of the content may load from Instagram rather than as text on your page. A feed can reassure visitors, but your pages rank on their own written content. Do not rely on a feed to keep the site looking updated for search engines.
Why does my Instagram feed show old posts?
Most feed plugins keep a cached copy of your posts and check for new ones on a schedule. If the connection to Instagram has expired, the plugin keeps showing the last copy it had. Reconnect the account in the plugin’s settings, then clear the plugin’s feed cache and any page cache on the site.
Can I add an Instagram feed without a plugin?
Not a live, automatically updating one. Without a plugin you can embed individual posts with the code from Instagram’s Embed option, pasted into a Custom HTML block. For a grid that changes by itself you need a plugin or a third-party widget service, which brings the same connection and privacy questions.
Reconnecting the account fixes most stuck feeds. When it does not, or the feed has started breaking the page layout after an update, our WordPress bug fixing service can look into it, from ₹1,499 per incident onwards.
Next in this series: How to Show Google Reviews on WordPress the Right Way