Hashtags still matter on Instagram. The problem is most accounts are working from beliefs that haven't been true for years β that you should max out at 30, or that piggybacking on the biggest tags is enough to get seen.
I've run a lot of Instagram accounts and built automation systems around them (I'm the founder of GramShift), and after digging into how the algorithm actually ranks posts, one thing is clear: hashtag count is the wrong lever. Relevance to the post and the way you combine tag tiers is what moves Explore-tab reach.
This article walks through the exact tag selection process I use, plus how I measure what's working and what to avoid so you don't get throttled. If you run a solo brand or side-hustle account and your reach has flatlined, this is for you.
The hashtag myths β and why quality beats quantity
Let's clear up the misconceptions that I see eating most accounts' reach.
Myth 1: "Fill all 30 hashtag slots and you'll grow"
Yes, Instagram lets you add up to 30 tags. No, that doesn't mean you should. Cramming in loosely related tags makes the algorithm read your post as spammy. In my own tests, posts with 10β15 carefully chosen, on-topic hashtags consistently outperformed posts that brute-forced all 30 β both in Explore impressions and in the share of reach coming from hashtag entry points.
Myth 2: "Use the same big tags the top accounts use"
Tags like #coffee or #travel feel appealing because they're huge. But that's the problem β a fresh post drops off the top results in seconds. #coffee alone has hundreds of millions of posts. The realistic win is finding tags your target audience actually searches and where the competition isn't crushing.
The truth: relevance + combination wins Explore
The algorithm wants to surface content that matches a user's interests. The more tightly your hashtags map to what's actually in the post, the better its chances of landing in front of the right people. Layer in a deliberate mix of big, mid, and small-volume tags and you cover multiple search intents at once.
My 3-step process for picking hashtags
Here's the workflow I run every time I build a post β informed by both manual testing and the automation work I do on the GramShift side.
Step 1: Anchor everything to the post's actual topic
Hashtags start with the content, not the other way around. I get clear on the theme, the target reader, and the single message, then brainstorm keywords from there. For a post about "AI-powered Instagram automation", candidates might be #InstagramAutomation, #AImarketingTools, #SocialMediaWorkflow.
- Concrete example: For a "hidden NYC coffee shops" post, I'd pull tags like #NYCcoffee, #NYCfood, #WilliamsburgCafes, #CoffeeGram β specific places and angles, not just #coffee.
Step 2: Check volume and competition
Run each candidate through Instagram search and tools like Hashtagify to see post count and related keywords. I sort everything into three tiers:
- Big tags (1M+ posts): Wide reach, brutal competition. Keep to 2β3.
- Mid tags (100kβ1M): Best risk/reward ratio. 5β8 of these.
- Small tags (10kβ100k): Niche audiences, higher intent. 3β5 of these.
Tags under 10k ("micro tags") can convert beautifully for hyper-niche audiences, but reach is capped. I weight my sets around mid and small.
Step 3: Combine deliberately β don't just stack
The arrangement matters. I build sets around five roles:
- Theme tag: The literal topic (e.g. #InstagramMarketing).
- Related tag: Adjacent angles (e.g. #ContentStrategy, #FollowerGrowth).
- Audience tag: Who you're talking to (e.g. #SoloFounder, #SideHustlers).
- Location tag: For local businesses (e.g. #BrooklynCoffee).
- Trend tag: Relevant trending phrases for short-term lift.
This signals the algorithm what the post is and who it's for from multiple angles. On my own accounts, layering tags this way bumped Explore-driven reach by roughly 1.5x.
The combination strategy that actually moves reach
A few concrete examples of balanced sets.
Balancing big, mid, and small
My default ratio:
- Big: 2β3 (e.g. #Instagram, #SocialMediaMarketing)
- Mid: 5β8 (e.g. #InstagramGrowth, #SmallBusinessMarketing)
- Small: 3β5 (e.g. #GramShift, #AImarketing, #AutomationTools)
That mix lets you fish in large pools while still catching highly motivated niche audiences. If I were posting about AI for coffee shop marketing in NYC, I'd combine #NYCcoffee (big), #CafeMarketing (mid), #AImarketing (mid), #LocalBizGrowth (small), #CoffeeShopOwner (small).
Use long-tail phrases, not single words
Real people search with phrases. Lean into them.
- Example 1: Not just #coffee β try #NYCcoffeeCrawl, #BrooklynCoffeeLunch.
- Example 2: Not just #sidehustle β try #SideHustleBeginner, #WFHsideHustle.
- Example 3: Not just #AI β try #AItoolsForCreators, #AIautomation.
These match more specific intent and convert better. I lean on AI for tag suggestions to predict the exact phrasing my audience uses in search.
The measurement loop: insights and PDCA
Picking hashtags is never one-and-done. You need a feedback loop.
Read Instagram Insights
Once you're on a Pro account, every post has an Insights view showing where the reach came from. The number to watch is impressions from "hashtags" and which specific tags drove them.
- What I do: Across the last 3 months of one of my accounts, #SocialMediaWorkflow (a mid tag) was driving about 20% of reach on a specific content theme. I now include it on every post in that theme. Meanwhile #business β a giant tag β drove almost zero traceable reach, so I dropped it.
Identify and rotate underperformers
If a set produces almost no hashtag-driven reach, swap out the weakest tags and test new combinations. I also run informal A/B tests β same topic, two posts, two tag sets β to compare lift.
Watch for policy risk
None of this matters if you trip Instagram's spam filters. I take this seriously on every account I run.
Off-topic tags = spam signal
Tagging a dog post with #cats to chase reach is exactly the behavior the platform penalizes. It hurts the user experience, dings your account trust, and can push you into shadowban territory β where your posts quietly stop appearing in Explore for non-followers.
Banned tags and shadowban risk
Instagram maintains a rotating list of restricted hashtags tied to policy-violating content. The exact list shifts, but anything tied to sexual content, hate speech, violence, or spam should be avoided outright. Reusing the same identical tag block on every post also looks spammy to the system β I vary the set per post.
Automation and policy
The automation work we do at GramShift makes tag research and analysis dramatically faster. But Meta's API policy and platform terms have to come first. We deliberately don't build anything that crosses those lines β for example, no "automated likes at superhuman speed", because the ban risk isn't worth it for the user.
| What works | What gets you throttled |
|---|---|
| Tags tightly relevant to the post | Unrelated big tags piled on for reach |
| Balanced big / mid / small mix | Only chasing the biggest tags |
| Long-tail phrases | Single generic words only |
| Continuous measurement and iteration | Set-and-forget tag blocks |
| Respect platform policy and banned tags | Spammy or banned tag use |
| 10β15 carefully chosen tags | 30 random tags every time |
GramShift is rolling out hashtag suggestion features so you can build compliant, high-relevance sets faster.
If your Instagram growth has stalled, try a GramShift free trial β AI-assisted content and analytics built to support real growth β and run your account through our "diagnose pick" assessment.
Wrap-up: hashtags reward strategy, not volume
Hashtags are not decoration. They are a strategic input that determines how much of your reach comes from Explore. The win comes from relevance plus a deliberate mix of big, mid, and small tags β not raw count.
- Relevance: Tag what the post is actually about.
- Combination: Layer tag volumes intentionally.
- Measure and iterate: Use Insights to keep what works.
- Stay policy-safe: Avoid banned tags and spammy patterns.
Across every account I've run, this approach beats brute-force tag stuffing every single time. Apply it and your reach numbers will start to compound.




