Instagram Reels Search Scraper โ€“ Keyword Search avatar

Instagram Reels Search Scraper โ€“ Keyword Search

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Instagram Reels Search Scraper โ€“ Keyword Search

Instagram Reels Search Scraper โ€“ Keyword Search

Search public Instagram Reels by keyword with pagination. Export Reel URLs, captions, play counts, thumbnails, video links, author data, and media variants.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

ScrapingMonkey

ScrapingMonkey

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

2 days ago

Last modified

Categories

Share

Search public Instagram Reels by keyword and export structured video results at scale. Instagram Reels Search Scraper accepts ordinary search phrases, paginates the public Reels results, and returns one clean dataset row per unique Reel.

Use it for trend monitoring, creator discovery, content research, campaign planning, and keyword-based video datasets without supplying an Instagram login or cookies.

At a glanceDetails
๐Ÿ“ฅ InputOne or more non-empty keywords plus pages per keyword
๐Ÿ“ค OutputReel URL, caption, play count, thumbnail, video URL, author, and video variants
๐Ÿ“„ PaginationInitial page plus requested continuation pages; up to 12 results per page
๐Ÿ” Login requiredNo
โšก ProcessingUp to 5 keyword requests concurrently with automatic retries
๐Ÿ’พ DeliveryApify dataset exportable as JSON, CSV, Excel, XML, and more

What the Instagram Reels search scraper collects ๐Ÿ”Ž

The Actor searches the public Reels surface for each keyword and normalizes the response into rows suited to spreadsheets, APIs, and data pipelines.

Each successful row includes:

  • Search keyword and search URL
  • Canonical Instagram Reel URL, ID, PK, and shortcode
  • Caption and play count when exposed
  • Thumbnail and direct video URL when available
  • Author identity, profile URL, picture, privacy, and verification status
  • Available video variants with resolution and media type

Results are deduplicated within a run. Search ranking is controlled by Instagram, so the Actor returns the public results currently exposed rather than guaranteeing a fixed catalog.

How to search Instagram Reels by keyword ๐Ÿš€

  1. Add one or more search phrases.
  2. Choose pagesPerKeyword based on the amount of data required.
  3. Start the Actor.
  4. Review success and failed rows in the dataset.
  5. Export the results or consume them through the API.
{
"inputList": [
"cats",
"running shoes",
"space exploration"
],
"pagesPerKeyword": 2
}

Spaces inside a phrase are preserved and URL-encoded correctly. The Actor does not merge running shoes into runningshoes.

Reels search output fields ๐Ÿ“ฆ

FieldTypeMeaning
inputstringOriginal submitted keyword
statusstringsuccess or failed
keywordstring or nullNormalized search phrase
search_urlstring or nullPublic Instagram search URL
urlstring or nullCanonical Reel URL
idstring or nullReel media ID
pkstring or nullReel primary key
codestring or nullInstagram shortcode
typestring or nullResult type, normally reel
captionstring or nullReel caption
play_countinteger or nullPublic play count when available
thumbnail_urlstring or nullPreview image URL
video_urlstring or nullDirect video media URL when exposed
authorobject or nullAuthor profile data
video_versionsarray or nullAvailable video encodings and resolutions

Complete successful dataset item:

{
"input": "space exploration",
"status": "success",
"keyword": "space exploration",
"search_url": "https://www.instagram.com/explore/search/keyword/?q=space%20exploration",
"url": "https://www.instagram.com/reel/EXAMPLE123/",
"id": "1234567890123456789",
"pk": "1234567890123456789",
"code": "EXAMPLE123",
"type": "reel",
"caption": "A new view of space",
"play_count": 125000,
"thumbnail_url": "https://instagram.example/reel-thumbnail.jpg",
"video_url": "https://instagram.example/reel-video.mp4",
"author": {
"id": "528817151",
"pk": "528817151",
"username": "nasa",
"name": "NASA",
"profile_url": "https://www.instagram.com/nasa/",
"profile_picture_url": "https://instagram.example/author-picture.jpg",
"is_verified": true,
"is_private": false
},
"video_versions": [
{
"url": "https://instagram.example/reel-video-1080.mp4",
"width": 1080,
"height": 1920,
"type": 101
}
]
}

Complete failed dataset item:

{
"input": " ",
"status": "failed",
"keyword": null,
"search_url": null,
"url": null,
"id": null,
"pk": null,
"code": null,
"type": null,
"caption": null,
"play_count": null,
"thumbnail_url": null,
"video_url": null,
"author": null,
"video_versions": null
}

Direct Instagram CDN URLs may expire. Download media promptly when long-term retention is required.

Input and pagination settings โš™๏ธ

ParameterTypeRequiredDefaultRules
inputListarray of stringsYesNoneAt least one non-empty keyword
pagesPerKeywordintegerNo1Minimum 1

The initial public search response counts as page 1. Continuation pages request up to 12 additional Reels per page when Instagram supplies a cursor. The actual row count can be lower because results may end, overlap, disappear, or be deduplicated.

Pagination requests are not a promise of exactly 12 rows. They tell the Actor how many result pages to attempt for each keyword.

Reels search use cases ๐ŸŽฏ

Trend and topic monitoring

Track the public Reels appearing for product categories, events, memes, destinations, or industry terms.

Creator discovery

Find accounts producing videos around a keyword, then qualify authors using their public profile fields.

Content ideation

Analyze captions, thumbnails, formats, and visible play counts to identify recurring creative patterns.

Campaign and brand research

Compare search results for branded terms, competitor names, campaign phrases, and adjacent topics.

Dataset creation

Export Reel URLs and metadata to JSON, CSV, or Excel for classification, moderation, analytics, or human review.

Pricing and saved-result behavior ๐Ÿ’ฐ

See the Actor's Pricing tab for the current charging model and rate. No fixed amount is stated here because Store pricing can change.

Under dataset-item pricing:

  • Every unique Reel saved as success is one result.
  • An invalid keyword or a page that cannot produce usable results may create a failed row.
  • Automatic retry attempts do not create extra dataset rows by themselves.
  • More requested pages can produce more billable result rows.

For example, two fully populated pages can return up to about 24 unique Reels for one keyword, but the real total depends on Instagram's response and deduplication.

Instagram Reels search API ๐Ÿ”Œ

Replace $ACTOR_ID with the ID from the Actor API tab and $APIFY_TOKEN with your token.

curl -X POST "https://api.apify.com/v2/acts/$ACTOR_ID/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"inputList":["cats","running shoes"],"pagesPerKeyword":2}'

You can trigger runs from schedules, webhooks, Apify client libraries, Make, Zapier, Google Sheets, cloud storage, or your own backend. For larger searches, start the run asynchronously and read the default dataset after completion.

Reliability, retries, and limits โš ๏ธ

The Actor uses controlled concurrency of up to five requests and automatically retries temporary connection errors, throttling, request timeouts, selected HTTP failures, and blocked redirects. A fresh proxy is selected for new requests.

Bad keyword entries fail without stopping valid entries. When a later pagination page repeatedly fails, the already saved successful rows remain in the dataset and the failure is recorded according to the Actor's page handling.

Search results are personalized and ranked by Instagram's public systems. Availability can vary by time, region, platform changes, safety filtering, and account state. This Actor does not guarantee exhaustive search coverage or stable ordering.

A whole run can fail for infrastructure-level reasons such as startup failure, dataset unavailability, or an unrecoverable error while saving a row.

Frequently asked questions โ“

This Actor is specifically built around Instagram's public Reels search response and outputs Reel rows. It does not claim to provide general web results, accounts, or hashtags as separate result types.

Can a keyword contain spaces?

Yes. Phrases are preserved and encoded for the request.

Does it require an Instagram login?

No Instagram credentials or cookies are requested.

How many results does one page contain?

The source can return up to 12 Reels per page. Fewer may be returned, and duplicates are removed.

Why is video_url null?

Instagram does not expose every optional media field for every result. The row can still be useful through its canonical Reel URL and other metadata.

Can I download the videos?

When Instagram exposes a direct media URL, it is included. Respect rights and platform rules, and remember that CDN links may expire.

For a reproducible issue, provide the Actor support channel with the run ID, approximate run time, page setting, and a safe sample keyword. Never share API tokens or proxy credentials publicly.

Collect and use public data responsibly. Follow applicable privacy, copyright, data-protection, and platform requirements, especially before downloading media or using profile information for outreach.