Shoppable Instagram Feed
Display an Instagram Feed anywhere on your store
Is this for me?
If you post product photos, lifestyle shots, or short videos on Instagram, this app pulls those posts onto your storefront and lets you tag them with products from your catalog. A shopper sees a post they like, clicks it, and the modal shows them exactly which products are in the shot with a direct link to buy. It turns the social proof you're already building on Instagram into a shopping experience on your store.
Best fit: brands with an active Instagram presence (lifestyle, fashion, beauty, home goods, food) where the visual content does the selling.
Setup, Step by Step
- Open the Shoppable Instagram Feed app in your Vitals dashboard.
- Connect your Instagram account — either through Facebook Business (if your Instagram is linked to a Facebook page) or directly through Instagram Login.
- Wait for your posts to sync. Images, videos, and carousel albums all come through.
- Open a post and add product tags by clicking on the image where the product appears. Each tag becomes a numbered hotspot a shopper can click.
- Pick your Feed layout for desktop and mobile (grid or slider, square or portrait).
- Decide where the feed shows up. By default it appears on the homepage and product pages. You can turn either off, or use the Shopify theme editor to drop the feed block onto other pages.
- Adjust colors, spacing, and the section title to match your store.
Before you start: Your Instagram account needs to be a Business or Creator account to connect. Personal Instagram accounts won't work.
When to use each layout
The feed is configured separately for desktop and mobile, so you can mix them (for example, grid on desktop, slider on mobile).
| Layout | When to use it |
|---|---|
| Grid (square) | Classic Instagram look. Best when you want the feed to feel like a mini Instagram profile on your store. |
| Grid (portrait) | Better for Reels-style content or vertical product shots. Posts get cropped to 9:16. |
| Grid auto-layout | Masonry style — posts keep their original aspect ratio. Use when you don't want anything cropped. |
| Slider (square / portrait) | Saves vertical space. Best for mobile, or for placing the feed between other sections on a long page. |
For grids, the total posts shown is Number of columns times Number of rows. For sliders, Number of posts controls it directly.
Curating which posts appear
By default, every new Instagram post you publish goes live on your store automatically. If you'd rather hand-pick which ones show up, turn off Auto publish new posts, then go to the Posts tab and toggle visibility on the posts you want.
This matters more than it sounds. Not every Instagram post is a sales asset — memes, behind-the-scenes shots, and event posts can dilute a feed that's supposed to drive product clicks.
Tips for Getting the Most Out of It
- Tag every post you publish on the feed. An untagged post is just a pretty picture. A tagged post is a shoppable storefront. The hotspots are the whole point.
- Check it on mobile. Most of your traffic is mobile. Sliders usually feel better than grids on small screens because they don't push the rest of the page down.
- Match the section title to your brand voice. "Check out our Instagram" is fine, but "As seen on @yourbrand" or "Real customers, real fits" reads stronger.
- Don't overload the feed. Eight to twelve posts is usually plenty. Showing 30 posts means most shoppers scroll past them.
- Use carousel posts strategically. Multi-image posts get arrow navigation in the modal — good for showing a product from multiple angles or in different settings.
- Pin the feed near related content. On the homepage it sits before the footer by default, which works. On product pages, it gives a "see this in real life" moment right where shoppers are deciding.
What the Post Modal Shows
When a shopper clicks a post, a full-screen modal opens with:
- The full image or video (videos autoplay)
- Carousel navigation for multi-image posts
- Tagged products with thumbnail, title, and a link to the product page
- Numbered hotspots on the image showing where each tagged product appears
- The post caption
- Like and comment counts (you can hide these)
- Your profile picture, username, and a Follow link
- Arrow-key and swipe navigation between posts
Frequently Asked Questions
How do I connect my Instagram account?
Open the Shoppable Instagram Feed app in the Vitals dashboard and follow the connection flow. You can connect through Facebook Business (if your Instagram is linked to a Facebook page) or directly through Instagram Login. Your Instagram needs to be a Business or Creator account.
Why are some of my Instagram posts not showing?
Two common reasons. First, if Auto publish new posts is off, new posts stay hidden until you make them visible from the Posts tab. Second, you may have hit the layout limit — a grid shows columns times rows posts, and a slider shows whatever Number of posts is set to.
Can I choose which posts appear on my store?
Yes. Turn off Auto publish new posts, then go to the Posts tab and pick the ones you want visible. Good for keeping the feed focused on your best product shots.
How do I tag products on my posts?
In the Vitals dashboard, open a post and click on the image where the product appears. Each tag becomes a numbered hotspot. Shoppers click it to see the product thumbnail, title, and a link to the product page.
Can I place the feed on pages other than the homepage and product page?
Yes. Use the Shopify theme editor and drop the Instagram Feed block into any section. If you need a placement the theme editor doesn't cover, reach out to Vitals support.
Do carousel posts show all the images?
Yes. The modal shows every slide with arrow navigation and dot indicators. Images and videos in the same carousel both work.
What happens if my Instagram connection expires?
The app keeps the connection alive automatically. If something breaks it (for example, you change your Instagram password), you'll get an email asking you to reconnect from the dashboard.
Can I hide the like and comment counts?
Yes. Turn on Hide Like and Comment count to remove them from both the hover overlay and the modal.
Settings Reference
Section Header
| Setting | Type | Default | Description |
|---|---|---|---|
| Section title | Text field | Check out our Instagram | Heading above the feed (translatable) |
| Section subtitle | Text field | (empty) | Subtitle below the heading (translatable) |
| Title color | Color picker | #000000 | Color of the section title |
| Subtitle color | Color picker | #454545 | Color of the section subtitle |
Feed Display
| Setting | Type | Default | Description |
|---|---|---|---|
| Feed layout (desktop) | Dropdown | Grid (square) | Grid auto-layout, Grid (square), Grid (portrait), Slider (square), Slider (portrait) |
| Feed layout (mobile) | Dropdown | Slider (square) | Same options as desktop |
| Number of columns (desktop) | Number field | 4 | Columns in grid layout on desktop |
| Number of columns (mobile) | Number field | 2 | Columns in grid layout on mobile |
| Number of rows (desktop) | Number field | 2 | Rows in grid layout on desktop |
| Number of rows (mobile) | Number field | 2 | Rows in grid layout on mobile |
| Number of posts (desktop) | Number field | 12 | Posts shown in slider layout on desktop |
| Number of posts (mobile) | Number field | 12 | Posts shown in slider layout on mobile |
| Space between posts (desktop) | Number field | 4 | Gap between posts in pixels on desktop |
| Space between posts (mobile) | Number field | 4 | Gap between posts in pixels on mobile |
| Feed maximum width | Number field | 1200 | Maximum width of the feed in pixels |
| Set to full-width | On/Off toggle | Off | Stretch feed to the full page width |
| Hover background color | Color picker | #000000 | Overlay color on post hover (at 73% opacity) |
| Hide Like and Comment count | On/Off toggle | Off | Hide engagement metrics on hover and in the modal |
Modal Appearance
| Setting | Type | Default | Description |
|---|---|---|---|
| Modal background color | Color picker | #ffffff | Background color of the post modal |
| Modal text color | Color picker | #222222 | Text color inside the post modal |
| Upload avatar | Image upload | (empty) | Custom avatar image for the modal profile section |
Placement
| Setting | Type | Default | Description |
|---|---|---|---|
| Display the Instagram Feed automatically on the Product Page | On/Off toggle | On | Auto-place on product pages |
| Display the Instagram Feed automatically on the Homepage | On/Off toggle | On | Auto-place on homepage, before the footer |
Content
| Setting | Type | Default | Description |
|---|---|---|---|
| Auto publish new posts | On/Off toggle | On | Automatically show newly synced posts |
| Follow | Text field | Follow | Label for the Follow button (translatable) |