Since July 2025, a public Instagram post can rank in Google next to your website. Most brands haven't noticed, because nothing in the app tells you it happened. Here's exactly how Instagram search queries get matched to a post, and the technical details that decide whether yours shows up at all.
A florist in Austin posts a photo of a wedding arrangement, tags the venue, and writes two sentences about the flowers used. Months later, that exact post ranks on the first page of Google for someone searching the venue's name alongside "floral arrangements." Nobody built a landing page for it. Nobody ran an ad. Instagram sent the post to Google directly, the way it now does for any eligible public account, and Google indexed it like any other page on the web.
Instagram SEO is the practice of writing captions, alt text and location tags so a public post can rank in Google and Bing, not just inside Instagram's own search bar and Explore feed. Since Instagram began sending public posts from professional accounts to search engines in July 2025, the same fields that used to matter only for in-app discovery now double as ranking signals in a search engine your team doesn't control.
Instagram flipped a setting that made public posts from professional accounts, business and creator, crawlable by Google and Bing for the first time. Eligibility comes with real conditions, not a blanket rollout: the account holder has to be over 18, the account has to be set to business or creator rather than personal, and the toggle under Settings, Privacy, "Allow public photos and videos to appear in search engine results" has to be switched on.
Flip it off, or switch the account back to personal, and every post tied to it drops out of the index.
There's a hard cutoff on the back end too: only posts published on or after January 1, 2020 are eligible. A brand's best-performing post from 2016 is permanently invisible to this system no matter how well the caption is rewritten today. That single detail changes how you should think about "old content", it's not automatically dead weight, but it has a real age limit search engines respect.
Before this change, an Instagram profile showed up in Google as, at best, a bio snippet and a grid of thumbnails Google couldn't read. Now, individual posts compete directly against blog articles, directory listings and review sites for the exact same query, which means a caption is doing a job it was never written for.
Four fields carry the weight, and hashtags aren't one of them. Captions matter most, specifically the opening sentence: Instagram truncates a caption at roughly 125 characters before showing "more," and that same window is the part most likely to get pulled into a search snippet, so anything vague or clever placed after it may as well not exist for search purposes.
Alt text is the field almost nobody touches, and Instagram auto-generates one using its own object-recognition model, producing output like "Photo by @florist_austin, may contain: flower, indoor" if left alone. That generic string is what gets indexed unless you override it manually under Advanced Settings with a real description of what's actually in the frame.
Location tags feed local intent directly, pairing a post with the same kind of geographic signal Google already weighs for local search and map pack rankings. Engagement still drives in-app distribution through the Explore and Reels algorithm, but it isn't part of the external indexing signal itself, a post can rank in Google with modest likes if the caption and alt text are specific.
Hashtags still do a job, routing a post into Instagram's own topic and location feeds, but they carry no independent weight once that post leaves the app and lands in a Google results page. Eleven hashtags under a one-line caption give a search crawler nothing concrete to match a query against.
A caption written for the Explore feed and a caption written to answer a Google search are not the same sentence.
Most accounts that see no benefit from this change aren't ineligible, they're just leaving default settings in place that quietly opt them out of ranking well. The pattern repeats across almost every business account we've audited since the rollout.
Instagram SEO doesn't replace anything already on the table, it adds a channel that overlaps with three of them. Location tags reinforce the same signals a local SEO strategy is already building through Google Business Profile and citation consistency, so a florist optimizing Instagram posts for a venue name is effectively doing local SEO work twice, once on the website and once inside the app.
Posting cadence and caption quality are also no longer a pure organic-reach concern; they're now a social media management function with direct search consequences, since consistent, well-tagged posting builds a larger footprint of indexed pages over time.
And because AI answer engines increasingly cite whatever ranks well in traditional search, an indexed Instagram post has become a legitimate source an assistant can pull from, which is exactly the kind of new surface a generative engine optimization strategy should already be accounting for. On the paid side, none of this changes how Meta ad auctions rank creative, that's a separate algorithm entirely, but a brand already writing sharp, specific ad copy has a head start writing captions that do double duty for search.
No. Hashtags still route content to topic and location feeds inside the app, but they carry no weight in the external Google index. Google reads captions, alt text and geotags, not hashtag lists, so a caption that's just eleven hashtags and no sentence gives the crawler nothing to match a search query against.
Business and creator accounts only, and only if the account holder is over 18 and hasn't switched off the toggle in Settings, Privacy, Allow public photos and videos to appear in search engine results. Personal accounts, private accounts and Stories are excluded regardless of that toggle.
Only if they were published on or after January 1, 2020. Anything older stays out of the index permanently, even on an eligible business account with the toggle turned on, so a ten-year-old cornerstone post can't be pulled back into search no matter how it's re-optimized.
The caption text, the alt text field and any location tag attached to the post. Text baked into an image or a Reel's cover graphic isn't part of that signal, since indexing runs off the metadata Instagram exposes to search engines, not the visual content of the photo or video itself.
The ranking logic is the same, relevance, clarity, structured signals, but the levers are different. There's no meta title or H1 to write; alt text and the first sentence of a caption do that job instead, and there's no backlink profile to build since the entire signal set lives inside a single post.
Write captions that state what's in the post in plain language within the first sentence, since Instagram truncates captions after roughly 125 characters and that's also the portion most likely to get pulled into a search snippet. Replace the auto-generated alt text under Advanced Settings with a real description, tag the specific location shown, and revisit older high-performing posts from 2020 onward instead of only optimizing new ones.
Book a 30-minute call. We'll pull up your last 20 posts, check what's indexed and what's not, and tell you honestly what to fix first, no generic audit deck.
The call is with me, not a salesperson.
Account eligibility, alt text and caption structure, together.
What to fix first, and what it costs.