Instagram Reels Search Scraper avatar

Instagram Reels Search Scraper

Pricing

from $1.50 / 1,000 reel founds

Go to Apify Store
Instagram Reels Search Scraper

Instagram Reels Search Scraper

Search public Instagram Reels by keyword or hashtag. Returns reel URL, caption, plays, likes, author, music, and engagement per Reel. Provider-backed (ScrapeCreators primary, SociaVault fallback), cookieless, no login. MCP-ready.

Pricing

from $1.50 / 1,000 reel founds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

2 days ago

Last modified

Share

Search public Instagram Reels by keyword, hashtag, or handle intent and export structured data: reel URL, caption, plays, likes, comments, engagement rate, author metadata, music info, and run diagnostics — with no Instagram login required.

Provider-backed: ScrapeCreators is the primary data source; SociaVault is a best-effort fallback route. The actor resolves keywords to public profile handles, then fetches public Reels for those handles. Provider order is configurable via providerOrder input and all fallbacks are recorded in RUN_SUMMARY.

What you get

FieldNotes
keywordThe search query that produced this Reel
reel_urlCanonical /reel/ URL
captionFull caption text
caption_hashtagsHashtags parsed from caption
like_count, comment_countPublic engagement counts
play_countVideo plays (when provider exposes)
engagement_rate(likes + comments) / followers × 100
posted_atISO 8601 timestamp
author_username, author_follower_count, author_is_verifiedAuthor metadata
music_title, music_artistAudio attribution
source_providerscrapecreators or sociavault

Who uses this

  • Content marketers benchmarking competitor Reels in a niche
  • Influencer agencies finding high-engagement creators by topic
  • Brand managers monitoring brand mentions in Reel captions
  • AI agents that need structured Reel data from a keyword (MCP-ready)

Quick start

{
"keywords": ["nasa", "#space"],
"maxResultsPerKeyword": 20,
"outputMode": "compact"
}

Input reference

ParameterTypeDefaultDescription
keywordsstring[]["nasa"]Keywords, hashtags, or direct handles (e.g. "nasa", "#fitness", "@nasa")
maxResultsPerKeywordinteger20Max Reels to save per keyword (1–500)
maxProviderPagesinteger5Max provider pages per keyword (1–60)
minimumLikesinteger0Filter: skip Reels with fewer likes
minPlayCountinteger0Filter: skip Reels with fewer plays
onlyReelsNewerThanISO dateFilter: skip Reels posted before this date
outputModefull/compactfullField set returned per row
providerOrderenumscrapecreators-firstProvider priority and fallback behavior
startCursorstringResume pagination from a previous run cursor

Output example (compact mode)

{
"keyword": "nasa",
"reel_url": "https://www.instagram.com/reel/ABC123xyz/",
"caption": "Golden hour in Santorini ✨ #travel #reels",
"caption_hashtags": ["travel", "reels"],
"like_count": 3840,
"comment_count": 47,
"play_count": 91200,
"is_reel": true,
"posted_at": "2024-06-15T10:22:00.000Z",
"author_username": "wanderlust_creator",
"author_follower_count": 128000,
"author_is_verified": false,
"engagement_count": 3887,
"engagement_rate": 3.04,
"source_provider": "scrapecreators",
"scraped_at": "2026-08-18T07:00:00.000Z"
}

Provider fallback

The providerOrder input controls which provider is tried first:

  • scrapecreators-first (default): tries ScrapeCreators, falls back to SociaVault on failure
  • sociavault-first: reverses the order
  • scrapecreators-only / sociavault-only: disables the other provider

If the primary provider fails, fallbacksUsed in RUN_SUMMARY increments and a warning records which keyword triggered the fallback. The row's source_provider field always tells you which provider served it.

Pricing

$0.0015 per Reel saved to the dataset + platform usage costs.

  • 1,000 Reels = ~$1.50 in data events
  • 10,000 Reels = ~$15.00 in data events
  • Platform compute and proxy usage are additional (see Apify Console → Pricing tab)

Run outcomes

OutcomeMeaning
COMPLETEAll Reels saved successfully
PARTIALSome Reels saved; provider errors or filters skipped others
VALID_EMPTYNo Reels matched the request (try broader keywords or remove filters)
INVALID_INPUTMissing or malformed input
CONFIG_ERRORBoth provider API keys missing or invalid
UPSTREAM_FAILEDProvider failed on every keyword before any Reels were saved

The OUTPUT key-value entry and RUN_SUMMARY are always written, even on failure.

API / MCP usage

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('khadinakbar/instagram-reels-search-scraper').call({
keywords: ['coffee reels', '#barista'],
maxResultsPerKeyword: 50,
outputMode: 'compact',
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

Builder's note

Instagram's hashtag feed is served from Google-indexed public data, not a complete native feed. Results are best-effort: recent Reels may be sparse for niche topics, and very viral content may be over-represented. If you need a deeper or more complete feed, try the instagram-hashtag-scraper sibling actor.

This actor scrapes only publicly visible Instagram Reels data. It does not access private accounts, bypass login walls, or use Instagram credentials. Use responsibly and in compliance with Instagram's Terms of Service and applicable data protection laws.