Instagram hashtag research: pick tags from what is actually posted
Published
Instagram hashtag research means reading the recent posts under each candidate tag and asking four things: how fast the tag moves, who posts to it, what a typical post there earns, and which other tags people use beside it. Those four answers tell you whether a tag is worth putting on your post, worth watching for content, or worth skipping. Lists of "best hashtags" skip all four, because they rank tags by size, and size is the one number that tells you least about whether your post will be seen there. This guide covers the method by hand, then the faster way for one tag and the bulk way for fifty.
What Instagram hashtag research should answer
A hashtag is a feed. When you add it to a post, you are putting your post into that feed beside everyone else's. So the useful questions are about the feed, and every one of them can be answered from the posts in it.
| Question | Why it matters | Where the answer is |
|---|---|---|
| How fast does the tag move? | A tag that takes hundreds of posts an hour buries yours in minutes | The time between the newest and oldest of its recent posts |
| Who posts to it? | Tells you whether the readers are your audience, or other sellers, or bots | The accounts behind the recent posts |
| What does a typical post earn? | Says whether anyone engages with the tag at all | The median likes and comments on recent posts |
| Which tags travel with it? | Your next candidates, chosen by the people already posting | The other hashtags in the same captions |
| Is it a fit for this post? | A busy, engaged tag full of the wrong content still sends the wrong people | Your own read of what is posted |
The first four are measurements. The last one is judgement, and no tool makes it for you. The point of measuring the first four is to spend your judgement on a short list instead of a long one.
Why the size of a tag misleads
The obvious way to rank hashtags is by how many posts they hold. A huge tag sounds like a huge audience. In practice a big tag is often a fast one, and a fast tag is a short-lived home for your post: by the time anyone browses it, your post is far down the feed.
Speed varies more than most people expect. This site keeps measurements of 17 common hashtags, read on 6 September 2026, and the spread is wide:
| Hashtag | Posts per hour | Time the recent sample spans |
|---|---|---|
| #interiordesign | 176 | 25 minutes |
| #dogs | 76 | 57 minutes |
| #coffee | 27 | 2.7 hours |
| #travel | 18 | 4.1 hours |
| #smallbusiness | 3.2 | 22.4 hours |
| #handmade | 0.942 | 3.2 days |
| #realestate | 0.092 | 32.4 days |
A tag you would assume is enormous can be slow, and a niche-sounding tag can be one of the fastest on the list. Neither number tells you which to use. It tells you what you are signing up for. On a tag like #interiordesign a post has minutes near the top of the feed, while on #realestate it can sit near the top for days, with far fewer people browsing.
How to do hashtag research for Instagram, step by step
This is the manual method. It needs only the Instagram app or website and a spreadsheet.
- Collect candidate tags. Start with the words your audience would search, the tags on your best-performing posts, and the tags accounts like yours already use. Aim for fifteen to thirty candidates. Typing a word into Instagram's search also suggests related tags.
- Open each tag and read its recent posts. Scroll the posts shown under the tag and look at their dates. Note how far back you have to go to see about thirty posts. Ten minutes means a fast tag; three days means a slow one.
- Look at who is posting. Open a handful of the accounts. Are they people who might care about your post, businesses selling the same thing as you, or accounts posting the same image under fifty tags? A tag dominated by the last kind is not an audience.
- Note what a typical post earns. Write down the likes and comments on ten recent posts and take the middle value. A few posts with big numbers say little. Where most posts sit near zero, the tag is being posted to and not browsed.
- Collect the tags that travel with it. Copy the other hashtags from those captions. The ones that keep appearing are your next candidates, and they are often smaller and closer to your niche than the tag you started with.
- Score each tag in your sheet. One row per tag, one column per answer above, plus a column for fit. Then pick a mix: a few slower, closely matched tags where your post can stay visible, and fewer broad ones.
- Re-check every few months. Tags change speed with seasons, trends and spam waves. A tag that was quiet in spring can be flooded by autumn.
If Instagram shows a notice instead of recent posts, or the tag has no recent posts at all, leave it off your list. Posting to a tag nobody can browse buys nothing.
The numbers worth writing down
Keep the sheet small. These columns carry almost all of the signal:
| Column | How to get it | What it tells you |
|---|---|---|
| Posts per hour | Posts counted, divided by the hours between newest and oldest | How long your post stays near the top |
| Median likes | Middle value of the likes on recent posts | Whether the tag is browsed or just posted to |
| Median comments | Middle value of the comments | Whether people talk under the tag |
| Share with video | Posts containing a video, out of all counted | Whether the feed favours a format you post |
| Hashtags per caption | Middle value of the tag count per caption | A tag where every post carries 30 tags is often spam-heavy |
| Companion tags | Tags that appear in several of the same captions | Where to look next |
Use the median, never the average. Engagement under a hashtag is lopsided: a handful of posts take most of the likes. One post from a large account can triple the average while the typical post earned what it always did. The median moves only when the typical post changes, which is what you want to know.
The faster way for one tag: a free checker
Doing steps 2, 4 and 5 by hand takes several minutes per tag, mostly scrolling and counting. This site's free hashtag checker does those three for one tag at a time. Step 3 stays yours: the checker never shows an account, so judging who is posting under a tag still takes the app or a run of the actor. Type a hashtag and it reads the recent posts, then reports:
- posts per hour and how long the sample spans;
- the share of posts that are carousels and the share that contain video;
- the lowest, median and highest likes, comments and hashtags per caption;
- the tags that travel with it, with how many of the sampled posts carried each.
There is nothing to install and no sign-up. Tags already on the measurements page are answered from that stored reading. Any other tag is read live, and that needs the session cookie of an Instagram account you control, because Instagram only serves hashtag posts to signed-in requests. The cookie is used for that one read and not stored. Use an account you are willing to lose, since Instagram rate limits and eventually acts on accounts it decides are automated.
The checker counts posts and drops them. It never shows or stores the posts themselves, which is why it suits research and not collection.
The bulk way: pull the posts into a sheet
When the candidate list runs to dozens of tags, or you want to read the actual captions rather than a summary, pull the recent posts into a spreadsheet and do the counting there. This site's Instagram Hashtag Scraper is an Apify actor that does exactly that for one hashtag per run. Each row is one post with:
- the post URL and when it was published;
- the caption, and every hashtag in it as a list;
- the like and comment counts (empty when Instagram did not return them, which is different from zero);
- the account that posted it, and whether it is an image, video or carousel.
From those rows the research columns are a few spreadsheet formulas: count rows and divide by the hours between the first and last takenAt for speed, MEDIAN over the likes, and a count of each value in the hashtags column for the companion tags. Set a result limit (say 200 posts) and a date window so each tag is read over the same stretch, which keeps the tags comparable. The step-by-step scraping guide walks through a first run.
It charges $0.0005 per post delivered to your dataset, so reading 200 recent posts from each of 20 candidate tags is 4,000 posts and costs $2.00. You are not charged for duplicates or for rows past your limit. Like the checker, it reads Instagram with a session cookie from an account you control.
Manual, checker or bulk: which to use
| By hand | Free checker | Scraper into a sheet | |
|---|---|---|---|
| Tags per sitting | A handful | One at a time, quickly | As many as you queue up |
| Speed, engagement, companions | You count them | Counted for you | A few formulas |
| You can read the captions | Yes | No, counts only | Yes, every row |
| Needs an Instagram session | Your normal login | Only for tags not already measured | Yes |
| Cost | Your time | Free | $0.0005 per delivered post |
When the manual way is enough
You do not need a tool for every hashtag decision. Stay with the manual method when:
- you are choosing tags for a single post and have five or six candidates;
- you already know the niche and only want to confirm a tag is still active;
- you are judging fit, which no count can do: reading twenty posts yourself is the research.
Reach for the checker when you are comparing more tags than you can scroll through in one sitting. Reach for a sheet of rows when you want to repeat the research on a schedule or keep a record of it, which is the same method as tracking hashtag performance week by week.
Where hashtag research leads next
The posts you read while researching tags are useful beyond picking tags. The accounts that keep appearing under your best-fit tags are the starting point for finding micro influencers. The posts with the most engagement are the subject of finding trending posts in your niche. And the tags your competitors keep using are half of an Instagram competitor analysis.
The bottom line
Good Instagram hashtag research reads the feed behind each tag instead of its size. Measure how fast it moves, who posts to it, what a typical post earns and what travels with it, then spend your judgement on the short list. Do it by hand for a few tags, use the free checker for one tag at a time, and pull posts into a sheet when the list is long or the research has to be repeated.