Instagram Related Hashtag Stats Scraper avatar

Instagram Related Hashtag Stats Scraper

Pricing

$14.99/month + usage

Go to Apify Store
Instagram Related Hashtag Stats Scraper

Instagram Related Hashtag Stats Scraper

Scrapes related hashtag statistics on Instagram, capturing hashtag names, post counts, growth trends, top posts, engagement metrics, and relevance clusters. Ideal for content planning, niche discovery, SEO optimization, and automated hashtag strategy research.

Pricing

$14.99/month + usage

Rating

0.0

(0)

Developer

Scrapio

Scrapio

Maintained by Community

Actor stats

0

Bookmarked

9

Total users

1

Monthly active users

4 days ago

Last modified

Share

Instagram Hashtag Stats Scraper Plus πŸ“Š

Extract real Instagram hashtag analytics for any hashtag, keyword, or tag URL: post counts, related hashtags with numeric media counts, the hashtag's top and latest posts, and honest engagement-based metrics β€” no fabricated numbers.

This actor is fully self-contained: it ships no credentials, no third-party infrastructure, and no dead fields. You bring your own Instagram login cookie.

What you get

Per hashtag (parent row, type: "hashtag"):

FieldMeaning
tagCanonical lowercase hashtag
hashtagId, urlInstagram tag id + explore URL
postsCountReal total post count (int64, straight from Instagram). null for mega-tags where Instagram itself caps the count at INT32_MAX β€” read formattedMediaCount instead (never a fake 2147483647).
formattedMediaCountInstagram's own display string (e.g. 2.1B)
subtitleInstagram's tag subtitle (e.g. "Popular"), when present
allowFollowingtrue when the tag is usable / not restricted; false when Instagram attaches a restriction warning or content advisory (banned/shadow tag)
warningMessageInstagram's restriction/warning text for the tag, if any
isTrendingWhether Instagram flags the tag as trending
isFollowingWhether your account follows the tag (from the follow-button label; null when not exposed)
coverImageUrlTag cover / profile image
relatedCountNumber of related tags returned
avgLikes, avgComments, avgEngagementMeans across the tag's real top posts
competitionScoreAvg top-post engagement β€” how much traction a post needs to rank top
difficultyTiervery_low…very_high, bucketed from competitionScore
postsPerDayReal recent cadence computed from the timestamps of the latest posts
topPostsCount, latestPostsCountHow many posts were harvested
scrapedAtISO timestamp of the run

Child rows (interleaved after each hashtag, isChild: true):

  • type: "relatedTag" β€” relatedTag, relatedHashtagId, relatedHashtagUrl, numeric mediaCount, formattedMediaCount.
  • type: "topPost" / type: "latestPost" β€” postId, shortcode, url, mediaType, caption, hashtags[], mentions[], likes, comments, views, ownerUsername, ownerId, thumbnailUrl, takenAt (ISO).

Honest metrics policy

Every derived metric comes from real data or is null β€” never a synthesized stand-in:

  • postsPerDay is computed from the actual taken_at timestamps of the latest (recent-tab) posts, not from dividing the lifetime count by a fixed number of days. It reflects the cadence of the recent-post window Instagram returns, so on a small window it can be noisy; it is null when fewer than two timestamped recent posts are available.
  • competitionScore / difficultyTier come from the real like/comment engagement of the top posts, not from a static post-count bucket.
  • When a hashtag has no accessible posts, all engagement metrics are null.

Required input: your Instagram sessionid

Instagram only serves hashtag data to logged-in traffic, so you must supply your own cookie in the ig_sessionid field:

  1. Log in to instagram.com in a browser (a throwaway account is recommended).
  2. Open DevTools (F12) β†’ Application β†’ Cookies β†’ https://www.instagram.com.
  3. Copy the value of the sessionid cookie into ig_sessionid.

Treat the cookie like a password. If it is missing or expired the run fails cleanly with instructions and does not charge you β€” the actor never authenticates as anyone else.

Input options

  • urls_keywords β€” hashtags / #tags / tag URLs (required).
  • ig_sessionid β€” your Instagram cookie (required, secret).
  • includeTopPosts, includeLatestPosts β€” toggle post child rows (default on).
  • keywordDiscovery β€” expand each input into all matching hashtags via tag search.
  • maxItems β€” cap top-level hashtags (children are additional).
  • maxRelatedPerHashtag, maxPostsPerHashtag β€” cap child rows.
  • Filters: minPostsCount / maxPostsCount (related tags), keywords / excludeKeywords (related-tag names), difficultyTier (hashtags), onlyFollowable (drop banned tags).
  • proxy_configuration β€” honored; Apify residential by default with fresh-IP retry on soft blocks.

Billing (pay per event)

Charged event: row_result, charged once per real hashtag row and once per real child row (related tag / top post / latest post). The previous version emitted 5 padding rows per hashtag (main + duplicated frequent/average/rare buckets) and charged for all of them; those duplicative buckets are gone. Failed or empty diagnostic rows are never charged.

Notes & limitations

  • Data availability depends entirely on a valid, non-rate-limited sessionid fetched through a working (ideally residential) IP.
  • Top posts come from the tag's web_info payload; latest (recent) posts come from the tag sections endpoint. Instagram may return fewer posts for smaller or restricted tags. Missing values are null.
  • The actor only reads publicly visible hashtag/post data. Comply with applicable laws and Instagram's terms.