How to add alt text to Instagram posts (and why it matters on your website)
Alt text is a short written description of an image for people who can’t see it. Instagram lets you write your own for every photo, and it takes less than a minute per post. This guide shows how to add and edit it, how to write descriptions that actually help, and what happens to that text when your posts are shown on your website through a feed widget like ours.
Updated October 12, 2026

What alt text is and who it’s for
Alt text (short for “alternative text”) is a text version of an image. Most people never see it. It’s read aloud by screen readers, the software many blind and low-vision people use to browse the web and apps. It’s also what a browser shows when an image fails to load, and it’s one of the ways search engines understand what an image is about.
On Instagram, where nearly every post is visual, alt text is often the only way a screen reader user can know what you posted. A caption like “Saturday vibes ✨” tells them nothing about the photo. A line of alt text like “A dozen frosted cupcakes in pastel colors on a white marble counter” does.
The W3C’s Web Content Accessibility Guidelines (WCAG) put this at the very first success criterion, 1.1.1 Non-text Content, at Level A, the most basic level: all non-text content presented to the user should have a text alternative that serves the equivalent purpose. The W3C explains why: text alternatives can be rendered visually, read aloud or shown in braille, so they suit whatever way a person is accessing the content.
Instagram’s automatic alt text
You might not have written any alt text so far, but Instagram may already be providing some. Its Help Center explains that automatic alt text uses object recognition technology to provide a visual description of photos for people with visual impairments. These automatic descriptions tend to be general, naming the kinds of things the software recognizes in the picture.
Instagram adds two important notes. First, “You can replace this text to provide a better description of a photo.” Second, “this description will only be read if someone is using a screen reader to access Instagram.” In other words, automatic alt text is a fallback that lives inside Instagram. It doesn’t know that the cake is your bestseller, that the person in the photo is your head stylist, or that the room is the new reading corner in your library. Only you can add that.
How to add alt text before you share a post
Instagram’s Help Center describes these steps for Instagram on a computer:
- Start by uploading an existing photo to Instagram.
- Choose a filter and edit the image, then click Next.
- Click Accessibility, then write the alt text in the box.
- Click Share to post.
In the Instagram app on a phone or tablet, the option sits in the same part of the process: after editing, on the screen where you write the caption, look for the accessibility or alt text setting (it may be grouped under more or advanced settings). Instagram updates the app regularly and the label and position have moved over the years, so if you can’t find it, search the Instagram Help Center for “alt text” and choose your device. The Help Center article has versions for Android, iPhone, iPad, Instagram Lite and computers.
How to change alt text on a post you’ve already shared
Older posts can be updated at any time, and the steps are almost the same. On a computer, Instagram’s Help Center says:
- Above your photo or video, click the options icon (the three dots).
- Click Edit.
- Click Accessibility, then write the alt text in the box.
- Click Done to save your changes.
You don’t need to go back through years of posts in one sitting. A practical approach is to start with the posts people are most likely to see: your pinned posts, your most recent posts, and anything you link to from your website, emails or ads. Then add alt text to each new post as part of your normal posting routine.
How to write good alt text
The W3C’s images tutorial gives the core rule for informative images: express the image as “a short phrase or sentence” that conveys “the meaning or content that is displayed visually.” That “typically isn’t a literal description of the image,” and a detailed literal description is only needed when the details are themselves the point. The same photo can deserve different alt text depending on why you posted it.
Some practical guidelines that follow from this:
- Lead with what matters. Put the main subject first. Screen reader users hear the text in order, so “Bride and groom laughing under a cherry tree” is better than “Under a blossoming cherry tree on a sunny afternoon, a bride and groom laugh.”
- Include the details your post is about. If you’re announcing a new menu item, name it. If you’re showing a finished haircut, describe the cut and color. If the photo shows a property, say which room.
- Don’t start with “Image of” or “Photo of.” Screen readers already announce that it’s an image. Mention the medium only if it matters, such as “Watercolor illustration of…” or “Screenshot of…”.
- Include any text that appears in the image. If your post is a graphic announcing “Closed Monday, July 4,” the alt text needs to say that. Text in an image is invisible to a screen reader otherwise.
- Don’t repeat the caption. The caption is already read out. Alt text describes what the caption doesn’t: what the photo actually shows.
- Skip hashtags and keyword lists. Alt text is for people. A string of keywords is tiring to listen to and doesn’t describe anything.
- Keep it short. One or two sentences is usually right. If an image carries complex information, such as a chart or a price list, put the full details in the caption or on your website as text.
Here are some before-and-after examples for typical business posts:
| Post | Weak alt text | Better alt text |
|---|---|---|
| Bakery: new seasonal item | cake | Slice of pumpkin cheesecake with a gingersnap crust and whipped cream on a white plate |
| Salon: finished color | hair #balayage #salon | Long wavy hair with honey-blonde balayage, viewed from the back |
| Real estate: listing photo | Photo of a kitchen | Open kitchen with white cabinets, a gray quartz island with three stools, and a large window over the sink |
| Gym: class schedule graphic | schedule | Fall class schedule: Yoga Monday and Wednesday 7 a.m., HIIT Tuesday and Thursday 6 p.m., Spin Saturday 9 a.m. |
| Nonprofit: volunteer event | volunteers | Eight volunteers in green T-shirts sorting canned food into boxes at a long table |
| Restaurant: team photo | our team | Chef Maria and four kitchen staff in white aprons smiling in front of the pizza oven |
Alt text, captions and image descriptions: what goes where
People often mix these up, so here is how they differ on Instagram and on a website:
| Who sees or hears it | What it’s for | |
|---|---|---|
| Alt text | Screen reader users (and anyone when an image fails to load) | A short description of what the image shows |
| Caption | Everyone | Your message: context, story, call to action, hashtags |
| Image description in the caption | Everyone | Some accounts add a written description to the caption itself, so it’s visible to all and travels with the post wherever the caption is shown |
| Video captions (subtitles) | Anyone watching, including deaf and hard-of-hearing viewers | The spoken words and important sounds in a video |
Writing a short visible description in the caption is optional, but it has one practical advantage worth knowing about: captions are visible to everyone, including sighted visitors, wherever your posts are embedded in full, such as the lightbox of our widget when captions are enabled. Alt text stays hidden from sighted visitors; our widget uses it only as the image description that screen readers read.
How to check your alt text
You don’t need special tools to check whether your descriptions work. Phones and computers come with screen readers built in: VoiceOver on iPhone, iPad and Mac, TalkBack on many Android phones, and Narrator on Windows. Turn one on for a few minutes, open your Instagram profile, and move through a few of your posts. Listen to what is read out for posts with and without your own alt text. It’s the fastest way to understand why “IMG_2041” or a row of hashtags helps nobody.
For your website, you can see each image’s alt text in the browser. Right-click an image, choose Inspect (or Inspect Element), and look at the img element’s alt attribute in the developer tools panel. An empty value (alt="") means the image is treated as decorative. No alt attribute at all usually means the image was added without any thought for it, and some screen readers will then read out the file name instead. Checking the images you uploaded yourself, such as your logo, product photos and banners, is a quick, worthwhile task while you’re thinking about alt text anyway.
Carousels, videos and Reels
Instagram’s alt text help article is about photos: its sections are titled “Edit alt text for a photo before you share it” and “Change the alt text of a photo after you’ve shared it.” For carousel posts, check each image as you edit, since each photo is its own image. Videos and Reels work differently. Spoken words in a video are best covered by captions, and anything important shown only on screen is worth mentioning in your post’s caption text. Instagram’s own features for video change over time, so check the Help Center for what’s currently available on your device.
Why alt text matters on your website
Alt text on Instagram helps people on Instagram. But if you show your posts on your website, your website is where the same question comes up again, and the web has its own rules.
- Accessibility. WCAG 1.1.1 applies to every image on a web page, not just the ones you uploaded yourself. Embedded content is still part of your page as far as visitors are concerned.
- Search. Google’s image SEO guidelines say “the most important attribute when it comes to providing more metadata for an image is the alt text,” and warn that stuffing alt attributes with keywords “results in a negative user experience and may cause your site to be seen as spam.” We explain how this applies to feed images in detail in does an Instagram feed on your website help SEO?
- Broken images. If an image can’t load, for example on a weak connection or behind a strict content blocker, the alt text is what’s left.
The W3C’s alt decision tree is a useful tool for every image on your site. It asks a few simple questions: Does the image contain text? Is it used in a link or a button? Does it contribute meaning? Is it purely decorative? Each answer leads to a recommendation, from a short description to an empty alt attribute for decorations. WCAG’s guidance is that purely decorative images should be implemented so that assistive technology can ignore them, since describing decoration just distracts screen reader users from the content.
What our widget does now
Social Feed by grip space gives every image in the feed a text description. For each post, the widget picks the first of these that exists:
- The alt text you wrote on Instagram. If Instagram’s API returns your own alt text for the post, the widget uses it as is.
- The start of the caption. Without alt text, the widget uses the first 100 characters or so of the caption, with line breaks turned into spaces and an ellipsis if it was cut.
- A generic label. If there is no caption either, the image is described as “Instagram post by @yourname” (on Japanese pages, “@yourname のInstagram投稿”).
The same description is used for the tile in the grid or slider and for the image or video in the lightbox. In a carousel, each image in the lightbox gets the post’s description followed by its position, such as “(2 / 5)”, because Instagram doesn’t provide separate descriptions for the later images. The profile picture in the account header is described as “@yourname”.
That order is why writing alt text on Instagram still matters: it is the first thing the widget uses. A caption is a reasonable fallback, but it was written to be read alongside the photo, not instead of it. “Saturday vibes ✨” as a description tells a screen reader user as little on your website as it does on Instagram.
A few related points, so you have the full picture. When tiles open a lightbox or Instagram, they can be reached with the Tab key and opened with Enter or Space, with a visible focus outline; with “Do nothing” they aren’t focusable. The lightbox is announced as a dialog, focus moves into it, Tab stays inside it, Escape closes it and focus returns to the tile. The caption in the lightbox is plain text, and the Follow button and the “View on Instagram” link are ordinary text links. Our article on lightbox or link to Instagram covers keyboard access in more detail.
Making a page with a feed more accessible today
Automatic descriptions in the feed are only as good as the alt text and captions behind them, so the page around the feed still matters. The principle is simple: treat the feed as a visual extra, and make sure nothing important exists only inside it.
- Introduce the feed with a heading and a sentence. Tell visitors what the feed is and what it shows. Screen reader users can then decide whether to explore it, and everyone gets context.
- Wrap the embed in a labeled section. The widget renders right after its script tag, inside the same parent element. If you place the script inside your own section with a heading, the feed becomes part of that labeled region (see the example below).
- Put essential information in text. Prices, opening hours, dates, menus and booking details belong in the page’s text, not only in an Instagram graphic.
- Host the images that matter yourself. If a photo is central to the page, such as a featured product or a key project, add it to the page as a normal image with your own alt text and a short description.
- Link to your profile in text. A plain text link to your Instagram profile is easy to find and use with any input method.
- Keep writing alt text on Instagram. It helps your audience on Instagram, and it’s what our widget uses first for the images on your website.
An example of a labeled section around the embed code:
<section aria-labelledby="ig-feed-title">
<h2 id="ig-feed-title">Recent work from our Instagram</h2>
<p>New cakes every week, photographed in our Main Street kitchen.
Follow along at @yourbakery.</p>
<!-- your Social Feed embed code -->
<script type="text/javascript" src="https://n246.grip.space/api/v1/instagram/widget/xxxxxxxx"></script>
</section>Choose a heading level that fits your page’s structure. If the feed is on a page with lots of other content, our guide to where to put an Instagram feed on your website can help you choose a sensible spot, and Instagram feed design covers color contrast for the Follow button.
A quick alt text routine for your team
If several people post for your business, a shared routine keeps alt text from being forgotten:
- Before posting, ask: what would someone miss if they couldn’t see this image?
- Write one or two sentences that answer that, starting with the main subject.
- Copy any text that appears in the image into the alt text.
- Read it back without looking at the photo. Does it make sense on its own?
- After posting, open the post’s edit screen once to confirm the alt text was saved.
Teams often keep a short style note, for example how to refer to products and staff, so descriptions stay consistent no matter who writes them.
Frequently asked questions
Is Instagram’s automatic alt text good enough? It’s better than nothing, but it can only describe what object recognition sees. It doesn’t know your products, people or purpose. Instagram itself suggests replacing it to provide a better description.
Does alt text on Instagram help my Instagram reach? Instagram doesn’t publish anything about alt text and reach, so we won’t guess. The reason to write it is that it makes your posts usable for more people.
Will my Instagram alt text appear on my website through Social Feed? Yes. If Instagram’s API returns your alt text for a post, the widget uses it as the image’s alt text. Without it, the widget falls back to the start of the caption, then to “Instagram post by @yourname”.
Does the feed make my site meet WCAG? We can’t make that call for your site. It depends on what the photos mean on your page and whether their descriptions actually describe them; a caption fallback or a generic label may not. WCAG asks for text alternatives that serve the same purpose as meaningful images, which is why we recommend writing alt text on Instagram and putting anything important in the page’s own text and images. If your site must meet a formal accessibility standard, review the page with whoever is responsible for that.
Should I still add alt text to old Instagram posts? Yes, especially to the posts people see most. It improves your Instagram profile for screen reader users today, whatever you use on your website.
Should every image have a description? No. Purely decorative images, such as background patterns or dividers, should have empty alt text so screen readers skip them. Photos that carry meaning should have a description.
How long can alt text be? Instagram doesn’t state a limit in the Help Center article we checked, and the W3C doesn’t set a number either. Aim for a short phrase or sentence, and move longer details into the caption or onto your website.
Do I need alt text for Reels thumbnails on my site? The same principle applies to every image on a web page. With our widget, a video’s thumbnail gets the same description as any other post: your alt text if Instagram returns it, otherwise the start of the caption. Describe important videos in your page text too.
Related reading
New to feeds? Start with what Social Feed by grip space is, then see Instagram videos and Reels on your website and grid or slider. Installation guides are available for WordPress, Shopify, Wix, Squarespace, Webflow and HTML. You can start on the Free plan or compare plans.
Sources
- Instagram Help Center, “Edit the alternative text for a post on Instagram”: https://www.facebook.com/help/instagram/503708446705527
- W3C, “Understanding Success Criterion 1.1.1: Non-text Content” (WCAG 2.2): https://www.w3.org/WAI/WCAG22/Understanding/non-text-content.html
- W3C WAI, “An alt Decision Tree”: https://www.w3.org/WAI/tutorials/images/decision-tree/
- W3C WAI, “Informative Images”: https://www.w3.org/WAI/tutorials/images/informative/
- Google Search Central, “Image SEO best practices”: https://developers.google.com/search/docs/appearance/google-images
- Meta for Developers, “Instagram Media” reference: https://developers.facebook.com/docs/instagram-platform/reference/instagram-media
Get your embed code in a few minutes. The Free plan needs no credit card.
Sign up freeMore articles

Making social media embeds on your website more accessible
A practical WCAG checklist for social media embeds: images, keyboard, focus, motion, video and contrast, plus an honest look at what our feed widget does and doesn’t do.
Read the article →
Core Web Vitals and third-party embeds: a practical guide for small sites
How social feeds, videos and other embeds affect LCP, INP and CLS, how to measure the impact on a small site, and practical fixes that don’t need a developer.
Read the article →
Instagram embed vs. feed widget speed: what each one loads on your page
What Instagram’s native embed loads (embed.js plus an iframe per post) compared with a feed widget (one script plus images), and how to measure both yourself.
Read the article →
How to add an Instagram feed to Carrd
Add an auto-updating Instagram feed to a Carrd site with the Embed element (Pro Standard or higher): steps, layout tips, sections, columns and fixes.
Read the article →
How to show only Instagram Reels on your website
Set up a Reels-only Instagram feed on your website: the Reels filter, how videos play, layout tips, and why some Reels show as still images.
Read the article →
How to show only recent Instagram posts on your website
Keep your website’s Instagram feed current: show only posts from the last 30 days, 90 days or year, how the date range is measured, and seasonal tips.
Read the article →