# Changelog of Instagram Hashtag Scraper — Hashtag Search, Top & Recent Posts (`lergassy/instagram-hashtag-scraper`) Actor

- **URL**: https://apify.com/lergassy/instagram-hashtag-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/lergassy/instagram-hashtag-scraper.md

## Changelog

### 2026-11-15

- **Hashtag posts work again, and the posts are the real top posts.** Instagram stopped serving the
  "sections" layout of hashtag pages on 10 November 2026, so the feed our data source read went dead
  and runs fell back to a partner API whose rows had no view counts and a median of 1 like. The Actor
  now reads the feed Instagram still answers. Measured on #travel the same day: the old feed gave a
  median of 685 likes and nothing older than 28 hours; the new one gives a median of 6,291 likes, a
  maximum of 22.7M, and posts from 0 to 1,691 days old. Tags the old feed had nothing for — #wildlife,
  \#bali, #balivilla — now come back in full, and the tag name is no longer case-sensitive.
- **"Most recent" no longer pretends to be the old Recent tab.** Instagram removed it and the data
  source has no replacement. We sort the posts the one remaining feed returned newest first and say
  exactly that in a free note row.
- **A repeated post is no longer charged twice.** The source returns the same record more than once in
  one answer: ten daily reads of #travel delivered 600 rows that were only 552 posts, and a 10-row read
  of #bali was 6 posts. Repeats are now dropped before the row is delivered, so they cost nothing and
  do not eat your row limit. Same fix applied to profile posts and comments.

### 2026-11-01

- **Instagram Comments Scraper and Instagram Hashtag Scraper now do what their names say on the
  first Start.** The three Actors share one input form, and its "What to collect" field came
  pre-set to posts, so pressing Start on the comments or hashtag page returned 60 posts of
  @natgeo. The field is now empty by default and each Actor uses its own mode; the form carries a
  ready post link and a hashtag to try.
- **#travel and other tags that came back empty now return posts.** Our data source looks a tag up
  case-sensitively: on 1 November #travel answered "Entries not found" on every method while
  \#Travel answered in full. The Actor now retries the first page as Travel and TRAVEL before
  giving up.
- **A hashtag that returns nothing is no longer charged**, and it is named in a free note row
  even when other hashtags in the same run returned posts — before, it vanished silently.
- **Video posts of a profile now carry `playCount` and `videoDurationSeconds`.** They were empty
  for every video: the profile feed we read does not include them. Posts are now read from the
  feed that does, at one extra lookup per profile; if that lookup fails the old feed is used.

### 2026-10-29

- A hashtag with no rows no longer blames Instagram for it. The line said "Instagram returned no
  posts for this hashtag", while measured on 29 October instagram.com/explore/tags/balivilla does
  show posts and a competitor reading that page returned 12 — our data source simply has nothing
  indexed for that tag, and answered #bali in full in the same minute. The notice now says which of
  the two it was and suggests a broader hashtag.
- The same notice states plainly that the charge for a checked target stands even with no rows,
  because a request to the paid source is spent either way, and that rows were not charged. The
  price is unchanged — only the explanation is.

### 0.2.1 — 04.11.2026

- hashtagSection заполняется: top или recent, как выбрано в hashtagSort (было null).
